diff --git a/stepmania/src/Sprite.cpp b/stepmania/src/Sprite.cpp index bcda91db0c..86ca44347a 100644 --- a/stepmania/src/Sprite.cpp +++ b/stepmania/src/Sprite.cpp @@ -47,12 +47,31 @@ Sprite::~Sprite() UnloadTexture(); } -bool Sprite::LoadBG( RageTextureID ID ) +RageTextureID Sprite::SongBGTexture( RageTextureID ID ) { ID.bMipMaps = true; + + /* Song backgrounds are, by definition, in the background, so there's no need to keep alpha. */ + ID.iAlphaBits = 0; + // Don't we want to dither 16 bit textures at least? // ID.bDither = true; - return Load(ID); + + return ID; +} + +RageTextureID Sprite::SongBannerTexture( RageTextureID ID ) +{ + /* Song banners often have HOT PINK color keys. */ + ID.bHotPinkColorKey = true; + ID.bDither = true; + return ID; +} + +/* deprecated */ +bool Sprite::LoadBG( RageTextureID ID ) +{ + return Load( SongBGTexture(ID) ); } bool Sprite::Load( RageTextureID ID ) diff --git a/stepmania/src/Sprite.h b/stepmania/src/Sprite.h index d654b36461..c3641fead0 100644 --- a/stepmania/src/Sprite.h +++ b/stepmania/src/Sprite.h @@ -29,6 +29,12 @@ public: virtual void Update( float fDeltaTime ); void UpdateAnimationState(); // take m_fSecondsIntoState, and move to a new state + /* Adjust texture properties for song backgrounds. */ + static RageTextureID SongBGTexture( RageTextureID ID ); + + /* Adjust texture properties for song banners. */ + static RageTextureID SongBannerTexture( RageTextureID ID ); + /* Just a convenience function; load an image that'll be used in the * background. */ virtual bool LoadBG( RageTextureID ID );