我在adobe网站上尝试过你好的例子。
http://www.adobe.com/devnet/flashplayer/articles/hello-triangle.html
它有效,但context3D似乎在最低级别的舞台背景上工作。如果我画任何东西,它将覆盖3d背景。
我想将它带到前面或将其设置到一定水平。我怎么能这样做?
我也被告知如果一起使用2d api和3d api,它会降低3d的性能,这是真的吗?在我的作品中,我仍然需要2d api,例如,绘制文本域。
答案 0 :(得分:3)
一切都是这样(从下到上):
StageVideo(1个或多个实例)> Stage3D(1个或更多个实例)>您的常规显示列表。
是的,常规显示对象可能会降低Stage3D的性能,因此使用Stage3D替代方案可能会更好。一些Stage3D加速框架已经内置了一些(如Starling中的TextField)。
答案 1 :(得分:1)
不,你不能把它带到前面。 2d和3d彼此不相关。但是,当然,如果你写出吃100%cpu的2d东西,你会得到很慢的性能。
答案 2 :(得分:0)
唯一的办法是从stage3D实例的底层获取渲染的位图并将其显示在displayList的顶部..但它应该适用于每一帧,这会影响性能很多,当然也没有鼠标交互...此解决方案仅适用于在stage3D上显示渲染场景..只是模拟