游戏引擎开发实践(资源描述符管理)

这里涉及的整套结构已经废弃,转为研究更轻薄的RHI层,放弃过度封装!

资源描述符管理日志

目标:在创建Pass时,设置好Input的绑定资源,渲染时无需再设置

  1. 每个shader每个Set一个资源描述符,读取Shader时自动创建(问题1:一个不一定够)
  2. Resize问题 (Resize后图片被销毁)(解决1:在渲染时判断是否被销毁,重新获取)
  3. 一个Pass需要多个描述符(绑定图片的不同layer/mip层的VkImageView)(解决1:创建Pass时,提交额外需要的资源描述符数量)(Hazel的解决方案:额外使用的资源描述符集被定义为材质,每次DrawCall切换材质)(Dark的解决方案: pushDescriptorSetKHR渲染时实时创建并推送,这样很方便但是不好整合)

弃坑,整个架构都放弃了

Licensed under CC BY-NC-SA 4.0
📚 文章数: 72 ✍️ 总字数: 245.55K