You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is the module I am trying to compile, and the error received is:
error: [VUID-Position-Position-04321] According to the Vulkan spec BuiltIn Position variable needs to be a 4-component 32-bit float vector. ID <3> (OpVariable) is not a float vector.
|
= note: module `/home/marios/proj/hestia_vk/target/spirv-builder/spirv-unknown-vulkan1.2/release/deps/shaders.spvs/mesh-main_vs.spv`
warning: an unknown error occurred
|
= note: spirv-opt failed, leaving as unoptimized
= note: module `/home/marios/proj/hestia_vk/target/spirv-builder/spirv-unknown-vulkan1.2/release/deps/shaders.spvs/mesh-main_vs.spv`
error: error:0:0 - [VUID-Position-Position-04321] According to the Vulkan spec BuiltIn Position variable needs to be a 4-component 32-bit float vector. ID <3> (OpVariable) is not a float vector.
%50 = OpInBoundsAccessChain %_ptr_Output__arr_float_uint_4 %out_pos %uint_0 %uint_0 %uint_0
|
= note: spirv-val failed
If I comment out the main_vs function all is well.
It seems like the Vector4 type isnt being interpreted as a [f32;4]
I am wondering if this is because of the underlying type: pub struct ArrayStorage<T, const R: usize, const C: usize>(pub [[T; R]; C]);
It evaluates with R=4, C=1, making the inner type [[f32; 4],1]
The text was updated successfully, but these errors were encountered:
Could it because it's a wrapper ? Have you tried defining a struct with just a [f32; 4] inside and see if that works ?
Might just also be that it's indeed a [[f32; 4], 1] and it doesn't cast to [f32; 4] directly
I tried using nalgebra (no-std) for types in shaders, but the simplest shaders fails to compile.
Is the module I am trying to compile, and the error received is:
If I comment out the
main_vs
function all is well.It seems like the Vector4 type isnt being interpreted as a [f32;4]
I am wondering if this is because of the underlying type:
pub struct ArrayStorage<T, const R: usize, const C: usize>(pub [[T; R]; C]);
It evaluates with
R=4
,C=1
, making the inner type[[f32; 4],1]
The text was updated successfully, but these errors were encountered: