Fix include order in compute graph kernel building.
Need to have platform.ush before any custom struct declarations, since they use StructuredBuffer syntax which is #define'd from the different native syntax on some platforms.
#preflight 635c1d310053ddfa533bc37b
[CL 22850495 by jeremy moore in ue5-main branch]
ComputeFramework: Disable on Vulkan platforms using DataDrivenPlatfomInfo
Do this until we fix user defined structures that don't obey Vulkan packing rules.
Avoids crashes on some drivers.
#preflight 6358533ea2609c2fae8b4d10
[CL 22798993 by jeremy moore in ue5-main branch]
This makes the code slightly less "magic" and easier to read or write.
It's also the same pattern that Niagara uses, so might make it easier for people working in the two systems.
#rnx
#preflight 6328e1e7331ace46b5c3c7f9
[CL 22088589 by jeremy moore in ue5-main branch]
Optimus: Handle unaligned buffer types by aliasing with a buffer of a matching scalar type.
This is to deal with cases where some shader compilers needs structured buffer types to align on 16 bytes.
Implemented packing logic for vector3 types. User defined structures may need their own packing function.
[FYI] halfdan.ingvarsson
#preflight 631a6713f448dc6e58c5454e
[CL 21910620 by jeremy moore in ue5-main branch]