RaZ
1.0.0
Linux | 视窗 | macos | WebAssembly | |
|---|---|---|---|---|
| 汇编 | ![]() | ![]() | ![]() | ![]() |
| 单位测试 | ![]() | 还没有CI | 还没有CI | N/A。 |
鳕鱼 | 负责人 |
|---|---|
正如您可能注意到的那样, Raz来自我的用户名Raz Akhel。这也是一个双关语,因为在法语中是“RemiseàZéro”的首字母缩写,这基本上是“重置”。我没有任何特别的意图。除了希望使用Raz可能会因为它的惊人而重置您的想法?那好吧。
EC驱动的现代C ++(17)撰写,主要是出于学习目的而开发的。它旨在非常直观,易于使用和修补,同时尝试保持尽可能优化和模块化。
该引擎可在Windows,Linux&MacOS下使用;它还可以通过WebAssembly(使用Emscripten)在Web浏览器中运行。
该引擎可以与LUA一起使用,Lua是一种非常简单的学习和使用的脚本语言。有关更多信息,请参阅专用Wiki页面。
如果您想开始使用Raz,请前往Wiki。对于文档,请查看这里!
Razor是编辑器,也可以使用图形界面来操纵引擎。
也可以使用专用于Raz&Razor的Discord服务器!随意来跟进开发,提出任何问题,或者只是打个招呼
| Crytek Sponza | Hylian Shield(PBR) |
|---|---|
这里提供更多示例。
| 姓名 | 维护者/创建者 | 描述 |
|---|---|---|
| 大气 | Razakhel | 大气模拟 |
| Midgard | Razakhel | 地形程序生成 |
| Yggdrasil | Razakhel | 树木和叶子的过程 |
如果您还自己处理一些工作,请随时与您联系,以便我可以将它们添加到列表中。
| 模块 | 特征 |
|---|---|
| 动画片 | - 骨骼数据结构 - 动画支持(正在进行中) |
| 声音的 | - 使用开放式柔软 - 播放/暂停/停止/重复声音 - 位置音频来源和听众 - 声音效果(混响,合唱,失真,回声,...) - 音频输入(麦克风)单声道/立体声支持 |
| 数据 | - 边界量层次结构(BVH)加速结构 - 定向图结构 - 网格签名的距离字段 - 动态比特 - 文件格式: - 网格: -GLTF/GLB导入(使用FastGLTF) -OBJ进出口 -FBX导入(使用FBX SDK) - 进口 - 图像: -PNG,JPEG,BMP,TGA,HDR,GIF,PPM/PGM,PSD,PIC导入(使用STB_IMAGE) -PNG,JPEG,BMP,TGA,HDR Export(使用STB_IMAGE_WRITE) -TGA导入 - 音频:WAV导入/导出 - 动画:BVH导入(正在进行中) |
| 数学 | - 向量,矩阵和四元素 - 角度(学位/弧度) - 转换(翻译,旋转,比例) - 噪音(Perlin,Worley) |
| 物理 | - 形状(线,平面,球体,三角形,四边形,AABB,obb) - 形状/形状碰撞检查(正在进行中) - 射线/形状交叉检查(正在进行中) - 刚性模拟(正在进行中) |
| 渲染 | - OpenGL(4.6-3.3) -VULKAN (正在进行中) -PBR(厨师 - 托兰斯)和旧版(Blinn-Phong)材料模型 - 延期渲染,使用自定义渲染图 - 帖子效果:开花,音调映射,SSR,SSAO,... (正在进行中) -Tessellation&Compute着色器支持 - 摄像机(透视/拼字法) - 光源(点和定向) - 窗口(窗口,带有自定义回调的键盘/鼠标输入),使用GLFW - 覆盖,使用imgui -cubemap - 正常映射 |
| 脚本 | -Lua脚本,使用sol2 |
| xr | - 虚拟现实(VR)支持(使用OpenXR SDK) |
| 杂项 | - 自定义ECS(实体组件系统)实现 - 统一的平台依赖路径字符串 - 记录实用程序 - 多线程实用程序,线程池实现和并行化功能 - 插件实用程序,加载动态库 - 编译器,枚举,字符串,文件,浮点和类型实用程序 - Tracy集成 |