//fills the asteroid model void FillAsteroidModel(void) { TEXTURE tex = CreateTexture(TEXTURE_PRE "asteroid.bmp"); if(!tex) ast_warn("Failed to load texture: " TEXTURE_PRE "asteroid.bmp" "\nThe asteroids will look dumb, but you can still play.\n"); g_asteroid_model = MakeAsteroid(tex); }
bool CBody::LoadGFX() { if (CGamePlay::UserAbortedLoad()) { CLog::Log(LOG_INFO,"Loading of body aborted by user."); return false; } CGamePlay::UpdateSplash(name); GLUquadricObj *quadric=NULL; quadric=gluNewQuadric(); if (quadric==NULL) { CLog::Log(LOG_ERROR,"Unable to load body - unable to create an OpenGL quadric."); return false; } gluQuadricNormals(quadric,GLU_SMOOTH); gluQuadricOrientation(quadric,GLU_OUTSIDE); gluQuadricDrawStyle(quadric,GLU_FILL); gluQuadricTexture(quadric,GL_TRUE); objects[0]=glGenLists(1); if (objects[0]==0) { CLog::Log(LOG_ERROR,"Unable to load body - unable to create an OpenGL display list."); gluDeleteQuadric(quadric); return false; } if (!LoadTextures()) { CLog::Log(LOG_ERROR,"Failed to load body textures."); gluDeleteQuadric(quadric); FreeGFX(); return false; } glNewList(objects[0],GL_COMPILE); { glPushAttrib(GL_ENABLE_BIT | GL_LIGHTING_BIT); CVideoBase::EnableMultisample(); if (type==star) MakeStar(quadric); if (type==planetoid) MakePlanetoid(quadric); if (type==rings) MakeRings(); if (type==asteroid) MakeAsteroid(); CVideoBase::DisableMultisample(); glPopAttrib(); } glEndList(); gluDeleteQuadric(quadric); quadric=NULL; return true; }