diff options
Diffstat (limited to 'source')
6 files changed, 18 insertions, 51 deletions
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp b/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp index f2315fef0fb..6ff91f480a7 100644 --- a/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp +++ b/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp @@ -282,9 +282,6 @@ void KX_BlenderRenderTools::DisableOpenGLLights() { glDisable(GL_LIGHTING); glDisable(GL_COLOR_MATERIAL); -#ifndef SLOWPAINT - glDisableClientState(GL_NORMAL_ARRAY); -#endif //SLOWPAINT } @@ -292,11 +289,8 @@ void KX_BlenderRenderTools::EnableOpenGLLights() { glEnable(GL_LIGHTING); - glColorMaterial(GL_FRONT_AND_BACK,GL_DIFFUSE); glEnable(GL_COLOR_MATERIAL); -#ifndef SLOWPAINT - glEnableClientState(GL_NORMAL_ARRAY); -#endif //SLOWPAINT + glColorMaterial(GL_FRONT_AND_BACK,GL_DIFFUSE); glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, false); if (bgl::QueryExtension(bgl::_GL_EXT_separate_specular_color) || bgl::QueryVersion(1, 2)) glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR); diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp index 33a048be4dd..24306212d15 100644 --- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp +++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp @@ -226,45 +226,23 @@ RAS_MeshObject* BL_ConvertMesh(Mesh* mesh, Object* blenderobj, RAS_IRenderTools* MT_Point2 uv0(0.0,0.0),uv1(0.0,0.0),uv2(0.0,0.0),uv3(0.0,0.0); // rgb3 is set from the adjoint face in a square unsigned int rgb0,rgb1,rgb2,rgb3 = 0; - pt0 = MT_Point3( mesh->mvert[mface->v1].co[0], - mesh->mvert[mface->v1].co[1], - mesh->mvert[mface->v1].co[2]); - no0 = MT_Vector3( - mesh->mvert[mface->v1].no[0]/32767.0, - mesh->mvert[mface->v1].no[1]/32767.0, - mesh->mvert[mface->v1].no[2]/32767.0 - ); - - pt1 = MT_Point3( mesh->mvert[mface->v2].co[0], - mesh->mvert[mface->v2].co[1], - mesh->mvert[mface->v2].co[2]); - - no1 = MT_Vector3( - mesh->mvert[mface->v2].no[0]/32767.0, - mesh->mvert[mface->v2].no[1]/32767.0, - mesh->mvert[mface->v2].no[2]/32767.0 - ); - - pt2 = MT_Point3( mesh->mvert[mface->v3].co[0], - mesh->mvert[mface->v3].co[1], - mesh->mvert[mface->v3].co[2]); - - no2 = MT_Vector3( - mesh->mvert[mface->v3].no[0]/32767.0, - mesh->mvert[mface->v3].no[1]/32767.0, - mesh->mvert[mface->v3].no[2]/32767.0 - ); + MT_Vector3 no0(mesh->mvert[mface->v1].no[0], mesh->mvert[mface->v1].no[1], mesh->mvert[mface->v1].no[2]), + no1(mesh->mvert[mface->v2].no[0], mesh->mvert[mface->v2].no[1], mesh->mvert[mface->v2].no[2]), + no2(mesh->mvert[mface->v3].no[0], mesh->mvert[mface->v3].no[1], mesh->mvert[mface->v3].no[2]), + no3(0.0, 0.0, 0.0); + MT_Point3 pt0(mesh->mvert[mface->v1].co), + pt1(mesh->mvert[mface->v2].co), + pt2(mesh->mvert[mface->v3].co), + pt3(0.0, 0.0, 0.0); + no0 /= 32767.0; + no1 /= 32767.0; + no2 /= 32767.0; if (mface->v4) { - pt3 = MT_Point3( mesh->mvert[mface->v4].co[0], - mesh->mvert[mface->v4].co[1], - mesh->mvert[mface->v4].co[2]); - no3 = MT_Vector3( - mesh->mvert[mface->v4].no[0]/32767.0, - mesh->mvert[mface->v4].no[1]/32767.0, - mesh->mvert[mface->v4].no[2]/32767.0 - ); + pt3 = MT_Point3(mesh->mvert[mface->v4].co); + no3 = MT_Vector3(mesh->mvert[mface->v4].no[0], mesh->mvert[mface->v4].no[1], mesh->mvert[mface->v4].no[2]); + no3 /= 32767.0; } if((!mface->flag & ME_SMOOTH)) @@ -374,6 +352,7 @@ RAS_MeshObject* BL_ConvertMesh(Mesh* mesh, Object* blenderobj, RAS_IRenderTools* { polymat->m_specular = MT_Vector3(ma->specr, ma->specg, ma->specb)*ma->spec; polymat->m_shininess = (float)ma->har/4.0; // 0 < ma->har <= 512 + polymat->m_diffuse = MT_Vector3(ma->r, ma->g, ma->b)*(ma->emit + ma->ref); } else { diff --git a/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp b/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp index 743af35ae9b..514a73c4d77 100644 --- a/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp +++ b/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp @@ -157,9 +157,8 @@ int GPC_RenderTools::ProcessLighting(int layer) void GPC_RenderTools::EnableOpenGLLights() { glEnable(GL_LIGHTING); - glColorMaterial(GL_FRONT_AND_BACK,GL_DIFFUSE); glEnable(GL_COLOR_MATERIAL); - glEnableClientState(GL_NORMAL_ARRAY); + glColorMaterial(GL_FRONT_AND_BACK,GL_DIFFUSE); if (bgl::QueryExtension(bgl::_GL_EXT_separate_specular_color) || bgl::QueryVersion(1, 2)) glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR); } diff --git a/source/gameengine/GamePlayer/common/GPC_RenderTools.h b/source/gameengine/GamePlayer/common/GPC_RenderTools.h index 9c76ccd478d..62b69c07c5c 100644 --- a/source/gameengine/GamePlayer/common/GPC_RenderTools.h +++ b/source/gameengine/GamePlayer/common/GPC_RenderTools.h @@ -64,7 +64,6 @@ public: { glDisable(GL_LIGHTING); glDisable(GL_COLOR_MATERIAL); - glDisableClientState(GL_NORMAL_ARRAY); } void EnableOpenGLLights(); diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp index 4cf930072c5..7105710bf08 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp @@ -143,9 +143,6 @@ bool RAS_OpenGLRasterizer::Init() m_blueback = 0.4375; m_alphaback = 0.0; - // enable both vertexcolor AND lighting color - glEnable(GL_COLOR_MATERIAL); - glClearColor(m_redback,m_greenback,m_blueback,m_alphaback); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.cpp b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.cpp index 50b786bb120..7d7a73b8f2d 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.cpp +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.cpp @@ -75,7 +75,7 @@ bool RAS_VAOpenGLRasterizer::Init(void) { glEnableClientState(GL_VERTEX_ARRAY); glDisableClientState(GL_TEXTURE_COORD_ARRAY); - glDisableClientState(GL_NORMAL_ARRAY); + glEnableClientState(GL_NORMAL_ARRAY); glDisableClientState(GL_COLOR_ARRAY); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); @@ -125,7 +125,6 @@ void RAS_VAOpenGLRasterizer::Exit() glDisableClientState(GL_TEXTURE_COORD_ARRAY); glDisableClientState(GL_COLOR_ARRAY); glDisableClientState(GL_NORMAL_ARRAY); - glDisable(GL_COLOR_MATERIAL); RAS_OpenGLRasterizer::Exit(); } |