-1

是否可以在 UIViewController 对象中放置一个 EAGLView 对象并使 EAGLView 的背景透明以便查看背后的内容?

谢谢。

-更新 - -

我试过出现在这篇文章中。但是 EAGLView 的图层仍然看起来像一个黑色方块。:(

知道为什么这对我不起作用吗?

4

2 回答 2

2

openGLView.opaque = NO

还要注意 OpenGL 帧缓冲区的 Alpha 通道中的正确不透明度。并注意关于性能下降的 Tark 回答。

于 2012-02-23T10:25:22.003 回答
0

没有. EAGLView_ CAEAGLLayer但是,从文档中不建议这样做:

因为 OpenGL ES 渲染表面是使用 Core Animation 呈现给用户的,所以您应用到图层的任何效果和动画都会影响您渲染的 3D 内容。但是,为了获得最佳性能,请执行以下操作:

  • 将图层的不透明属性设置为 TRUE。
  • 设置图层边界以匹配显示的尺寸。
  • 确保图层未变形。
  • 避免在 CAEAGLLayer 对象之上绘制其他图层。如果您必须绘制其他非 OpenGL 内容,您可能会发现如果将透明 2D 内容放在 GL 内容之上并确保 OpenGL 内容是不透明的且未转换,则性能成本是可以接受的。
  • 在纵向显示上绘制横向内容时,您应该自己旋转内容,而不是使用 CAEAGLLayer 变换来旋转它。
于 2012-02-23T10:17:53.027 回答