Skip to content

Commit d904246

Browse files
committed
Merge pull request cocos2d#14613 from super626/v3
fix 3d model bug
2 parents 1935e2a + 6e1f38f commit d904246

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

cocos/3d/CCSprite3D.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,13 @@ Sprite3D* Sprite3D::createSprite3DNode(NodeData* nodedata,ModelData* modeldata,c
364364
{
365365
sprite->setName(nodedata->id);
366366
auto mesh = Mesh::create(nodedata->id, getMeshIndexData(modeldata->subMeshId));
367+
368+
if (_skeleton && modeldata->bones.size())
369+
{
370+
auto skin = MeshSkin::create(_skeleton, modeldata->bones, modeldata->invBindPose);
371+
mesh->setSkin(skin);
372+
}
373+
367374
if (modeldata->matrialId == "" && materialdatas.materials.size())
368375
{
369376
const NTextureData* textureData = materialdatas.materials[0].getTextureData(NTextureData::Usage::Diffuse);
@@ -748,7 +755,7 @@ void Sprite3D::draw(Renderer *renderer, const Mat4 &transform, uint32_t flags)
748755
{
749756
#if CC_USE_CULLING
750757
// camera clipping
751-
if(Camera::getVisitingCamera() && !Camera::getVisitingCamera()->isVisibleInFrustum(&this->getAABB()))
758+
if(_children.size() == 0 && Camera::getVisitingCamera() && !Camera::getVisitingCamera()->isVisibleInFrustum(&getAABB()))
752759
return;
753760
#endif
754761

0 commit comments

Comments
 (0)