甲烷套件
易于使用的现代3D图形渲染抽象API和跨平台应用程序框架:
- 建立在现代本机3D图形API的顶部:Windows上的DirectX 12,Linux上的Vulkan,MacOS上的金属,iOS和TVOS上的金属。
- 用面向对象的中级图形API简化了现代图形编程,灵感来自苹果金属的简单性。 HLSL 6中的常见着色器代码均在所有平台上使用。
- 提供跨平台应用程序框架,其中包括CMAKE构建工具链,独立于平台的应用程序基础类别和Windows,Linux和MacOS的本机GUI层。
下载版本构建使用预先构建的样本,教程和测试,以尝试使用它们。检查最新的构建状态,测试,代码覆盖和分析结果,或从GitHub Action和Sonar Cloud中获取构建工件。请参阅“手动构建说明”的构建说明主题,并开始学习使用Hello Triangle和其他教程的文档学习甲烷图形RHI API。
| 平台 | 图形API | 主构建 | 开发构建 |
|---|
渲染硬件接口(RHI)甲烷图形RHI模块实现了一组面向公共对象的接口,这些接口使现代图形编程以平台和API独立的方式变得容易便捷。 教程使用Hello Triangle教程文档开始学习甲烷图形API,然后继续与他人一起。 名称 /链接 | 截屏 | 描述 |
|---|
| 1。你好三角 |  | 彩色三角形渲染在100行代码中。 | | 2。你好立方体 |  | 带有顶点和索引缓冲区的200行代码中的彩色立方体渲染。 | | 3。纹理立方体 |  | 纹理立方体引入带有phong阴影的缓冲液,纹理和采样器使用情况。 | | 4。影子立方体 |  | Shadow Cube引入了带有渲染通行证的多通渲染。 | | 5。排版 |  | 排版展示了使用甲烷UI的动态字体图集更新的动画文本渲染。 | | 6。立方图阵列 |  | 立方体图阵列纹理以及天箱渲染。 | | 7。平行渲染 |  | 将纹理立方体实例的平行渲染到单个渲染通道。 | | 8。控制台计算 |  | 康威的生活游戏在计算着着色器中实现,并在纯控制台应用程序中运行。 |
样品甲烷样品展示了与上述教程相比,具有更复杂的实现的先进技术和使用情况。样品是以单独的存储库形式分发的。 名称 /链接 | 截屏 | 描述 |
|---|
| 小行星 |  | 基准分析了并行渲染命令,该命令在单个渲染通道中编码,用于在多个线程中处理的大量异质小行星对象。 |
特征- 跨平台应用程序和输入类:Windows,MacOS和Linux受支持
- CMAKE模块用于方便应用程序构建配置,添加着色器和嵌入式资源
- HLSL-6着色器为所有图形API服务转换为本地着色器语言,并在spirv-cross&directxcompiler中编译为构建时间
- hlsl ++数学库,具有C ++中的HLSL样语法,以及针对不同平台的矢量指导优化
- 现代图形API摘要:基于DirectX 12,Vulkan和Metal API
- 用紧凑的初始化语法渲染状态和程序配置
- 编程绑定对象实施了着色器参数对资源的有效绑定
- 自动资源状态跟踪用于自动资源过渡障碍设置
- 在GPU上使用,在命令列表状态中使用共享指针时,资源自动保留在销毁中
- 命令列表执行状态跟踪可选的GPU时间戳查询
- 并行渲染命令列表,用于单个渲染通行证中编码的多线程渲染命令
- 使用栅栏同步的GPU上的多个命令队列执行
- 通过上传命令列表和共享资源对私有GPU资源异步更新
- 命名图形对象的注册表可以重复使用渲染态和渲染器对象之间的图形资源
- 图形原语和扩展:
- 图形应用程序基类带有每个框架资源管理和框架缓冲液调整大小的框架启用有效的三重缓冲
- 摄像机原始互动弧球摄像头
- Quad,Box,Sphere,Icosahedron和Uber-Mesh的过程网格生成
- 屏幕集合和天盒渲染扩展类
- 纹理加载器(当前使用STB实施,计划用OpenImageio替换)
- 用户界面:
- UI应用程序基类带有集成HUD,徽标徽章和帮助/参数文本面板
- 字体加载,动态图集更新,文本渲染和布局的排版库
- 小部件库(正在开发)
- 平台基础架构:
- 带有窗口管理和输入处理的基本应用程序,用于Windows,MacOS和Linux
- 通过回调接口连接发射器和接收器的事件机制
- 动画子系统
- 嵌入式资源提供商
- 集成调试和分析功能:
- 图书馆仪器用于绩效分析使用痕迹分析工具
- 所有GPU对象的调试名称和图形API的调试区域都可以使用框架分析工具
- 与自动化的多平台构建,单位测试和声纳云静态代码分析连续集成
有关详细的功能说明和开发计划,请参阅模块文档。 支持的开发工具开发环境
- Microsoft Visual Studio 2019
- 解决方案和项目构建(使用build/windows/build.bat生成)
- CMAKE本机构建支持(与Cmakepresets.json预先配置)
- Apple Xcode
- XCode Workspace和Projects(使用build/unix/build.sh生成)
- Microsoft vs Code和GitPod(与Cmakepresets.json和.vscode/settings.json预先配置)
- 喷气大脑固定(与.idea预先配置)
- QT创建者具有CMAKE本机支持
甲烷套件正在支持喷气大脑开发工具的支持。开源项目开发许可证可免费提供给甲烷套件项目的所有主要贡献者。 静态代码分析甲烷套件带有连续的C ++静态代码和代码覆盖分析,作为自动化CI“扫描”构建的一部分,该构建具有最新结果,分别在Sonar Cloud上发布了所有受支持的平台。 | 主扫描结果 | 视窗 | macos | Linux |
|---|
| 扫描构建状态 | | | | | 优质门 | | | | | 可维护性 | | | | | 可靠性 | | | | | 安全 | | | | | 技术债务 | | | | | 错误 | | | | | 漏洞 | | | | | 代码气味 | | | | | 重复的线条 | | | | | 测试覆盖范围 | | | | | 代码行 | | | |
跟踪分析工具甲烷套件包含所有库的集成仪器,用于使用以下工具进行跟踪收集的性能分析。有关跟踪收集说明和相关构建选项的更多详细信息,请参阅甲烷仪器文档。 | Tracy框架剖面 | 英特尔图形跟踪分析仪 |
|---|
 |  |
框架分析和调试工具- 英特尔图形框架分析仪
- 苹果Xcode金属调试器
- Renderdoc
- Microsoft Pix
- Nvidia Nsight图形
外部依赖性执照甲烷套件是根据Apache 2.0许可证分配的:可以免费使用并打开以供捐款! 版权所有2019-2022©Evgeny Gorodetskiy
展开
附加信息
-
版本
v0.7.3
-
类型
其他源码
-
更新时间
2025-05-09
-
大小
15.78MB
-
来自于
Github
|