12 Jul
2023
12 Jul
'23
4:50 a.m.
Shader Model 6 introduces a 16-bit float (half) type, and 16-bit and 64-bit integer types. Storing extra info in the type enum simplifies checking if a type is any integer, floating point or numeric type, and the declaration of SPIR-V types. The benefits depend on using enum vkd3d_data_type in the backend instead of vkd3d_shader_component_type. Patch 2 is difficult to split because types typically flow through to vkd3d_spirv_get_type_id(), so partial changes would require new calls to conversion functions which would be deleted again later. -- v5: vkd3d-shader/spirv: Use enum vkd3d_data_type instead of vkd3d_shader_component_type. https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/263