### Plumage mini render 基于vulkan API的迷你渲染器 #### 当前特性 1. 支持gltf格式的模型加载 2. 支持gltf动画 3. 支持模型的PBR材质渲染 4. 使用基于IBL的环境光照 5. 支持渲染结果输出为图片序列通过ffmpeg转为视频(main分支上该功能暂时屏蔽) #### 展示 展示使用录制的GIF并转换为animated webp,存在**画质损失**,仅供参考 详细效果建议在[版本发布](https://gitea.inksoul.top/inksoul/plumageRender/releases)中下载源代码.zip(包含模型和shader) 基本效果: ![](https://lychee.inksoul.top/uploads/original/89/da/d86494fba46e10636a4fd66fe004.webp) --- 动画: ![](https://lychee.inksoul.top/uploads/original/39/56/ec512b70f1da4cf0771bcc38a6b9.webp) #### 下一步计划 - [ ] 引入spdlog日志库,细化日志(正在做) - [ ] 重置CMakeLists.txt,添加Xmake 的lua脚本 - [ ] 二次封装vulkan API,提供统一的渲染接口 - [ ] 更换imgui的分支,允许dock UI - [ ] 添加启动UI,避免对默认模型的依赖 - [ ] 添加obj格式支持 - [ ] 添加PMX格式支持 - [ ] 引入USD格式支持 #### 重构 暂定层级: ![](doc/层级.png) #### 使用开源库 1. gli 2. glm 3. imgui 4. tinygltf 5. spdlog 6. stb