精灵在3d内容后面闪烁,cocos3d



在我正在开发的Cocos3d应用程序中,我在CC3Layer中添加了几个精灵。这个精灵被渲染在3d内容后面,每次我触摸屏幕时,2d内容都会闪烁。我试过在CC3Scene上打开比例,self。shouldClearDepthBuffer=YES;并告诉同一CC3Scene中的director设置DepthTest[[CCDirector sharedDirector]设置DepthTest:YES];。但无论如何,它仍然会闪烁,这种影响在Ipod touch 4等旧设备中更为明显。我放弃了使用CC3BillBoards,因为它不能满足应用程序的需求。然而,如果内容被渲染为覆盖3d内容,则在发生触摸时不会发生闪烁。有人经历过这样的事情吗?有办法解决吗?谢谢卡洛斯。

如果你只想在背景中有一堆有纹理的矩形,你可以简单地使用populateAsCenteredRectangleWithSize:或类似的方法在CC3MeshNode上创建它们。查看CC3DemoMashUpScene中的addGround方法如何创建地面。

尽量避免使用CC3BillboardsCC3Billboards用于保存cocos2d精灵或2D粒子生成器。除非您已经有了必须在3D场景中使用的2D精灵或粒子生成器,否则您应该直接在3D世界中创建网格。这要高效得多,因为在2D和3D渲染之间来回切换会有开销。

你的相机是在移动还是静止?

如果需要这些背景图像来跟踪相机,可以在每个背景图像上使用asCameraTrackingWrapper,或者简单地将相机设置为图像矩形节点的目标,并将shouldTrackTarget属性设置为YES

相关内容

  • 没有找到相关文章

最新更新