Merge pull request #35615 from Chaosus/vs_fix_cubemap
Fix VisualShaderNodeCubeMap generation
This commit is contained in:
commit
d1dcf8fdb8
1 changed files with 13 additions and 10 deletions
|
@ -792,7 +792,7 @@ String VisualShaderNodeCubeMap::generate_global(Shader::Mode p_mode, VisualShade
|
||||||
case TYPE_COLOR: u += " : hint_albedo"; break;
|
case TYPE_COLOR: u += " : hint_albedo"; break;
|
||||||
case TYPE_NORMALMAP: u += " : hint_normal"; break;
|
case TYPE_NORMALMAP: u += " : hint_normal"; break;
|
||||||
}
|
}
|
||||||
return u + ";";
|
return u + ";\n";
|
||||||
}
|
}
|
||||||
return String();
|
return String();
|
||||||
}
|
}
|
||||||
|
@ -809,29 +809,32 @@ String VisualShaderNodeCubeMap::generate_code(Shader::Mode p_mode, VisualShader:
|
||||||
return String();
|
return String();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
code += "\t{\n";
|
||||||
|
|
||||||
if (id == String()) {
|
if (id == String()) {
|
||||||
code += "\tvec4 " + id + "_read = vec4(0.0);\n";
|
code += "\t\tvec4 " + id + "_read = vec4(0.0);\n";
|
||||||
code += "\t" + p_output_vars[0] + " = " + id + "_read.rgb;\n";
|
code += "\t\t" + p_output_vars[0] + " = " + id + "_read.rgb;\n";
|
||||||
code += "\t" + p_output_vars[1] + " = " + id + "_read.a;\n";
|
code += "\t\t" + p_output_vars[1] + " = " + id + "_read.a;\n";
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (p_input_vars[0] == String()) { // Use UV by default.
|
if (p_input_vars[0] == String()) { // Use UV by default.
|
||||||
|
|
||||||
if (p_input_vars[1] == String()) {
|
if (p_input_vars[1] == String()) {
|
||||||
code += "\tvec4 " + id + "_read = texture( " + id + " , vec3( UV, 0.0 ) );\n";
|
code += "\t\tvec4 " + id + "_read = texture( " + id + " , vec3( UV, 0.0 ) );\n";
|
||||||
} else {
|
} else {
|
||||||
code += "\tvec4 " + id + "_read = textureLod( " + id + " , vec3( UV, 0.0 )" + " , " + p_input_vars[1] + " );\n";
|
code += "\t\tvec4 " + id + "_read = textureLod( " + id + " , vec3( UV, 0.0 )" + " , " + p_input_vars[1] + " );\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (p_input_vars[1] == String()) {
|
} else if (p_input_vars[1] == String()) {
|
||||||
//no lod
|
//no lod
|
||||||
code += "\tvec4 " + id + "_read = texture( " + id + " , " + p_input_vars[0] + " );\n";
|
code += "\t\tvec4 " + id + "_read = texture( " + id + " , " + p_input_vars[0] + " );\n";
|
||||||
} else {
|
} else {
|
||||||
code += "\tvec4 " + id + "_read = textureLod( " + id + " , " + p_input_vars[0] + " , " + p_input_vars[1] + " );\n";
|
code += "\t\tvec4 " + id + "_read = textureLod( " + id + " , " + p_input_vars[0] + " , " + p_input_vars[1] + " );\n";
|
||||||
}
|
}
|
||||||
code += "\t" + p_output_vars[0] + " = " + id + "_read.rgb;\n";
|
code += "\t\t" + p_output_vars[0] + " = " + id + "_read.rgb;\n";
|
||||||
code += "\t" + p_output_vars[1] + " = " + id + "_read.a;\n";
|
code += "\t\t" + p_output_vars[1] + " = " + id + "_read.a;\n";
|
||||||
|
code += "\t}\n";
|
||||||
|
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue