我知道这VK_DEFINE_NON_DISPATCHABLE_HANDLE是一个struct object##_T *object或uint64_t object取决于架构。
我不明白的是为什么使用它以及它有什么好处和/或效果。
例如,如果我想pCode从我那里得到 ,VkShaderModule为什么我不能去myShaderModule.pCode?
在许多领域,Vulkan API 实现了不透明句柄。从本质上讲,这意味着实现者几乎可以做任何他们喜欢的事情,并且在对象的内存布局甚至句柄是一个真正的指针方面不受任何合同的约束。
如果你想pCode从你的VkShaderModule我建议你在创建它时自己存储它,而不是依靠实现来为你存储它。
Vulkan 的目的是消除图形 API 的负担并消除膨胀。存储用户提供的数据并提供 API 来获取所述用户数据是膨胀的。如果你想保留这些东西,请制作一张VkShaderModules你想保留的参数的映射VkShaderModuleCreateInfo。
| 归档时间: |
|
| 查看次数: |
774 次 |
| 最近记录: |