[cocos2dx 3.5 :: Sprite3D problem] 3d models with alpha channels

Hello, Everyone.

I use Cocos2dx-3.5 version. And I import a ‘3D Modeling Character’ to cocos2dx.
but cocos2dx view and 3d-max view are seen differently.

here is my screenshots on cocos2dx engine.

and that is 3d-max screenshot.

character’s hair, shoulder texture part

source code

auto sexy_girl= Sprite3D::create( "Sexygirl_motion_1.c3b" );
sexy_girl->setScale(5.f);
sexy_girl->setPosition(Vec2(visibleSize.width/2 , visibleSize.height/2 - 100 ));
sexy_girl->setRotation3D(Vec3(0, 0, 0));
this->addChild(sexy_girl, 100);

for (ssize_t i = 0; i < sexy_girl->getMeshCount(); i++) 
{
    auto mesh = sexy_girl->getMeshByIndex(static_cast<int>(i));
    switch (i)
    {
        case 0: mesh->setTexture("Sexygirl_body_1.png"); break; // hair, body texture
        case 1: mesh->setTexture("Sexygirl_body_1.png"); break;
        case 2: mesh->setTexture("Sexygirl_body_2.png"); break; // face texture
     }
        sexy_girl->getMeshByIndex(static_cast<int>(i))->setVisible(true);
 }

I hope my problem is resolve.
thank you for reading this

** add (11/Jun/15)

I found that this problem is occurred on same texture mapping.

This modeling used two texture for character’s mapping.

First file has body and hair textures. Second file has face’s texture.

Only hair’s texture has alpha channel.

If non-alpha-texture and alpha-texture in same texture file are overlapped(ex. same x,y not same z) on cocos2dx, non-alpha-texture area is erase by alpha-texture.

That is a clue that I founded after wrote this page.