| 142 | const GLfloat gTriangleVertices[] = {0.0f, 0.5f, -0.5f, -0.5f, 0.5f, -0.5f}; |
| 143 | |
| 144 | void renderFrame() { |
| 145 | static float grey; |
| 146 | grey += 0.01f; |
| 147 | if (grey > 1.0f) { |
| 148 | grey = 0.0f; |
| 149 | } |
| 150 | glClearColor(grey, grey, grey, 1.0f); |
| 151 | checkGlError("glClearColor"); |
| 152 | glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT); |
| 153 | checkGlError("glClear"); |
| 154 | |
| 155 | glUseProgram(gProgram); |
| 156 | checkGlError("glUseProgram"); |
| 157 | |
| 158 | glVertexAttribPointer(gvPositionHandle, 2, GL_FLOAT, GL_FALSE, 0, |
| 159 | gTriangleVertices); |
| 160 | checkGlError("glVertexAttribPointer"); |
| 161 | glEnableVertexAttribArray(gvPositionHandle); |
| 162 | checkGlError("glEnableVertexAttribArray"); |
| 163 | glDrawArrays(GL_TRIANGLES, 0, 3); |
| 164 | checkGlError("glDrawArrays"); |
| 165 | } |
| 166 | |
| 167 | void Init(JNIEnv*, jclass, jint width, jint height) { |
| 168 | setupGraphics(width, height); |