[]有些模型load之后,MeshSprite3D 的共享材质个数为0,无法对材质进行操作
_disObj3d = Sprite3D.load("../../res/models/cike.lh");
_scene3d.addChild(_disObj3d);
_disObj3d.once(Event.HIERARCHY_LOADED, null, function(sender:Sprite3D):void
{
var ms:MeshSprite3D = _disObj3d.getChildByName("mod_CiKeZhuangBei_Body_03") as MeshSprite3D;
if(ms)
{
trace("length " + ms.meshRender.sharedMaterials.length);
}
}
输出: length 0
_scene3d.addChild(_disObj3d);
_disObj3d.once(Event.HIERARCHY_LOADED, null, function(sender:Sprite3D):void
{
var ms:MeshSprite3D = _disObj3d.getChildByName("mod_CiKeZhuangBei_Body_03") as MeshSprite3D;
if(ms)
{
trace("length " + ms.meshRender.sharedMaterials.length);
}
}
输出: length 0
没有找到相关结果
已邀请:
要回复问题请先登录
5 个回复
jifm
赞同来自:
Laya_XS
赞同来自:
,你名字应该搞错了,你在确认下,你的问题可以通过断点调试下!
leeq3000
赞同来自:
var ms:MeshSprite3D = _disObj3d.getChildByName("mod_CiKeZhuangBei_Body_03") as MeshSprite3D;
这个节点我是拿到了的哈,转换成MeshSprite3D也成功了的,要不然不会有输出。
现在的关键问题是这个MeshSprite3D的ms.meshRender.sharedMaterials.length 共享材质是空的
183*****755
赞同来自:
2,如果使用非最新版本的引擎,请在每个子节点ms.meshFilter.sharedMesh加载完后获取
150*****372
赞同来自: