mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	shader_decode: SULD.D -> SINT actually same as UNORM.
This commit is contained in:
		
							parent
							
								
									6f2b7087c2
								
							
						
					
					
						commit
						9f6ebccf06
					
				@ -352,11 +352,13 @@ u32 ShaderIR::DecodeImage(NodeBlock& bb, u32 pc) {
 | 
				
			|||||||
                        case ComponentType::SNORM: {
 | 
					                        case ComponentType::SNORM: {
 | 
				
			||||||
                            is_signed = true;
 | 
					                            is_signed = true;
 | 
				
			||||||
                            // range [-1.0, 1.0]
 | 
					                            // range [-1.0, 1.0]
 | 
				
			||||||
                            auto cnv_value = Operation(OperationCode::FMul, original_value, Immediate(127.f));
 | 
					                            auto cnv_value =
 | 
				
			||||||
 | 
					                                Operation(OperationCode::FMul, original_value, Immediate(127.f));
 | 
				
			||||||
                            cnv_value = SignedOperation(OperationCode::ICastFloat, is_signed,
 | 
					                            cnv_value = SignedOperation(OperationCode::ICastFloat, is_signed,
 | 
				
			||||||
                                                      std::move(cnv_value));
 | 
					                                                        std::move(cnv_value));
 | 
				
			||||||
                            return BitfieldExtract(std::move(cnv_value), 0, 8);
 | 
					                            return BitfieldExtract(std::move(cnv_value), 0, 8);
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
 | 
					                        case ComponentType::SINT:
 | 
				
			||||||
                        case ComponentType::UNORM: {
 | 
					                        case ComponentType::UNORM: {
 | 
				
			||||||
                            is_signed = false;
 | 
					                            is_signed = false;
 | 
				
			||||||
                            // range [0.0, 1.0]
 | 
					                            // range [0.0, 1.0]
 | 
				
			||||||
@ -365,9 +367,6 @@ u32 ShaderIR::DecodeImage(NodeBlock& bb, u32 pc) {
 | 
				
			|||||||
                            return SignedOperation(OperationCode::ICastFloat, is_signed,
 | 
					                            return SignedOperation(OperationCode::ICastFloat, is_signed,
 | 
				
			||||||
                                                   std::move(cnv_value));
 | 
					                                                   std::move(cnv_value));
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                        case ComponentType::SINT: // range [-128,127]
 | 
					 | 
				
			||||||
                            is_signed = true;
 | 
					 | 
				
			||||||
                            return original_value;
 | 
					 | 
				
			||||||
                        case ComponentType::UINT: // range [0, 255]
 | 
					                        case ComponentType::UINT: // range [0, 255]
 | 
				
			||||||
                            is_signed = false;
 | 
					                            is_signed = false;
 | 
				
			||||||
                            return original_value;
 | 
					                            return original_value;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user