diff options
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_BucketManager.h')
-rw-r--r-- | source/gameengine/Rasterizer/RAS_BucketManager.h | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/source/gameengine/Rasterizer/RAS_BucketManager.h b/source/gameengine/Rasterizer/RAS_BucketManager.h index 74526f365a0..08b67ed022f 100644 --- a/source/gameengine/Rasterizer/RAS_BucketManager.h +++ b/source/gameengine/Rasterizer/RAS_BucketManager.h @@ -39,33 +39,32 @@ class RAS_BucketManager { + //GEN_Map<class RAS_IPolyMaterial,class RAS_MaterialBucket*> m_MaterialBuckets; + typedef std::vector<class RAS_MaterialBucket*> BucketList; - BucketList m_SolidBuckets; + BucketList m_MaterialBuckets; BucketList m_AlphaBuckets; - struct sortedmeshslot; + struct alphamesh; struct backtofront; - struct fronttoback; public: RAS_BucketManager(); virtual ~RAS_BucketManager(); - void Renderbuckets(const MT_Transform & cameratrans, + void RenderAlphaBuckets(const MT_Transform& cameratrans, RAS_IRasterizer* rasty, RAS_IRenderTools* rendertools); + void Renderbuckets(const MT_Transform & cameratrans, + RAS_IRasterizer* rasty, + class RAS_IRenderTools* rendertools); RAS_MaterialBucket* FindBucket(RAS_IPolyMaterial * material, bool &bucketCreated); - void OptimizeBuckets(MT_Scalar distance); - void ReleaseDisplayLists(RAS_IPolyMaterial * material = NULL); + void ReleaseDisplayLists(); private: - void OrderBuckets(const MT_Transform& cameratrans, BucketList& buckets, vector<sortedmeshslot>& slots, bool alpha); + void RAS_BucketManagerClearAll(); - void RenderSolidBuckets(const MT_Transform& cameratrans, - RAS_IRasterizer* rasty, RAS_IRenderTools* rendertools); - void RenderAlphaBuckets(const MT_Transform& cameratrans, - RAS_IRasterizer* rasty, RAS_IRenderTools* rendertools); }; #endif //__RAS_BUCKETMANAGER |