Mar*_*ark 8 scaling android opengl-es android-ndk hdpi
我有一个800x480 res的设备.当我创建GLSurfaceView时,我onSurfaceChanged接到一个533x320 的呼叫(显然应用了1.5 HDPI修改器)并且表面被放大了.所以当我画1像素粗线看起来真的很糟糕,我不能有像素完美的渲染.
我想要的是原始分辨率表面(800x480).
View以这种方式创建(如在NDK OpenGL示例中),在Activity中onCreate:
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON |
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
view = new MyGLSurfaceView(this);
setContentView(view);
Run Code Online (Sandbox Code Playgroud)
我不使用任何布局等.
我找到了解决方案:添加时
<uses-sdk android:targetSdkVersion="8" android:minSdkVersion="8"/>
Run Code Online (Sandbox Code Playgroud)
到AndroidManifest.xml,我得到了适当的分辨率。老实说,经过几年与iOS的合作,Android对我来说是一个非常奇怪的平台...
在此找到解决方案:MonoDroid应用程序未使用正确的密度绘制