2

我已经在 SO 上多次看到这个问题,但没有一个与我正在寻找的完全匹配。

我想要做的就是将单个 GLKView 保持在纵向模式(停止设备的自动旋转方法以旋转这个单个视图)。

问题是我希望其他一切都由自动旋转功能处理。

由于 GLKView 是 UIView 的后代,我可以只应用一个变换来始终将其放回其原始方向,执行设备正在执行的相反旋转。

但是,这不起作用,因为我无法将变换直接应用于图层,因为 OpenGL 会给我一个错误。“无法制作完整的帧缓冲区对象 8cd6”(也许我必须在旋转后重建我的帧缓冲区对象或其他什么?)

提前致谢。

4

1 回答 1

0

我想最好的旋转处理是——暂停你的帧缓冲渲染,在旋转动画期间获取它的快照——旋转后取消暂停。

另一种方法是使用容器 ViewController :将您的 GLKView 设置为不会旋转的 ViewController 子级的唯一视图 - 为UIViewController旋转提供 API

于 2013-02-06T07:27:40.057 回答