]> git.lizzy.rs Git - dragonfireclient.git/commitdiff
GLES fixes (#11205)
authorsfan5 <sfan5@live.de>
Sun, 18 Apr 2021 14:07:13 +0000 (16:07 +0200)
committerGitHub <noreply@github.com>
Sun, 18 Apr 2021 14:07:13 +0000 (16:07 +0200)
* Consistently set float precision for GLES

* Enable DPI scaling on Windows+GLES

src/client/renderingengine.cpp
src/client/shader.cpp

index 4f59bbae3dc49f4bbaf162497c2da7cae2503e51..d2d136a61f5e688f4c9b1eabdc42dc0882fae7a1 100644 (file)
@@ -335,6 +335,10 @@ static bool getWindowHandle(irr::video::IVideoDriver *driver, HWND &hWnd)
        case video::EDT_DIRECT3D9:
                hWnd = reinterpret_cast<HWND>(exposedData.D3D9.HWnd);
                break;
+#if ENABLE_GLES
+       case video::EDT_OGLES1:
+       case video::EDT_OGLES2:
+#endif
        case video::EDT_OPENGL:
                hWnd = reinterpret_cast<HWND>(exposedData.OpenGLWin32.HWnd);
                break;
index b3e4911f49bd9ee061ccb7d31c8e62c02a8f61bb..58946b90f5d79f4f617b19fea7453364c449ecce 100644 (file)
@@ -579,8 +579,10 @@ ShaderInfo ShaderSource::generateShader(const std::string &name,
        if (use_gles) {
                shaders_header << R"(
                        #version 100
-                       )";
+               )";
                vertex_header = R"(
+                       precision mediump float;
+
                        uniform highp mat4 mWorldView;
                        uniform highp mat4 mWorldViewProj;
                        uniform mediump mat4 mTexture;
@@ -592,17 +594,17 @@ ShaderInfo ShaderSource::generateShader(const std::string &name,
                        attribute mediump vec3 inVertexNormal;
                        attribute mediump vec4 inVertexTangent;
                        attribute mediump vec4 inVertexBinormal;
-                       )";
+               )";
                fragment_header = R"(
                        precision mediump float;
-                       )";
+               )";
        } else {
                shaders_header << R"(
                        #version 120
                        #define lowp
                        #define mediump
                        #define highp
-                       )";
+               )";
                vertex_header = R"(
                        #define mWorldView gl_ModelViewMatrix
                        #define mWorldViewProj gl_ModelViewProjectionMatrix
@@ -615,7 +617,7 @@ ShaderInfo ShaderSource::generateShader(const std::string &name,
                        #define inVertexNormal gl_Normal
                        #define inVertexTangent gl_MultiTexCoord1
                        #define inVertexBinormal gl_MultiTexCoord2
-                       )";
+               )";
        }
 
        bool use_discard = use_gles;