diff options
author | Benoit Bolsee <benoit.bolsee@online.be> | 2009-04-14 00:08:33 +0400 |
---|---|---|
committer | Benoit Bolsee <benoit.bolsee@online.be> | 2009-04-14 00:08:33 +0400 |
commit | 0b8661ab4da1a7cfbc756640649a2d07bb36cc64 (patch) | |
tree | 6d171db30ddcba3d379dea04b2da9449203419a6 /source/gameengine/Rasterizer/RAS_Polygon.cpp | |
parent | 6f12e584a97f664c654ddfbe5f721d2a7be3d491 (diff) |
BGE: Occlusion culling and other performance improvements.
Added occlusion culling capability in the BGE.
More info: http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.49/Game_Engine#BGE_Scenegraph_improvement
MSVC, scons, cmake, Makefile updated.
Other minor performance improvements:
- The rasterizer was computing the openGL model matrix of the objects too many times
- DBVT view frustrum culling was not properly culling behind the near plane:
Large objects behind the camera were sent to the GPU
- Remove all references to mesh split/join feature as it is not yet functional
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_Polygon.cpp')
-rw-r--r-- | source/gameengine/Rasterizer/RAS_Polygon.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/gameengine/Rasterizer/RAS_Polygon.cpp b/source/gameengine/Rasterizer/RAS_Polygon.cpp index 66b14bb60b0..eacc1285166 100644 --- a/source/gameengine/Rasterizer/RAS_Polygon.cpp +++ b/source/gameengine/Rasterizer/RAS_Polygon.cpp @@ -97,6 +97,17 @@ void RAS_Polygon::SetCollider(bool visible) else m_polyflags &= ~COLLIDER; } +bool RAS_Polygon::IsTwoside() +{ + return (m_polyflags & TWOSIDE) != 0; +} + +void RAS_Polygon::SetTwoside(bool twoside) +{ + if(twoside) m_polyflags |= TWOSIDE; + else m_polyflags &= ~TWOSIDE; +} + RAS_MaterialBucket* RAS_Polygon::GetMaterial() { return m_bucket; |