mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	video_core/texture: Add a raw representation of TSCEntry
This commit is contained in:
		
							parent
							
								
									2ad44a453f
								
							
						
					
					
						commit
						8ebeb9ade2
					
				@ -283,31 +283,36 @@ enum class TextureMipmapFilter : u32 {
 | 
			
		||||
 | 
			
		||||
struct TSCEntry {
 | 
			
		||||
    union {
 | 
			
		||||
        BitField<0, 3, WrapMode> wrap_u;
 | 
			
		||||
        BitField<3, 3, WrapMode> wrap_v;
 | 
			
		||||
        BitField<6, 3, WrapMode> wrap_p;
 | 
			
		||||
        BitField<9, 1, u32> depth_compare_enabled;
 | 
			
		||||
        BitField<10, 3, DepthCompareFunc> depth_compare_func;
 | 
			
		||||
        BitField<13, 1, u32> srgb_conversion;
 | 
			
		||||
        BitField<20, 3, u32> max_anisotropy;
 | 
			
		||||
        struct {
 | 
			
		||||
            union {
 | 
			
		||||
                BitField<0, 3, WrapMode> wrap_u;
 | 
			
		||||
                BitField<3, 3, WrapMode> wrap_v;
 | 
			
		||||
                BitField<6, 3, WrapMode> wrap_p;
 | 
			
		||||
                BitField<9, 1, u32> depth_compare_enabled;
 | 
			
		||||
                BitField<10, 3, DepthCompareFunc> depth_compare_func;
 | 
			
		||||
                BitField<13, 1, u32> srgb_conversion;
 | 
			
		||||
                BitField<20, 3, u32> max_anisotropy;
 | 
			
		||||
            };
 | 
			
		||||
            union {
 | 
			
		||||
                BitField<0, 2, TextureFilter> mag_filter;
 | 
			
		||||
                BitField<4, 2, TextureFilter> min_filter;
 | 
			
		||||
                BitField<6, 2, TextureMipmapFilter> mipmap_filter;
 | 
			
		||||
                BitField<9, 1, u32> cubemap_interface_filtering;
 | 
			
		||||
                BitField<12, 13, u32> mip_lod_bias;
 | 
			
		||||
            };
 | 
			
		||||
            union {
 | 
			
		||||
                BitField<0, 12, u32> min_lod_clamp;
 | 
			
		||||
                BitField<12, 12, u32> max_lod_clamp;
 | 
			
		||||
                BitField<24, 8, u32> srgb_border_color_r;
 | 
			
		||||
            };
 | 
			
		||||
            union {
 | 
			
		||||
                BitField<12, 8, u32> srgb_border_color_g;
 | 
			
		||||
                BitField<20, 8, u32> srgb_border_color_b;
 | 
			
		||||
            };
 | 
			
		||||
            std::array<f32, 4> border_color;
 | 
			
		||||
        };
 | 
			
		||||
        std::array<u32, 8> raw;
 | 
			
		||||
    };
 | 
			
		||||
    union {
 | 
			
		||||
        BitField<0, 2, TextureFilter> mag_filter;
 | 
			
		||||
        BitField<4, 2, TextureFilter> min_filter;
 | 
			
		||||
        BitField<6, 2, TextureMipmapFilter> mipmap_filter;
 | 
			
		||||
        BitField<9, 1, u32> cubemap_interface_filtering;
 | 
			
		||||
        BitField<12, 13, u32> mip_lod_bias;
 | 
			
		||||
    };
 | 
			
		||||
    union {
 | 
			
		||||
        BitField<0, 12, u32> min_lod_clamp;
 | 
			
		||||
        BitField<12, 12, u32> max_lod_clamp;
 | 
			
		||||
        BitField<24, 8, u32> srgb_border_color_r;
 | 
			
		||||
    };
 | 
			
		||||
    union {
 | 
			
		||||
        BitField<12, 8, u32> srgb_border_color_g;
 | 
			
		||||
        BitField<20, 8, u32> srgb_border_color_b;
 | 
			
		||||
    };
 | 
			
		||||
    std::array<f32, 4> border_color;
 | 
			
		||||
 | 
			
		||||
    float GetMaxAnisotropy() const {
 | 
			
		||||
        return static_cast<float>(1U << max_anisotropy);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user