CModel: Mark query functions as const

This commit is contained in:
Lioncache
2025-12-08 02:59:37 -05:00
parent f3fd7f8268
commit 934bdaf889
4 changed files with 11 additions and 11 deletions

View File

@@ -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;

View File

@@ -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; }

View File

@@ -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)

View File

@@ -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;