C# OpenGL单点触摸游戏中的定位
在我的单触游戏中寻找正确的方向处理方法(尽管Obj-C中的答案很好) 我们希望支持LandscapeLeft和LandscapeRight方向,但保留本机操作系统方向,以便卷弹出窗口和通知中心面板不会颠倒 这相当令人困惑,因为有几种方法可以实现我们所需要的:C# OpenGL单点触摸游戏中的定位,c#,iphone,ios,xamarin.ios,C#,Iphone,Ios,Xamarin.ios,在我的单触游戏中寻找正确的方向处理方法(尽管Obj-C中的答案很好) 我们希望支持LandscapeLeft和LandscapeRight方向,但保留本机操作系统方向,以便卷弹出窗口和通知中心面板不会颠倒 这相当令人困惑,因为有几种方法可以实现我们所需要的: Info.plist设置 UIViewController中的应旋转覆盖 设置UIDevice.CurrentDevice.Orientation 或者直接挂接到NSNotificationCenter并使用OpenGL执行旋转,转换触摸事
我希望获得旋转,就像愤怒的小鸟在我的应用程序中工作一样。我在项目目标设置中设置了支持的方向,但我只旋转视图,没有OpenGL
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}
我面前没有Mac电脑可以尝试,但我觉得我尝试了这个选项,并且在游戏缩放方面遇到了问题。我注意到整个场景中的像素化,就好像所有的东西都被拉伸了一样(也许在我的游戏场景中,backbuffer是人像)。你注意到游戏中的这个问题了吗?我在UIView中将ContentMode设置为TopLeft后,你的方法运行得非常好。在调用GL.Ortho和GL.Viewport时,我还必须反转一些坐标。我将不得不等待,看看是否真的有任何性能问题。我确实有一次出现了缩放问题-这是由于屏幕外的移动和设备试图重新缩放以保持屏幕上。我允许设置屏幕进行缩放,但没有将其切换回游戏屏幕以防止其出现。