Blender V2.61 - r43446
|
#include <RAS_MaterialBucket.h>
Classes | |
struct | less |
Public Types | |
typedef set < RAS_MaterialBucket *, less > | Set |
Public Member Functions | |
RAS_MaterialBucket (RAS_IPolyMaterial *mat) | |
virtual | ~RAS_MaterialBucket () |
RAS_IPolyMaterial * | GetPolyMaterial () const |
bool | IsAlpha () const |
bool | IsZSort () const |
bool | ActivateMaterial (const MT_Transform &cameratrans, RAS_IRasterizer *rasty, RAS_IRenderTools *rendertools) |
void | RenderMeshSlot (const MT_Transform &cameratrans, RAS_IRasterizer *rasty, RAS_IRenderTools *rendertools, RAS_MeshSlot &ms) |
list< RAS_MeshSlot >::iterator | msBegin () |
list< RAS_MeshSlot >::iterator | msEnd () |
class RAS_MeshSlot * | AddMesh (int numverts) |
class RAS_MeshSlot * | CopyMesh (class RAS_MeshSlot *ms) |
void | RemoveMesh (class RAS_MeshSlot *ms) |
void | Optimize (MT_Scalar distance) |
void | ActivateMesh (RAS_MeshSlot *slot) |
SG_DList & | GetActiveMeshSlots () |
RAS_MeshSlot * | GetNextActiveMeshSlot () |
Definition at line 208 of file RAS_MaterialBucket.h.
typedef set<RAS_MaterialBucket*, less> RAS_MaterialBucket::Set |
Definition at line 215 of file RAS_MaterialBucket.h.
RAS_MaterialBucket::RAS_MaterialBucket | ( | RAS_IPolyMaterial * | mat | ) |
Definition at line 519 of file RAS_MaterialBucket.cpp.
RAS_MaterialBucket::~RAS_MaterialBucket | ( | ) | [virtual] |
Definition at line 524 of file RAS_MaterialBucket.cpp.
bool RAS_MaterialBucket::ActivateMaterial | ( | const MT_Transform & | cameratrans, |
RAS_IRasterizer * | rasty, | ||
RAS_IRenderTools * | rendertools | ||
) |
Definition at line 584 of file RAS_MaterialBucket.cpp.
References RAS_IPolyMaterial::CastsShadows(), RAS_IRasterizer::GetDrawingMode(), RAS_IRasterizer::KX_SHADOW, RAS_IRenderTools::ProcessLighting(), RAS_IRasterizer::SetMaterial(), and RAS_IPolyMaterial::UsesLighting().
void RAS_MaterialBucket::ActivateMesh | ( | RAS_MeshSlot * | slot | ) | [inline] |
Definition at line 237 of file RAS_MaterialBucket.h.
Referenced by KX_GameObject::UpdateBuckets().
RAS_MeshSlot * RAS_MaterialBucket::AddMesh | ( | int | numverts | ) |
Definition at line 543 of file RAS_MaterialBucket.cpp.
References RAS_MeshSlot::init().
Referenced by RAS_MeshObject::AddPolygon().
RAS_MeshSlot * RAS_MaterialBucket::CopyMesh | ( | class RAS_MeshSlot * | ms | ) |
Definition at line 555 of file RAS_MaterialBucket.cpp.
Referenced by RAS_MeshObject::AddMeshUser().
SG_DList& RAS_MaterialBucket::GetActiveMeshSlots | ( | ) | [inline] |
Definition at line 241 of file RAS_MaterialBucket.h.
RAS_MeshSlot* RAS_MaterialBucket::GetNextActiveMeshSlot | ( | ) | [inline] |
Definition at line 245 of file RAS_MaterialBucket.h.
References SG_DList::Remove().
RAS_IPolyMaterial * RAS_MaterialBucket::GetPolyMaterial | ( | ) | const |
Definition at line 528 of file RAS_MaterialBucket.cpp.
Referenced by RAS_MeshObject::AddPolygon(), RAS_MeshObject::AddVertex(), BL_ConvertMesh(), getMaterial(), RAS_MeshObject::GetMaterialName(), RAS_MeshObject::GetTextureName(), ImageRender::ImageRender(), RAS_OpenGLRasterizer::IndexPrimitivesInternal(), RAS_MaterialBucket::less::operator()(), RAS_BucketManager::RemoveMaterial(), and RAS_MeshSlot::SetDeformer().
bool RAS_MaterialBucket::IsAlpha | ( | ) | const |
Definition at line 533 of file RAS_MaterialBucket.cpp.
References RAS_IPolyMaterial::IsAlpha().
Referenced by RAS_BucketManager::FindBucket().
bool RAS_MaterialBucket::IsZSort | ( | ) | const |
Definition at line 538 of file RAS_MaterialBucket.cpp.
References RAS_IPolyMaterial::IsZSort().
Referenced by RenderMeshSlot().
list< RAS_MeshSlot >::iterator RAS_MaterialBucket::msBegin | ( | ) |
Definition at line 574 of file RAS_MaterialBucket.cpp.
list< RAS_MeshSlot >::iterator RAS_MaterialBucket::msEnd | ( | ) |
Definition at line 579 of file RAS_MaterialBucket.cpp.
void RAS_MaterialBucket::Optimize | ( | MT_Scalar | distance | ) |
Definition at line 658 of file RAS_MaterialBucket.cpp.
void RAS_MaterialBucket::RemoveMesh | ( | class RAS_MeshSlot * | ms | ) |
Definition at line 562 of file RAS_MaterialBucket.cpp.
Referenced by RAS_MeshObject::RemoveFromBuckets().
void RAS_MaterialBucket::RenderMeshSlot | ( | const MT_Transform & | cameratrans, |
RAS_IRasterizer * | rasty, | ||
RAS_IRenderTools * | rendertools, | ||
RAS_MeshSlot & | ms | ||
) |
Definition at line 601 of file RAS_MaterialBucket.cpp.
References RAS_IPolyMaterial::ActivateMeshSlot(), RAS_Deformer::Apply(), RAS_IRenderTools::applyTransform(), RAS_IPolyMaterial::GetDrawingMode(), RAS_IRasterizer::GetDrawingMode(), RAS_IPolyMaterial::GetFlag(), if(), RAS_IRasterizer::IndexPrimitives(), RAS_IRasterizer::IndexPrimitives_3DText(), RAS_IRasterizer::IndexPrimitivesMulti(), RAS_Deformer::IsDynamic(), IsZSort(), RAS_IRasterizer::KX_SHADOW, RAS_IRasterizer::KX_SOLID, RAS_MeshSlot::m_bDisplayList, RAS_MeshSlot::m_bObjectColor, RAS_MeshSlot::m_DisplayList, RAS_MeshSlot::m_mesh, RAS_MeshSlot::m_OpenGLMatrix, RAS_MeshSlot::m_pDeformer, RAS_MeshObject::MeshModified(), RAS_IRenderTools::PopMatrix(), RAS_IRenderTools::PushMatrix(), RAS_IRasterizer::QueryLists(), RAS_BLENDERGLSL, RAS_MULTITEX, RAS_IRasterizer::RAS_RENDER_3DPOLYGON_TEXT, RAS_MeshObject::SetMeshModified(), KX_ListSlot::SetModified(), RAS_Deformer::SkipVertexTransform(), RAS_MeshObject::SortPolygons(), and RAS_IPolyMaterial::UsesObjectColor().