SPIRV-Cross/reference/shaders-msl-no-opt/packing/struct-packing-recursive.comp
2019-09-24 18:13:04 -04:00

34 lines
390 B
Plaintext

#include <metal_stdlib>
#include <simd/simd.h>
using namespace metal;
struct Foo
{
packed_float4 a;
};
struct Bar
{
Foo a;
};
struct Baz
{
Bar a;
};
struct SSBOScalar
{
float v;
Baz baz;
};
constant uint3 gl_WorkGroupSize [[maybe_unused]] = uint3(1u);
kernel void main0(device SSBOScalar& buffer_scalar [[buffer(0)]])
{
buffer_scalar.baz.a.a.a[3u] = 10.0;
}