diff options
author | Mitchell Stokes <mogurijin@gmail.com> | 2015-12-07 02:24:55 +0300 |
---|---|---|
committer | Mitchell Stokes <mogurijin@gmail.com> | 2015-12-08 06:05:09 +0300 |
commit | fe2f3a131d96e4b0d1c85e1379b30c73f6378ffd (patch) | |
tree | 90b2b683fe86eb62c880995986573993807aa0cb /source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h | |
parent | 9d03307033338dc6ce57a2258e4dd01d09f1dcb3 (diff) |
OpenGL/BGE: Remove RAS_StorageIM (glBegin/glEnd rendering of mesh data)
The only use we had for RAS_StorageIM was to render derived meshes using
Blender's mesh drawing. This is now handled as a special case in
RAS_OpenGLRasterizer instead of in RAS_StorageIM.
We are now left with RAS_StorageVA and RAS_StorageVBO. At the moment
vertex arrays are still the default since our vertex array with display
lists implementation is still much faster than our VBO code in a lot of
cases. As we improve our VBO code, we can drop vertex arrays since
Blender's minimum OpenGL version is being bumped up to 2.1, which
supports VBOs.
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h')
-rw-r--r-- | source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h index 10e11bcedfb..39708b382aa 100644 --- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h +++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h @@ -56,7 +56,6 @@ class RAS_OpenGLLight; enum RAS_STORAGE_TYPE { RAS_AUTO_STORAGE, - RAS_IMMEDIATE, RAS_VA, RAS_VBO, }; @@ -139,11 +138,10 @@ protected: * Examples of concrete strategies: Vertex Arrays, VBOs, Immediate Mode*/ int m_storage_type; RAS_IStorage *m_storage; - RAS_IStorage *m_failsafe_storage; /* So derived mesh can use immediate mode */ public: double GetTime(); - RAS_OpenGLRasterizer(RAS_ICanvas *canv, int storage=RAS_AUTO_STORAGE); + RAS_OpenGLRasterizer(RAS_ICanvas *canv, RAS_STORAGE_TYPE storage); virtual ~RAS_OpenGLRasterizer(); /*enum DrawType @@ -187,6 +185,7 @@ public: virtual void IndexPrimitives(class RAS_MeshSlot &ms); virtual void IndexPrimitives_3DText(class RAS_MeshSlot &ms, class RAS_IPolyMaterial *polymat); + virtual void DrawDerivedMesh(class RAS_MeshSlot &ms); virtual void SetProjectionMatrix(MT_CmMatrix4x4 &mat); virtual void SetProjectionMatrix(const MT_Matrix4x4 &mat); |