鏡像自
https://github.com/minetest/irrlicht.git
已同步 2025-07-05 17:50:24 +02:00
More fixes for CCubeSceneNode with multi-material cube
CCubeSceneNode::getMaterialCount now returning correct count CCubeSceneNode::clone now cloning all materials git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6474 dfc29bdd-3216-0410-991c-e03cc46cb475
此提交包含在:
@ -202,7 +202,9 @@ video::SMaterial& CCubeSceneNode::getMaterial(u32 i)
|
||||
//! returns amount of materials used by this scene node.
|
||||
u32 CCubeSceneNode::getMaterialCount() const
|
||||
{
|
||||
return 1;
|
||||
if ( Mesh )
|
||||
return Mesh->getMeshBufferCount();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -245,7 +247,8 @@ ISceneNode* CCubeSceneNode::clone(ISceneNode* newParent, ISceneManager* newManag
|
||||
newManager, ID, RelativeTranslation, RelativeRotation, RelativeScale, MeshType);
|
||||
|
||||
nb->cloneMembers(this, newManager);
|
||||
nb->getMaterial(0) = getMaterial(0);
|
||||
for ( irr::u32 i=0; i < getMaterialCount(); ++i )
|
||||
nb->getMaterial(i) = getMaterial(i);
|
||||
nb->Shadow = Shadow;
|
||||
if ( nb->Shadow )
|
||||
nb->Shadow->grab();
|
||||
|
新增問題並參考
封鎖使用者