MCPcopy Create free account
hub / github.com/carlonluca/pot / initializeGL

Method initializeGL

piomxtextures_src/glwidget.cpp:112–161  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

110}
111
112void GLWidget::initializeGL()
113{
114 makeObject();
115
116 glEnable(GL_DEPTH_TEST);
117 glEnable(GL_CULL_FACE);
118#ifndef QT_OPENGL_ES_2
119 glEnable(GL_TEXTURE_2D);
120#endif
121
122#ifdef QT_OPENGL_ES_2
123
124#define PROGRAM_VERTEX_ATTRIBUTE 0
125#define PROGRAM_TEXCOORD_ATTRIBUTE 1
126
127 QGLShader *vshader = new QGLShader(QGLShader::Vertex, this);
128 const char *vsrc =
129 "attribute highp vec4 vertex;\n"
130 "attribute mediump vec4 texCoord;\n"
131 "varying mediump vec4 texc;\n"
132 "uniform mediump mat4 matrix;\n"
133 "void main(void)\n"
134 "{\n"
135 " gl_Position = matrix * vertex;\n"
136 " texc = texCoord;\n"
137 "}\n";
138 vshader->compileSourceCode(vsrc);
139
140 QGLShader *fshader = new QGLShader(QGLShader::Fragment, this);
141 const char *fsrc =
142 "uniform sampler2D texture;\n"
143 "varying mediump vec4 texc;\n"
144 "void main(void)\n"
145 "{\n"
146 " gl_FragColor = texture2D(texture, texc.st);\n"
147 "}\n";
148 fshader->compileSourceCode(fsrc);
149
150 program = new QGLShaderProgram(this);
151 program->addShader(vshader);
152 program->addShader(fshader);
153 program->bindAttributeLocation("vertex", PROGRAM_VERTEX_ATTRIBUTE);
154 program->bindAttributeLocation("texCoord", PROGRAM_TEXCOORD_ATTRIBUTE);
155 program->link();
156
157 program->bind();
158 program->setUniformValue("texture", 0);
159
160#endif
161}
162
163/*------------------------------------------------------------------------------
164| OpenMAXILTextureLoader::getEGLImage

Callers

nothing calls this directly

Calls 1

bindMethod · 0.80

Tested by

no test coverage detected