求助,sprite3d和2d遮挡问题。

伪码如下:
sprite3d* 3d = sprite3d::create(“xxxx.c3b”);

layer* l1 = layer::create();
layer->addchild(3d);

layer* l2 = layer::create();
layer->addchild(ImageView::create(“xxx.png”|));

this->addchild(l1);
this->addchild(l2, 1);

结果发现,3d模型会遮挡住imageview。。这是为什么??

3d->setGlobalZOrder(1);

。。我不是这个意思。。
我的意思是。。3D模型有部分会遮挡住UI。。
但是UI明明是在3D模型上层的。。
新版本的fbx-conv会有这个问题。。
几个版本之前的反而没有。。
见下图。。
武器在UI下面。。但是裙子跑到UI上面来了。。

:6: :6: :6:

问题仍未解决。。

:2::2::2:

UI 跟 场景 别用同一个相机,UI用默认的相机,场景物体用自己创建的相机。

那比如。。
我需要一个底图。。
然后上面有个模型。。
再上面有UI怎么办??
如果两个摄像机。。创建的摄像机一定在默认的下面。。

那就底图跟模型用一个相机,然后把底图的坐标设置在模型的后面。

地图跟模型怎么用一个相机啊,求解?我也遇到这问题

用同一个相机,默认情况下3D会被2D遮挡,但是如果你把2D跟3D挂到一个3D节点上,就可以通过调整z值通过深度来处理遮挡。

创建一个2D布景和一个3D布景,分别加入场景中,3D布景中用自己的摄像机,问题自然就解决了