From a7e0ec59843a7da9df8a37d3e588b726defa95c0 Mon Sep 17 00:00:00 2001 From: Lynix Date: Fri, 6 Sep 2013 18:32:28 +0200 Subject: [PATCH] Shared ShaderProgramManager flags to both fragment and vertex shaders Former-commit-id: 10a5b3493df9c1e756702f572c90fbbd6e697039 --- src/Nazara/Renderer/ShaderProgramManager.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/Nazara/Renderer/ShaderProgramManager.cpp b/src/Nazara/Renderer/ShaderProgramManager.cpp index 84ee65987..0d60e22f9 100644 --- a/src/Nazara/Renderer/ShaderProgramManager.cpp +++ b/src/Nazara/Renderer/ShaderProgramManager.cpp @@ -191,7 +191,7 @@ NzString NzShaderProgramManager::BuildFragmentCode(const NzShaderProgramManagerP NzString source; /********************Header********************/ - source.Reserve(14 + 24 + 1); + source.Reserve(14 + 24 + 24 + 26 + 1); source += "#version "; source += NzString::Number(s_glslVersion); source += "\n\n"; @@ -200,6 +200,14 @@ NzString NzShaderProgramManager::BuildFragmentCode(const NzShaderProgramManagerP source += (params.flags & nzShaderFlags_Deferred) ? '1' : '0'; source += '\n'; + source += "#define FLAG_FLIP_UVS "; + source += (params.flags & nzShaderFlags_FlipUVs) ? '1' : '0'; + source += '\n'; + + source += "#define FLAG_INSTANCING "; + source += (params.flags & nzShaderFlags_Instancing) ? '1' : '0'; + source += '\n'; + source += '\n'; switch (params.target) @@ -374,11 +382,15 @@ NzString NzShaderProgramManager::BuildVertexCode(const NzShaderProgramManagerPar NzString source; /********************Header********************/ - source.Reserve(14 + 24 + 26 + 1); + source.Reserve(14 + 24 + 24 + 26 + 1); source += "#version "; source += NzString::Number(s_glslVersion); source += "\n\n"; + source += "#define FLAG_DEFERRED "; + source += (params.flags & nzShaderFlags_Deferred) ? '1' : '0'; + source += '\n'; + source += "#define FLAG_FLIP_UVS "; source += (params.flags & nzShaderFlags_FlipUVs) ? '1' : '0'; source += '\n';