OSDN Git Service

[Qt][OpenGL] Correctness texture magnitude calculating.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Wed, 29 Jan 2020 19:16:08 +0000 (04:16 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Wed, 29 Jan 2020 19:16:08 +0000 (04:16 +0900)
source/src/qt/gui/gl3/qt_glutil_gl3_0.cpp
source/src/qt/gui/gl4_5/qt_glutil_gl4_5.cpp
source/src/qt/gui/gles2/qt_glutil_gles_2.cpp

index a7ceefd..a28843e 100644 (file)
@@ -1490,18 +1490,22 @@ void GLDraw_3_0::do_set_texture_size(QImage *p, int w, int h)
                vertexFormat[3].z = -0.9f;
 
                vertexFormat[0].s = 0.0f;
-               //vertexFormat[0].t = (float)h / ih;
-               //vertexFormat[1].s = (float)w / iw;
-               //vertexFormat[1].t = (float)h / ih;
-               //vertexFormat[2].s = (float)w / iw;
-               vertexFormat[0].t = 1.0f;
-               vertexFormat[1].s = 1.0f;
-               vertexFormat[1].t = 1.0f;
-               vertexFormat[2].s = 1.0f;
+               vertexFormat[0].t = (float)h / ih;
+               vertexFormat[1].s = (float)w / iw;
+               vertexFormat[1].t = (float)h / ih;
+               vertexFormat[2].s = (float)w / iw;
                vertexFormat[2].t = 0.0f;
                vertexFormat[3].s = 0.0f;
                vertexFormat[3].t = 0.0f;
                
+//             vertexFormat[0].t = 1.0f;
+//             vertexFormat[1].s = 1.0f;
+//             vertexFormat[1].t = 1.0f;
+//             vertexFormat[2].s = 1.0f;
+//             vertexFormat[2].t = 0.0f;
+//             vertexFormat[3].s = 0.0f;
+//             vertexFormat[3].t = 0.0f;
+               
                setNormalVAO(main_pass->getShader(), main_pass->getVAO(),
                                         main_pass->getVertexBuffer(),
                                         vertexFormat, 4);
index 652ce66..b52570a 100644 (file)
@@ -1581,14 +1581,14 @@ void GLDraw_4_5::do_set_texture_size(QImage *p, int w, int h)
                vertexFormat[3].z = -0.9f;
 
                vertexFormat[0].s = 0.0f;
-               //vertexFormat[0].t = (float)h / ih;
-               //vertexFormat[1].s = (float)w / iw;
-               //vertexFormat[1].t = (float)h / ih;
-               //vertexFormat[2].s = (float)w / iw;
-               vertexFormat[0].t = 1.0f;
-               vertexFormat[1].s = 1.0f;
-               vertexFormat[1].t = 1.0f;
-               vertexFormat[2].s = 1.0f;
+               vertexFormat[0].t = (float)h / ih;
+               vertexFormat[1].s = (float)w / iw;
+               vertexFormat[1].t = (float)h / ih;
+               vertexFormat[2].s = (float)w / iw;
+               //vertexFormat[0].t = 1.0f;
+               //vertexFormat[1].s = 1.0f;
+               //vertexFormat[1].t = 1.0f;
+               //vertexFormat[2].s = 1.0f;
                vertexFormat[2].t = 0.0f;
                vertexFormat[3].s = 0.0f;
                vertexFormat[3].t = 0.0f;
index 138e3ad..78704e5 100644 (file)
@@ -1440,14 +1440,14 @@ void GLDraw_ES_2::do_set_texture_size(QImage *p, int w, int h)
                vertexFormat[3].z = -0.9f;
 
                vertexFormat[0].s = 0.0f;
-               //vertexFormat[0].t = (float)h / ih;
-               //vertexFormat[1].s = (float)w / iw;
-               //vertexFormat[1].t = (float)h / ih;
-               //vertexFormat[2].s = (float)w / iw;
-               vertexFormat[0].t = 1.0f;
-               vertexFormat[1].s = 1.0f;
-               vertexFormat[1].t = 1.0f;
-               vertexFormat[2].s = 1.0f;
+               vertexFormat[0].t = (float)h / ih;
+               vertexFormat[1].s = (float)w / iw;
+               vertexFormat[1].t = (float)h / ih;
+               vertexFormat[2].s = (float)w / iw;
+               //vertexFormat[0].t = 1.0f;
+               //vertexFormat[1].s = 1.0f;
+               //vertexFormat[1].t = 1.0f;
+               //vertexFormat[2].s = 1.0f;
                vertexFormat[2].t = 0.0f;
                vertexFormat[3].s = 0.0f;
                vertexFormat[3].t = 0.0f;