diff options
author | Subv <subv2112@gmail.com> | 2018-06-06 18:28:09 -0500 |
---|---|---|
committer | Subv <subv2112@gmail.com> | 2018-06-06 18:36:15 -0500 |
commit | 47629c89a872cb35919b1d264973e8d6633bb654 (patch) | |
tree | 13cd7b27b562641e0eafe15df637f2f5d09e70fe /src/video_core/textures | |
parent | 89e81a9be26da83114e600d141085e9b7ac98529 (diff) |
GPU: Support changing the texture swizzles for Maxwell textures.
Diffstat (limited to 'src/video_core/textures')
-rw-r--r-- | src/video_core/textures/texture.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/video_core/textures/texture.h b/src/video_core/textures/texture.h index f48ca30b8..a17eaf19d 100644 --- a/src/video_core/textures/texture.h +++ b/src/video_core/textures/texture.h @@ -122,6 +122,17 @@ enum class ComponentType : u32 { FLOAT = 7 }; +enum class SwizzleSource : u32 { + Zero = 0, + + R = 2, + G = 3, + B = 4, + A = 5, + OneInt = 6, + OneFloat = 7, +}; + union TextureHandle { u32 raw; BitField<0, 20, u32> tic_id; @@ -139,6 +150,11 @@ struct TICEntry { BitField<10, 3, ComponentType> g_type; BitField<13, 3, ComponentType> b_type; BitField<16, 3, ComponentType> a_type; + + BitField<19, 3, SwizzleSource> x_source; + BitField<22, 3, SwizzleSource> y_source; + BitField<25, 3, SwizzleSource> z_source; + BitField<28, 3, SwizzleSource> w_source; }; u32 address_low; union { |