当前位置: 首页 > news >正文

enith.NET v0.0.6 发布 [特殊字符] — API 大幅精简,为 Metal 后端铺路

✨ 本次更新亮点

🔄 ResourceSet → ResourceTable

资源集合从ResourceSet全面更名为ResourceTable,绑定方式也做了简化:

之前:commandBuffer.SetResourceSet(resourceSet, index);
现在:commandBuffer.SetResourceTable(resourceTable);

不再需要手动传入索引,使用更直观。

📦 单一 ResourceLayout

所有管线描述(Graphics / Compute / MeshShading)中的ResourceLayout[]统一改为单个ResourceLayout?。这个改动大幅降低了资源绑定的复杂度,同时也更贴合 Metal 的设计模型,为后续 Metal 后端上线扫清了障碍。

🚀 移除 RayTracingPipeline,拥抱 RayQuery

这是本次最大的变更。我们移除了独立的RayTracingPipeline,包括HitGroupDispatchRays()等全部相关 API。

光线追踪现在统一通过RayQuery实现,可以在任意着色器阶段中使用,不再需要专用的光追管线。这个方向更灵活,跨后端兼容性也更好。

✂️ 清理历史着色器阶段

移除了HullDomainGeometry等传统着色器阶段,以及所有光追专用阶段(RayGenerationMissClosestHit等)。PrimitiveTopology也精简掉了邻接拓扑和PatchList

这些功能在现代图形 API 中已经被 Mesh Shading 和 RayQuery 取代,清理后 API 表面更小更干净。

📐 MeshShading 线程组大小

MeshShadingPipelineDesc新增了 Object 和 Mesh 阶段的线程组大小字段,给予开发者更精细的调度控制。

🍎 Apple 平台统一命名

文档和 Issue 模板中原来分开的 "macOS" 和 "iOS" 统一为Apple标签,更清晰地表达对整个苹果生态的支持。

⚠️ 破坏性变更一览

如果你从 v0.0.5 升级,请注意以下改动:

  • ResourceSet/ResourceSetDescResourceTable/ResourceTableDesc
  • ResourceLayout[]ResourceLayout?
  • SetResourceSet(resourceSet, index)SetResourceTable(resourceTable)
  • RayTracingPipelineHitGroupDispatchRays()已移除,请改用RayQuery
  • HullDomainGeometry着色器阶段已移除
  • PrimitiveTopology邻接拓扑和PatchList已移除

🗺️ 接下来的计划

  • Metal 后端— 将在近期版本中正式上线,初步计划基于 SharpMetal 或 .NETmaciosTFM 搭建,具体技术路线还在评估中
  • SkiaSharp 集成
http://www.jsqmd.com/news/583066/

相关文章:

  • 如何利用SQL子查询进行非结构化数据处理_文本匹配
  • OpenClaw任务调度优化:千问3.5-35B-A3B-FP8资源利用率提升
  • 省时省力!PPT批量转PDF方法请查收
  • 3.30作业
  • Windows + Linux 双系统 完整版全流程教程(新手零翻车)
  • C++的std--bit位操作函数族与硬件指令在算法优化中的映射
  • AA-PEG-Cholesterol,保留了胆固醇对脂质双层的锚定能力
  • 计算机毕业设计:Python汽车数据智能分析中枢 Flask框架 可视化 机器学习 AI 大模型 大数据(建议收藏)✅
  • 2032年全球32mm和53mm热转印(TTO)设备市场达4.7亿美元:驱动与挑战并存
  • 紧急预警!Vim惊现远程代码执行漏洞CVE-2026-34714,开发者必看防护指南
  • Elsevier Tracker:学术审稿状态自动化追踪解决方案
  • 从 Agent 到 Skill:揭秘 AI 产品经理进阶的真正关键!
  • 【洛谷】P1449 后缀表达式
  • C++ 模板元编程工程应用
  • 如何彻底解决Mac滚动方向混乱:Scroll Reverser完整配置指南
  • MPC轨迹跟踪:给定圆形道路的CarsimSimulink联合仿真运动学研究
  • const和#define的区别
  • OpenClaw 从翻车到迎来上百项更新:MiniMax、腾讯、阿里、有道 8 位专家拆解OpenClaw本土化实战解法
  • 基于stm32单片机的智能导盲系统的设计与实现
  • AI医生实战入门到精通,吃透真实EHR看这篇就够了!
  • 从安装到界面实操:ABB RobotStudio 入门核心教程
  • Go语言内存模型与happens-before原则在并发程序中的实际影响
  • 揭秘:20万内数位和能被5整除的数(十六届蓝桥杯真题)
  • 如何用xianyu_spider实现高效电商数据采集?从入门到精通的完整指南
  • C++ 模板类型推断原理解析
  • 2K3000常见问题合集
  • sguard_limit:优化腾讯游戏反作弊系统资源占用的技术方案
  • 一次运算仅6.34阿焦,比忆阻器低百万倍!Nature子刊单分子神经形态器件深度解读
  • 09_KnowFlow企业安全层:RBAC权限控制、数据隔离与白标交付
  • 嵌入式软件开发中的柔性数组机制