mirror of
https://github.com/AxioDL/PrimeWorldEditor.git
synced 2025-12-10 05:57:48 +00:00
CModel: Mark query functions as const
This commit is contained in:
@@ -272,7 +272,7 @@ CMaterial* CModel::GetMaterialBySurface(size_t MatSet, size_t Surface)
|
|||||||
return GetMaterialByIndex(MatSet, mSurfaces[Surface]->MaterialID);
|
return GetMaterialByIndex(MatSet, mSurfaces[Surface]->MaterialID);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CModel::HasTransparency(size_t MatSet)
|
bool CModel::HasTransparency(size_t MatSet) const
|
||||||
{
|
{
|
||||||
if (MatSet >= mMaterialSets.size())
|
if (MatSet >= mMaterialSets.size())
|
||||||
MatSet = mMaterialSets.size() - 1;
|
MatSet = mMaterialSets.size() - 1;
|
||||||
@@ -286,7 +286,7 @@ bool CModel::HasTransparency(size_t MatSet)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CModel::IsSurfaceTransparent(size_t Surface, size_t MatSet)
|
bool CModel::IsSurfaceTransparent(size_t Surface, size_t MatSet) const
|
||||||
{
|
{
|
||||||
if (MatSet >= mMaterialSets.size())
|
if (MatSet >= mMaterialSets.size())
|
||||||
MatSet = mMaterialSets.size() - 1;
|
MatSet = mMaterialSets.size() - 1;
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ public:
|
|||||||
CMaterialSet* GetMatSet(size_t MatSet);
|
CMaterialSet* GetMatSet(size_t MatSet);
|
||||||
CMaterial* GetMaterialByIndex(size_t MatSet, size_t Index);
|
CMaterial* GetMaterialByIndex(size_t MatSet, size_t Index);
|
||||||
CMaterial* GetMaterialBySurface(size_t MatSet, size_t Surface);
|
CMaterial* GetMaterialBySurface(size_t MatSet, size_t Surface);
|
||||||
bool HasTransparency(size_t MatSet);
|
bool HasTransparency(size_t MatSet) const;
|
||||||
bool IsSurfaceTransparent(size_t Surface, size_t MatSet);
|
bool IsSurfaceTransparent(size_t Surface, size_t MatSet) const;
|
||||||
bool IsLightmapped() const;
|
bool IsLightmapped() const;
|
||||||
|
|
||||||
bool IsSkinned() const { return mpSkin != nullptr; }
|
bool IsSkinned() const { return mpSkin != nullptr; }
|
||||||
|
|||||||
@@ -209,15 +209,15 @@ void CSceneNode::AddModelToRenderer(CRenderer *pRenderer, CModel *pModel, size_t
|
|||||||
{
|
{
|
||||||
ASSERT(pModel);
|
ASSERT(pModel);
|
||||||
|
|
||||||
if (!pModel->HasTransparency(MatSet))
|
if (pModel->HasTransparency(MatSet))
|
||||||
{
|
|
||||||
pRenderer->AddMesh(this, -1, AABox(), false, ERenderCommand::DrawMesh);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
pRenderer->AddMesh(this, -1, AABox(), false, ERenderCommand::DrawOpaqueParts);
|
pRenderer->AddMesh(this, -1, AABox(), false, ERenderCommand::DrawOpaqueParts);
|
||||||
pRenderer->AddMesh(this, -1, AABox(), true, ERenderCommand::DrawTransparentParts);
|
pRenderer->AddMesh(this, -1, AABox(), true, ERenderCommand::DrawTransparentParts);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pRenderer->AddMesh(this, -1, AABox(), false, ERenderCommand::DrawMesh);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSceneNode::DrawModelParts(CModel *pModel, FRenderOptions Options, size_t MatSet, ERenderCommand RenderCommand)
|
void CSceneNode::DrawModelParts(CModel *pModel, FRenderOptions Options, size_t MatSet, ERenderCommand RenderCommand)
|
||||||
|
|||||||
@@ -21,12 +21,12 @@ void CGizmo::AddToRenderer(CRenderer *pRenderer, const SViewInfo&)
|
|||||||
// Transform is updated every frame even if the user doesn't modify the gizmo
|
// Transform is updated every frame even if the user doesn't modify the gizmo
|
||||||
// in order to account for scale changes based on camera distance
|
// in order to account for scale changes based on camera distance
|
||||||
UpdateTransform();
|
UpdateTransform();
|
||||||
SModelPart *pPart = mpCurrentParts;
|
const SModelPart* pPart = mpCurrentParts;
|
||||||
|
|
||||||
// Add all parts to renderer
|
// Add all parts to renderer
|
||||||
for (uint32 iPart = 0; iPart < mNumCurrentParts; iPart++)
|
for (uint32 iPart = 0; iPart < mNumCurrentParts; iPart++)
|
||||||
{
|
{
|
||||||
CModel *pModel = pPart->pModel;
|
const CModel* pModel = pPart->pModel;
|
||||||
|
|
||||||
// Determine whether to use the mat set for regular (0) or highlight (1)
|
// Determine whether to use the mat set for regular (0) or highlight (1)
|
||||||
const FAxes PartAxes = pPart->ModelAxes;
|
const FAxes PartAxes = pPart->ModelAxes;
|
||||||
|
|||||||
Reference in New Issue
Block a user