Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEnrico Turri <enricoturri@seznam.cz>2018-06-22 16:11:04 +0300
committerEnrico Turri <enricoturri@seznam.cz>2018-06-22 16:11:04 +0300
commitde540de9aa321989eff17953d6e5ae84595f1526 (patch)
treed2eabf4007794498490a7044952a9042b872d476 /xs/src/slic3r/GUI/GLTexture.cpp
parent15c69a90ecf524f7f03ec9857772895c3d1e6101 (diff)
5th Attempt to fix texture rendering on OpenGL 1.1 cards
Diffstat (limited to 'xs/src/slic3r/GUI/GLTexture.cpp')
-rw-r--r--xs/src/slic3r/GUI/GLTexture.cpp28
1 files changed, 23 insertions, 5 deletions
diff --git a/xs/src/slic3r/GUI/GLTexture.cpp b/xs/src/slic3r/GUI/GLTexture.cpp
index 88d949c7b..a1211ff87 100644
--- a/xs/src/slic3r/GUI/GLTexture.cpp
+++ b/xs/src/slic3r/GUI/GLTexture.cpp
@@ -72,7 +72,6 @@ bool GLTexture::load_from_file(const std::string& filename, bool generate_mipmap
}
// sends data to gpu
-
::glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
::glGenTextures(1, &m_id);
::glBindTexture(GL_TEXTURE_2D, m_id);
@@ -131,16 +130,35 @@ void GLTexture::render_texture(unsigned int tex_id, float left, float right, flo
{
::glEnable(GL_BLEND);
::glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+
::glEnable(GL_TEXTURE_2D);
::glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
::glBindTexture(GL_TEXTURE_2D, (GLuint)tex_id);
+//###############################################################################################################################
+ ::glBegin(GL_TRIANGLES);
+ ::glTexCoord2f(0.0f, 1.0f); ::glVertex2f(left, bottom);
+ ::glTexCoord2f(1.0f, 1.0f); ::glVertex2f(right, bottom);
+ ::glTexCoord2f(1.0f, 0.0f); ::glVertex2f(right, top);
+
+ ::glTexCoord2f(1.0f, 0.0f); ::glVertex2f(right, top);
+ ::glTexCoord2f(0.0f, 0.0f); ::glVertex2f(left, top);
+ ::glTexCoord2f(0.0f, 1.0f); ::glVertex2f(left, bottom);
+
+/*
::glBegin(GL_QUADS);
- ::glTexCoord2f(0.0f, 1.0f); ::glVertex3f(left, bottom, 0.0f);
- ::glTexCoord2f(1.0f, 1.0f); ::glVertex3f(right, bottom, 0.0f);
- ::glTexCoord2f(1.0f, 0.0f); ::glVertex3f(right, top, 0.0f);
- ::glTexCoord2f(0.0f, 0.0f); ::glVertex3f(left, top, 0.0f);
+ ::glTexCoord2f(0.0f, 1.0f); ::glVertex2f(left, bottom);
+ ::glTexCoord2f(1.0f, 1.0f); ::glVertex2f(right, bottom);
+ ::glTexCoord2f(1.0f, 0.0f); ::glVertex2f(right, top);
+ ::glTexCoord2f(0.0f, 0.0f); ::glVertex2f(left, top);
+*/
+
+// ::glTexCoord2f(0.0f, 1.0f); ::glVertex3f(left, bottom, 0.0f);
+// ::glTexCoord2f(1.0f, 1.0f); ::glVertex3f(right, bottom, 0.0f);
+// ::glTexCoord2f(1.0f, 0.0f); ::glVertex3f(right, top, 0.0f);
+// ::glTexCoord2f(0.0f, 0.0f); ::glVertex3f(left, top, 0.0f);
+//###############################################################################################################################
::glEnd();
::glBindTexture(GL_TEXTURE_2D, 0);