我正在使用SDL2,现在在带有iPhone 5S的iOS上存在一些问题。
创建窗口时,SDL将创建一个具有320x568像素分辨率的窗口。如果通过创建窗口使用SDL_WINDOW_ALLOW_HDPI
标志,则可以绘制显示的每个像素(640x1136),但是如果使用SDL_GetWindowSize
函数获得屏幕尺寸,则可以得到320x568 px的分辨率。
我试图获取可用的显示模式,但是找不到640x1136 px的显示模式。
我究竟做错了什么?
最佳答案
如果您在SDL_GetWindowSize
方法说明中看到,这将为您提供窗口大小,但是,如果您使用SDL_WINDOW_ALLOW_HDPI
,则可能与实际大小有所不同。
如果窗口是在具有高dpi支持的平台(例如iOS或OS X)上使用SDL_WINDOW_ALLOW_HIGHDPI创建的,则屏幕坐标中的窗口大小可能与像素大小不同。
要获得以像素为单位的实际窗口大小,可以使用SDL_GL_GetDrawableSize()
或SDL_GetRendererOutputSize()
。
关于ios - 带有SDL2的iOS Retina显示屏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39397752/