我正在尝试使用monotouch为iOS创建一个OpenGL应用程序。我需要该应用程序支持480x960的新视网膜显示分辨率,以及3GS及更早版本的240x320。
开箱即用的OpenGL示例解决方案不支持此功能。当我在iPhone 4上运行时,它只显示模糊的,升级的240x320版本的OpenGL视图。
令人惊讶的是,谷歌有助于OpenGL和视网膜,以及单点和视网膜,但不支持OpenGL和monotouch和视网膜。我尝试使用EAGLView和主UIWindow的ContentScaleFactor进行检查和调整无济于事。
奇怪的是,相关文献表明,两者的ContentScaleFactor都是1.0而不是2.0。此外,UIWindow的Screen属性在运行时的边界为240x320,即使它在iPhone 4视网膜显示器上运行。
有人知道如何使用OpenGL在monotouch上正确支持视网膜吗?
答案 0 :(得分:1)
Screen
对象也应该有Scale
属性,在视网膜显示器上应该等于2.0。
例如,MonoGame明确地将视图的ContentScaleFactor
设置为MainScreen.Scale
(https://github.com/mono/MonoGame/blob/master/MonoGame.Framework/iOS/IOSGameWindow.cs#L109)。