Kind of fixing window coordinates.
This commit is contained in:
@@ -209,17 +209,14 @@ bool GL4Shader::PrepareVertexShader(
|
||||
//" pos.w = 0.0;\n"
|
||||
//" }\n"
|
||||
" // NDC transform.\n"
|
||||
" pos.x = pos.x * state.viewport_scale.x + \n"
|
||||
" state.viewport_offset.x;\n"
|
||||
" pos.y = pos.y * state.viewport_scale.y + \n"
|
||||
" state.viewport_offset.y;\n"
|
||||
" pos.z = pos.z * state.viewport_scale.z + \n"
|
||||
" state.viewport_offset.z;\n"
|
||||
" pos.xyz = pos.xyz * state.viewport_scale.xyz + \n"
|
||||
" state.viewport_offset.xyz;\n"
|
||||
" // NDC->Window with viewport.\n"
|
||||
" pos.xy = pos.xy * state.window_offset.zw + state.window_offset.xy;\n"
|
||||
" pos.xy = pos.xy / (vec2(1280.0 - 1.0, -720.0 + 1.0) / 2.0) +\n"
|
||||
" vec2(-1.0, 1.0);\n"
|
||||
" // Window adjustment.\n"
|
||||
" // Put back in to ndc for glViewport to then take it back out again.\n"
|
||||
" // Note the 1px scaling adjustment to fully fill the window.\n"
|
||||
" pos.xy = pos.xy / ((state.window_scissor.zw - 1.0) /\n"
|
||||
" vec2(2.0, -2.0)) + vec2(-1.0, 1.0);\n"
|
||||
" return pos;\n"
|
||||
"}\n";
|
||||
std::string source =
|
||||
|
||||
Reference in New Issue
Block a user