using now 3d asteroids
parent
5c58595f35
commit
419ebc8783
|
@ -269,20 +269,6 @@ void View::Draw() {
|
|||
DrawWorld ();
|
||||
}
|
||||
|
||||
glPushMatrix();
|
||||
|
||||
glEnable (GL_LIGHTING);
|
||||
glEnable (GL_LIGHT0);
|
||||
|
||||
glRotatef (90, 1., 0., 0.);
|
||||
// glScalef (10., 10., 10.);
|
||||
DrawOBJModel (mAsteroidModel);
|
||||
|
||||
glDisable (GL_LIGHT0);
|
||||
glDisable (GL_LIGHTING);
|
||||
|
||||
glPopMatrix();
|
||||
|
||||
DrawUi ();
|
||||
|
||||
// Perform post-Draw actions
|
||||
|
@ -677,6 +663,8 @@ void View::DrawUiLevelIntro() {
|
|||
GetModel()->SetPlayerLives(100);
|
||||
}
|
||||
|
||||
glEnable(GL_BLEND);
|
||||
|
||||
stringstream level_info_stream;
|
||||
level_info_stream << "Level " << GetModel()->GetCurrentLevelIndex() + 1;
|
||||
|
||||
|
@ -760,6 +748,8 @@ void View::DrawUiLevelIntro() {
|
|||
level_author_dest_y - Engine::GetTimer("LevelIntroLevelAuthor") * level_author_delta_y
|
||||
);
|
||||
|
||||
glDisable(GL_BLEND);
|
||||
|
||||
if (Engine::CheckTimer("LevelIntroLevelStart")) {
|
||||
if(Engine::GUI::Button (1, "Start", (screen_right - button_width) * 0.5, screen_bottom * 0.5 + 180, button_width, button_height)) {
|
||||
PopViewState();
|
||||
|
@ -1661,8 +1651,24 @@ void View::DrawShip (ShipEntity *ship) {
|
|||
}
|
||||
|
||||
void View::DrawAsteroid (AsteroidEntity *asteroid) {
|
||||
mAsteroidSprite.SetScale (2. * asteroid->mPhysicState->mRadius / mAsteroidSprite.GetWidth());
|
||||
mAsteroidSprite.DrawAt(0., 0., 0.);
|
||||
// mAsteroidSprite.SetScale (2. * asteroid->mPhysicState->mRadius / mAsteroidSprite.GetWidth());
|
||||
// mAsteroidSprite.DrawAt(0., 0., 0.);
|
||||
|
||||
glPushMatrix();
|
||||
|
||||
glEnable (GL_LIGHTING);
|
||||
glEnable (GL_LIGHT0);
|
||||
|
||||
// glRotatef (90, 1., 0., 0.);
|
||||
float scale = 1.8 * asteroid->mPhysicState->mRadius;
|
||||
glScalef (scale, scale, scale);
|
||||
DrawOBJModel (mAsteroidModel);
|
||||
|
||||
glDisable (GL_LIGHT0);
|
||||
glDisable (GL_LIGHTING);
|
||||
|
||||
glPopMatrix();
|
||||
|
||||
|
||||
#ifdef DRAW_BOUNDARIES
|
||||
glColor3f (1., 1., 1.);
|
||||
|
|
|
@ -651,9 +651,6 @@ void ViewBase::DrawOBJModelShaded (OBJModelPtr obj_model) {
|
|||
std::map<std::string, GLuint>::const_iterator iter;
|
||||
GLuint texture = 0;
|
||||
|
||||
glEnable(GL_BLEND);
|
||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
||||
for (int i = 0; i < obj_model->getNumberOfMeshes(); ++i)
|
||||
{
|
||||
pMesh = &obj_model->getMesh(i);
|
||||
|
@ -721,7 +718,7 @@ void ViewBase::DrawOBJModelShaded (OBJModelPtr obj_model) {
|
|||
glEnable(GL_TEXTURE_2D);
|
||||
glBindTexture(GL_TEXTURE_2D, texture);
|
||||
} else {
|
||||
LogMessage ("bumpmap %s not found", pMaterial->bumpMapFilename.c_str());
|
||||
LogError ("bumpmap %s not found", pMaterial->bumpMapFilename.c_str());
|
||||
}
|
||||
|
||||
// Bind the color map texture.
|
||||
|
@ -735,7 +732,7 @@ void ViewBase::DrawOBJModelShaded (OBJModelPtr obj_model) {
|
|||
if (iter != mGLTextures.end()) {
|
||||
texture = iter->second;
|
||||
} else {
|
||||
LogMessage ("color map %s not found", pMaterial->colorMapFilename.c_str());
|
||||
LogError ("color map %s not found", pMaterial->colorMapFilename.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -812,17 +809,13 @@ void ViewBase::DrawOBJModelShaded (OBJModelPtr obj_model) {
|
|||
|
||||
// as we might be using multiple textures (at least for the normal mapping
|
||||
// case) we have to disable both textures
|
||||
glActiveTexture(GL_TEXTURE0);
|
||||
glBindTexture(GL_TEXTURE_2D, 0);
|
||||
|
||||
glActiveTexture(GL_TEXTURE1);
|
||||
glBindTexture(GL_TEXTURE_2D, 0);
|
||||
|
||||
glUseProgram(0);
|
||||
glDisable(GL_BLEND);
|
||||
glActiveTexture(GL_TEXTURE0);
|
||||
glBindTexture(GL_TEXTURE_2D, 0);
|
||||
|
||||
// disable texture drawing
|
||||
// glDisable(GL_TEXTURE_2D);
|
||||
glUseProgram(0);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue