今天在做程序时,开始加载模型顶点是84,之后场景复杂程度增加,结果顶点数增加到了460,郁闷死了。
最后,我发现是摄像机出问题了。在不同图层,要设置不同的摄像机。当然这些图层是交替显示,不是用完一个就彻底清除。所以要
_cameraOrthographic = Camera::createOrthographic(visibleSize.width,visibleSize.height,0.01f,1000.f); _cameraOrthographic->setCameraFlag(CameraFlag::USER7);//设置不同的cameraFlag,在不同图层 _cameraOrthographic->setPosition3D(Vec3(0,200.0f)); addChild(_cameraOrthographic);
单个物体:
_sprite3D = Sprite3D::create(RESOURCE_FILES_3D + "test.c3b"); _sprite3D->setScale(1.5f); _sprite3D->setPosition3D(Vec3(visibleSize.height / 6 - 20,visibleSize.height / 3 * 2 + visibleSize.height / 6 + 10,-200)); _sprite3D->setCameraMask(128); _sprite3D->setTexture(RESOURCE_FILES_3D + "test.png"); _sprite3D->setGLProgramState(_state); _sprite3D->setTag(TAG_CONTENT_LEFT0); this->addChild(_sprite3D,1);这样就解决了。
不要小看,上图界面没有更改是顶点数达到2万多,在手机上都刷不动了。
原文链接:https://www.f2er.com/cocos2dx/341325.html