소스 검색

Shaders: Only convert default value to linear color if type is `source_color`

LuoZhihao 6 달 전
부모
커밋
5ca3862636
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      servers/rendering/renderer_rd/storage_rd/material_storage.cpp

+ 1 - 1
servers/rendering/renderer_rd/storage_rd/material_storage.cpp

@@ -799,7 +799,7 @@ void MaterialStorage::MaterialData::update_uniform_buffer(const HashMap<StringNa
 
 
 		} else if (E.value.default_value.size()) {
 		} else if (E.value.default_value.size()) {
 			//default value
 			//default value
-			_fill_std140_ubo_value(E.value.type, E.value.default_value, data, p_use_linear_color);
+			_fill_std140_ubo_value(E.value.type, E.value.default_value, data, E.value.hint == ShaderLanguage::ShaderNode::Uniform::HINT_SOURCE_COLOR && p_use_linear_color);
 			//value=E.value.default_value;
 			//value=E.value.default_value;
 		} else {
 		} else {
 			//zero because it was not provided
 			//zero because it was not provided