我正在移植一款我用C++和OpenGL/ES制作的跨平台程序到iPhone上。请注意,我对Objective-C一无所知...
我只是简要编辑了其中一个教程的Objective-C文件,以适当地初始化OpenGL,并为其他所有内容调用我的C++跨平台代码。
我的程序只能在横屏模式下运行,这就是为什么我将其设置为唯一支持的界面方向(在info.plist文件中)的原因。
我想知道的是,如何告诉OpenGL根据横屏模式旋转。目前,我添加了一个glRotate在绘制之前进行旋转,但这是个不好的做法。
另一件事:我试图将触摸转换为等效的鼠标点击坐标,使用另一种快速方法,我获得一个位于X轴80像素和Y轴80像素处的点。我又添加了另一个不好的修复(使用GlTranslatef)来解决这个问题,我获得了正确的坐标,但...颜色选择功能出现了问题。
明确一下,颜色选择在左侧的前160个像素上没有检测到任何东西(这是2 * 80和480-320,所以,嗯,99%的可能性是由于我的不好的代码引起的...)
处理这个问题的正确方法是什么?
我只是简要编辑了其中一个教程的Objective-C文件,以适当地初始化OpenGL,并为其他所有内容调用我的C++跨平台代码。
我的程序只能在横屏模式下运行,这就是为什么我将其设置为唯一支持的界面方向(在info.plist文件中)的原因。
我想知道的是,如何告诉OpenGL根据横屏模式旋转。目前,我添加了一个glRotate在绘制之前进行旋转,但这是个不好的做法。
另一件事:我试图将触摸转换为等效的鼠标点击坐标,使用另一种快速方法,我获得一个位于X轴80像素和Y轴80像素处的点。我又添加了另一个不好的修复(使用GlTranslatef)来解决这个问题,我获得了正确的坐标,但...颜色选择功能出现了问题。
明确一下,颜色选择在左侧的前160个像素上没有检测到任何东西(这是2 * 80和480-320,所以,嗯,99%的可能性是由于我的不好的代码引起的...)
处理这个问题的正确方法是什么?
return UIInterfaceOrientationIsLandscape(interfaceOrientation);
。 - Douglas