0

我正在使用 FLARManager 增强现实和 Papervision3D 库做一个项目。不幸的是,Papervision 给我带来了很多问题。

我的场景 3D 包含一个 DAE 模型和一个平面。飞机有一个 MovieMaterial 并正在通过 FLVPlayback 播放视频。DAE 和平面都在同一个 DisplayObject3D 容器内。FLARManager 转换容器,以便所有内容都通过标记的角度出现。

我的 DAE 模型是电视,电视的屏幕是透明的。我想让我的飞机在我的 DAE 模型中,以便在飞机材料上播放的电影看起来就像在电视上播放的一样。

问题是,即使平面的 Z 指数比电视低,它也总是出现在电视前面。

如何让我的飞机和它的 MovieMaterial 出现在电视后面,以便它的一些角落被电视切掉,而电视的透明部分让我看到电影?如果不可能,任何人都知道如何在我的 DAE 电视模型的屏幕上获得想要的电影播放效果?

谢谢你。

4

1 回答 1

0

我们自己想通了。开始:

当您有一个 DAE 模型并且想要将其放在 ViewportLayer 上时,您需要确保通过 DAE 模型进行递归,以便将其所有子代都添加到该层上。

这就是你的做法:

var daeViewportLayer:ViewportLayer = viewport.containerSprite.getChildLayer(aDae, true, true);

重要的是第三个参数,recurse = true,这会将 DAE 及其所有子级放在图层上。

viewport.containerSprite 可以替换为 DAE 模型的任何父 DisplayObject3D。

于 2010-05-04T03:11:15.147 回答