void StarMesh::InitShape() { CreateVertices(); CreateIndices(); CreateNormals(); CreateTextureCoords(); }
CMistyFog::CMistyFog(int index, CWorldEffect *owner, bool buddy) : CWorldEffect(owner), mSize(0.05f*2.0f), mMinSize(0.05f*3.0f), mMaxSize(0.15f*2.0f), mAlpha(1.0f), mAlphaFade(false), mBuddy(buddy) { char name[1024]; unsigned char *pos; int x, y; if (mBuddy) { mRendering = false; // mImage = ((CMistyFog *)owner)->GetImage(); mData = ((CMistyFog *)owner)->GetData(); mWidth = ((CMistyFog *)owner)->GetWidth(); mHeight = ((CMistyFog *)owner)->GetHeight(); } else { sprintf(name, "gfx/world/fog%d.tga", index); R_LoadImage( name, &mData, &mWidth, &mHeight ); if (!mData) { ri.Error (ERR_DROP, "Could not load %s", name); } pos = mData; for(y=0;y<mHeight;y++) { for(x=0;x<mWidth;x++) { pos[3] = pos[0]; pos += 4; } } // mImage = R_CreateImage(name, mData, mWidth, mHeight, false, true, false, GL_REPEAT); mRendering = true; AddSlave(new CMistyFog(index, this, true)); } mSpeed = 90.0 + FloatRand() * 20.0; CreateTextureCoords(); }
void CMistyFog::ParmUpdate(CWorldEffect *effect, int which) { CWorldEffect::ParmUpdate(effect, which); switch(which) { case MISTYFOG_RENDERING: if (effect == mOwner || effect == mSlave) { mAlpha = 0.0; mAlphaDirection = 0.025f; mAlphaFade = true; CreateTextureCoords(); mRendering = true; } break; } }