starting game UI

This commit is contained in:
Dmitri K 2016-11-18 22:31:24 -05:00
parent b95b9b628c
commit ad860abf7d
2 changed files with 37 additions and 2 deletions

View File

@ -167,6 +167,8 @@ void Viewer::draw()
modelStack.push(modelViewMatrix); modelStack.push(modelViewMatrix);
root.accept(*this); root.accept(*this);
drawUi();
sunRotate.setToIdentity(); sunRotate.setToIdentity();
//float rotAngle = (frame * angle_mult) % 360; //float rotAngle = (frame * angle_mult) % 360;
} }
@ -822,6 +824,37 @@ void Viewer::startAniumation(){}
void Viewer::stopAnimation(){} void Viewer::stopAnimation(){}
void Viewer::drawUi(){
glCullFace(GL_FRONT);
QMatrix4x4 projectionMatrix;
QMatrix4x4 uiViewMatrix;
uiViewMatrix.translate(0, -1.5, -4);
camera()->getProjectionMatrix(projectionMatrix);
float colorMult = 0.2 + std::fabs(0.8 * cos(std::fmod(angle_mult * frame + 300, 360) / 360 * M_PI));
m_program->setUniformValue(m_isSkyLoc, false);
m_program->setUniformValue(m_drawTextLoc, true);
m_program->setUniformValue(m_isLightLoc, true);
glBindVertexArray(m_VAOs[VAO_Cube]);
uiViewMatrix.scale(.25, .25, .01);
uiViewMatrix.translate(-TEX_LENGTH/2.0, 0, 0);
for(int i = 0; i<TEX_LENGTH; i++)
{
TexturePrograms[i]->bind();
m_program->setUniformValue(m_mvMatrixLocation, uiViewMatrix);
uiViewMatrix.translate(1.2, 0, 0);
glDrawArrays(GL_TRIANGLES, 0, 36);
}
}
PickedGeom Viewer::pickGeom(int x, int y){ PickedGeom Viewer::pickGeom(int x, int y){
makeCurrent(); makeCurrent();

View File

@ -92,6 +92,8 @@ private:
void startAniumation(); void startAniumation();
void stopAnimation(); void stopAnimation();
void drawUi();
// shader switching variables and constants; // shader switching variables and constants;
QOpenGLShaderProgram *colorPickerShaderProgram; QOpenGLShaderProgram *colorPickerShaderProgram;
QOpenGLShaderProgram *textureRenderShaderprogram; QOpenGLShaderProgram *textureRenderShaderprogram;
@ -162,10 +164,10 @@ private:
}; };
QString TexturePaths[TEX_LENGTH] = { QString TexturePaths[TEX_LENGTH] = {
"src/data/dry_gound.jpg", "src/data/dry_ground.jpg",
"src/data/granite_floor.jpg", "src/data/granite_floor.jpg",
"src/data/grass.jpg", "src/data/grass.jpg",
"src/data/limestone_walls.jpg", "src/data/limestone_wall.jpg",
"src/data/pierre_bouchardee.jpg", "src/data/pierre_bouchardee.jpg",
"src/data/wood_floor.jpg" "src/data/wood_floor.jpg"
}; };