mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-11 21:58:31 +09:00
[Fix] (MG_Util/Program/GLSLTool): Really really hacky way to fix blur shader
This commit is contained in:
@@ -111,8 +111,12 @@ namespace MG_Util::Program {
|
|||||||
|
|
||||||
// TODO: Use other methods to implement clip space fixing.
|
// TODO: Use other methods to implement clip space fixing.
|
||||||
size_t pos = output_glsl.find("\n gl_Position.y = -gl_Position.y;\n}");
|
size_t pos = output_glsl.find("\n gl_Position.y = -gl_Position.y;\n}");
|
||||||
|
size_t blur_pos = output_glsl.find("BlurDir"); // TODO: Fix this really hacky way of fixing blur shader...
|
||||||
if (pos != std::string::npos) {
|
if (pos != std::string::npos) {
|
||||||
output_glsl.replace(pos, strlen("\n gl_Position.y = -gl_Position.y;\n}"), "\n gl_Position.y = -gl_Position.y;\n gl_Position.z = (gl_Position.z + gl_Position.w) * 0.5;\n}");
|
if (blur_pos != std::string::npos) {
|
||||||
|
output_glsl.replace(pos, strlen("\n gl_Position.y = -gl_Position.y;\n}"), "\n}");
|
||||||
|
} else
|
||||||
|
output_glsl.replace(pos, strlen("\n gl_Position.y = -gl_Position.y;\n}"), "\n gl_Position.y = -gl_Position.y;\n gl_Position.z = (gl_Position.z + gl_Position.w) * 0.5;\n}");
|
||||||
}
|
}
|
||||||
return output_glsl;
|
return output_glsl;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user