Cassandra Beckley
Cassandra Beckley
While investigating #4444, I found that the following HLSL causes a compiler crash: ```HLSL RWTexture3D g_rwTexture3d; [numthreads(256, 1, 1)] void main() { RWTexture3D voxels = g_rwTexture3d; InterlockedAdd(voxels[uint3(1,2,3)], 1, 0); }...
The [blog post announcing logical operator short circuiting](https://devblogs.microsoft.com/directx/announcing-hlsl-2021/#logical-operator-short-circuiting) seems to suggest that the new `select` intrinsic should behave the same as the ternary operator used to prior to HLSL 2021....
I'm not confident this generates the correct code in all cases, so I'd appreciate it if there are any suggestions. Fixes #3281
Implements hlsl-specs proposal 0011, adding `vk::SpirvType` and `vk::SpirvOpaqueType` templates which allow users to define and use SPIR-V level types.
In order to load `.glb` format files, we will need to be able to create textures from a buffer, rather than a file.
**Description** For the (currently unmerged) `SpirvType` PR, `Texture2D` (and presumably other built-in types) cannot be used as an argument to an alias template for `SpirvType` **Steps to Reproduce** Compile ```hlsl...