shader/image: Implement SULD and remove irrelevant code

* Implement SULD as float.
* Remove conditional declaration of GL_ARB_shader_viewport_layer_array.
This commit is contained in:
ReinUsesLisp
2019-09-18 01:07:01 -03:00
parent 4de0f1e1c8
commit 675f23aedc
10 changed files with 110 additions and 47 deletions

View File

@ -149,7 +149,8 @@ enum class OperationCode {
TextureQueryLod, /// (MetaTexture, float[N] coords) -> float4
TexelFetch, /// (MetaTexture, int[N], int) -> float4
ImageStore, /// (MetaImage, int[N] values) -> void
ImageLoad, /// (MetaImage, int[N] coords) -> void
ImageStore, /// (MetaImage, int[N] coords) -> void
AtomicImageAdd, /// (MetaImage, int[N] coords) -> void
AtomicImageMin, /// (MetaImage, int[N] coords) -> void
AtomicImageMax, /// (MetaImage, int[N] coords) -> void
@ -402,6 +403,7 @@ struct MetaTexture {
struct MetaImage {
const Image& image;
std::vector<Node> values;
u32 element{};
};
/// Parameters that modify an operation but are not part of any particular operand