summaryrefslogtreecommitdiff
path: root/src/client
diff options
context:
space:
mode:
authorsfan5 <sfan5@live.de>2021-04-18 16:07:13 +0200
committerGitHub <noreply@github.com>2021-04-18 16:07:13 +0200
commit0077982fb78a8ed39a90da03c0898d12583fed64 (patch)
tree559c7a8c570aa517f191c07ccf327b3afde2119d /src/client
parent623f0a8613bd8677e259366a1d540deedb9d2302 (diff)
downloadminetest-0077982fb78a8ed39a90da03c0898d12583fed64.tar.gz
minetest-0077982fb78a8ed39a90da03c0898d12583fed64.tar.bz2
minetest-0077982fb78a8ed39a90da03c0898d12583fed64.zip
GLES fixes (#11205)
* Consistently set float precision for GLES * Enable DPI scaling on Windows+GLES
Diffstat (limited to 'src/client')
-rw-r--r--src/client/renderingengine.cpp4
-rw-r--r--src/client/shader.cpp12
2 files changed, 11 insertions, 5 deletions
diff --git a/src/client/renderingengine.cpp b/src/client/renderingengine.cpp
index 4f59bbae3..d2d136a61 100644
--- a/src/client/renderingengine.cpp
+++ b/src/client/renderingengine.cpp
@@ -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;
diff --git a/src/client/shader.cpp b/src/client/shader.cpp
index b3e4911f4..58946b90f 100644
--- a/src/client/shader.cpp
+++ b/src/client/shader.cpp
@@ -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;