diff options
author | Benoit Bolsee <benoit.bolsee@online.be> | 2008-05-25 18:37:39 +0400 |
---|---|---|
committer | Benoit Bolsee <benoit.bolsee@online.be> | 2008-05-25 18:37:39 +0400 |
commit | da1f38f99d3b8a07ed4ddd905f8e7d7c6e25f945 (patch) | |
tree | 71add2281425519cfd2c06e8d3d6e67cae2b83a7 /source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp | |
parent | f680b56ebfc1415334598e619ec9310ccce472c2 (diff) |
Apply BGE patch 11137: Render objects with negative scaling correctly (as in Blender)
Diffstat (limited to 'source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp')
-rw-r--r-- | source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp b/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp index a656c5e5523..ffd66655069 100644 --- a/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp +++ b/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp @@ -125,6 +125,22 @@ void KX_BlenderRenderTools::BeginFrame(RAS_IRasterizer* rasty) } +void KX_BlenderRenderTools::SetClientObject(void* obj) +{ + if (m_clientobject != obj) + { + if (obj == NULL || !((KX_GameObject*)obj)->IsNegativeScaling()) + { + glFrontFace(GL_CCW); + } else + { + glFrontFace(GL_CW); + } + m_clientobject = obj; + m_modified = true; + } +} + bool KX_BlenderRenderTools::RayHit(KX_ClientObjectInfo* client, MT_Point3& hit_point, MT_Vector3& hit_normal, void * const data) { double* const oglmatrix = (double* const) data; |