我正在做一个使用FLARManager增强现实和Papervision3D库的项目。不幸的是,Papervision给我带来了很多问题。
我的scene3D包含一个DAE模型和一个平面。这架飞机有一个MovieMaterial,正在通过FLVPlayback播放视频。DAE和平面均位于同一DisplayObject3D容器中。FLARManager会变换容器,以便所有内容都通过标记的角度显示。
我的DAE型号是电视机,电视机的屏幕是透明的。我希望将我的飞机放在DAE模型中,以便在飞机材质上播放的影片看起来与在电视上播放的内容相同。
问题是,即使飞机的Z指数比电视低,它也总是出现在电视前面。
我如何让我的飞机和它的MovieMaterial显示在电视后面,以便它的一些角落被电视切割出来,而电视透明的部分让我可以看到电影?如果这是不可能的,谁知道我如何才能获得理想的效果,让电影播放在我的DAE电视模型的屏幕上?
谢谢。
发布于 2010-05-04 11:11:15
我自己想好了。如下所示:
当您具有DAE模型并希望将其放在ViewportLayer上时,您需要确保递归遍历DAE模型,以便将其所有子模型添加到层上。
这就是你怎么做的:
var daeViewportLayer:ViewportLayer = viewport.containerSprite.getChildLayer(aDae, true, true);重要的是第三个参数,recurse = true,这将把DAE及其所有子节点放在层上。
viewport.containerSprite可由DAE型号的任何父DisplayObject3D替换。
https://stackoverflow.com/questions/2741719
复制相似问题