在 2D GLKit/iOS 游戏中实现滚动时的最佳实践是什么?



我设置了一个很好的场景,一切都渲染得很好,现在我想平移世界,类似于我使用 scrollToPoint() 调整 UIScrollView 或 CAScrollLayer 的原点。 我已经确定我可以不断调整GLKBaseEffect上的投影矩阵来改变我所看到的,但我不确定这是否是合适的做事方式。

在其他代码中,我看到对glViewport之类的调用,这听起来可能是正确的使用方式,但我不知道这个调用实际上做了什么,所以也许它只是一个红鲱鱼。

做这样的事情的典型方法是什么?

为此,您必须使用转换矩阵。换句话说,投影和视图矩阵是场景中的假摄像机,因此,如果您想滚动场景,则必须将平移转换应用于世界(移动场景中的对象)或视图(移动摄像机)矩阵。

我向你推荐这本关于OpengLS ES的免费在线书籍:http://ofps.oreilly.com/titles/9780596804824/chmath.html

相关内容

最新更新