o3de / o3de-azslc

Amazon Shader Language (AZSL) Compiler
Other
23 stars 14 forks source link

Fixing order of multiple unbounded arrays when unique indices are used. #76

Closed invertednormal closed 1 year ago

invertednormal commented 1 year ago

Previously it was assumed that only one unbounded array would be used, but this is no longer true. That caused the order of the unbounded arrays to be shuffled (the first unbounded array would be moved to the end) and other unbounded arrays might not appear at the end of the binding table. This would then cause validation failures in Vulkan.

This fixes it so that all unbounded arrays appear together at the end, in the original order they were originally defined.

Ran all AZSLC tests, tested in AtomSampleviewer's bindless sample, and tested with terrain using bindless textures.

invertednormal commented 1 year ago

Fixes #13813