2017-03-05 95 views
-1

在Vulkan中,一些函数需要传递一个包含各种参数的结构体。其中一个字段的名称为stype,需要将其设置为它的结构类型。stype字段的用途是什么?

stype的用法的例子:

VkInstanceCreateInfo info; 
info.stype = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO; 
... 
VkInstance instance; 
vkCreateInstance(&info, nullptr, &instance); 

功能vkCreateInstance需要const VkInstanceCreateInfo*作为参数,有啥stype场的地步?他们通过增加该领域解决了什么问题?

+0

很可能使更高版本的API向字段添加字段。您在该字段中输入的值告诉vulkan您正在使用哪个版本的结构,以便知道哪些字段确实存在。 – Eelke

回答

3

因此,未来的版本可以通过更改类型来更新结构而不需要新的入口点。

但是,它目前用于通过pNext链接列表找到的扩展结构。用这样的统一布局来制作所有结构并不需要花费任何东西。实现可以简单地忽略第一个字段,并假定它是正确的。