- Texture animation improvements:
* Animations are now millisecond-accurate, so delays in ANIMDEFS can have
fractional parts.
* Cleaned up the animation code and moved it into r_anim.cpp.
* Blood's oscillating texture animations are now available for use by actual
supported games by adding the word "oscillate" after a "range" definition
in ANIMDEFS.
* Not exactly texture animation, but it's handled in the same function as
texture animations: Scrolling skies also have millisecond precision.
SVN r125 (trunk)
This commit is contained in:
parent
3f51b80cac
commit
6863938e67
10 changed files with 826 additions and 648 deletions
|
|
@ -865,12 +865,11 @@ static void ParseMapInfoLower (MapInfoHandler *handlers,
|
|||
SC_MustGetFloat (); // get scroll speed
|
||||
if (HexenHack)
|
||||
{
|
||||
*((fixed_t *)(info + handler->data2)) = sc_Number << 8;
|
||||
}
|
||||
else
|
||||
{
|
||||
*((fixed_t *)(info + handler->data2)) = (fixed_t)(sc_Float * 65536.0f);
|
||||
sc_Float /= 256;
|
||||
}
|
||||
// Sky scroll speed is specified as pixels per tic, but we
|
||||
// want pixels per millisecond.
|
||||
*((float *)(info + handler->data2)) = sc_Float * 35 / 1000;
|
||||
break;
|
||||
|
||||
case MITYPE_SETFLAG:
|
||||
|
|
@ -1774,7 +1773,6 @@ void G_DoLoadLevel (int position, bool autosave)
|
|||
// [RH] Fetch sky parameters from level_locals_t.
|
||||
sky1texture = TexMan.GetTexture (level.skypic1, FTexture::TEX_Wall, FTextureManager::TEXMAN_Overridable);
|
||||
sky2texture = TexMan.GetTexture (level.skypic2, FTexture::TEX_Wall, FTextureManager::TEXMAN_Overridable);
|
||||
sky1pos = sky2pos = 0;
|
||||
|
||||
// [RH] Set up details about sky rendering
|
||||
R_InitSkyMap ();
|
||||
|
|
@ -2420,7 +2418,6 @@ void G_SerializeLevel (FArchive &arc, bool hubLoad)
|
|||
strncpy (level.skypic2, arc.ReadName(), 8);
|
||||
sky1texture = TexMan.GetTexture (level.skypic1, FTexture::TEX_Wall, FTextureManager::TEXMAN_Overridable);
|
||||
sky2texture = TexMan.GetTexture (level.skypic2, FTexture::TEX_Wall, FTextureManager::TEXMAN_Overridable);
|
||||
sky1pos = sky2pos = 0;
|
||||
R_InitSkyMap ();
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue