1

我在 adobe 网站上尝试了 hello 示例。

http://www.adobe.com/devnet/flashplayer/articles/hello-triangle.html

它可以工作,但是 context3D 似乎在最低级别的舞台背景上工作。如果我画任何东西,它将覆盖 3d 上下文。

我想把它放在前面或设置到一定的水平。我怎样才能做到这一点?

另外有人告诉我如果同时使用 2d api 和 3d api 会降低 3d 的性能,这是真的吗?在我的作品中,我仍然需要 2d api,例如,绘制文本字段。

4

3 回答 3

3

一切都是这样的(从下到上):

StageVideo(1 个或多个实例)> Stage3D(1 个或多个实例)> 您的常规显示列表。

是的,常规显示对象可能会降低 Stage3D 的性能,因此使用 Stage3D 替代品可能会更好。一些 Stage3D 加速框架已经内置了一些框架(如 Starling 中的 TextField)。

于 2012-11-26T08:02:22.490 回答
1

不,你不能把它带到前面。2d 和 3d 互不相关。但是,当然,如果您编写 100% 占用 cpu 的 2d 内容,您将获得整体缓慢的性能。

于 2012-11-26T06:42:40.423 回答
0

唯一的方法是从 stage3D 实例的底层获取渲染的位图并将其显示在您的 displayList 之上.. 但它应该在每一帧上工作,这会影响性能很多,当然没有鼠标交互.. . 此解决方案仅适用于在 stage3D 上显示渲染场景 .. 只是一个模拟

于 2012-11-27T09:49:05.007 回答