mirror of
https://github.com/ZDoom/qzdoom-gpl.git
synced 2024-11-28 06:32:29 +00:00
Added INTERPOLATE actor flag, allowing the previously reverted interpolation code to be toggleable.
This commit is contained in:
parent
04988a331b
commit
39fcea9176
3 changed files with 7 additions and 2 deletions
|
@ -424,6 +424,7 @@ enum ActorRenderFlag
|
||||||
RF_MASKROTATION = 0x00200000, // [MC] Only draw the actor when viewed from a certain angle range.
|
RF_MASKROTATION = 0x00200000, // [MC] Only draw the actor when viewed from a certain angle range.
|
||||||
RF_ABSMASKANGLE = 0x00400000, // [MC] The mask rotation does not offset by the actor's angle.
|
RF_ABSMASKANGLE = 0x00400000, // [MC] The mask rotation does not offset by the actor's angle.
|
||||||
RF_ABSMASKPITCH = 0x00800000, // [MC] The mask rotation does not offset by the actor's pitch.
|
RF_ABSMASKPITCH = 0x00800000, // [MC] The mask rotation does not offset by the actor's pitch.
|
||||||
|
RF_INTERPOLATE = 0x01000000, // [MC] Allow interpolation of the actor's angle, pitch and roll.
|
||||||
|
|
||||||
RF_FORCEYBILLBOARD = 0x10000, // [BB] OpenGL only: draw with y axis billboard, i.e. anchored to the floor (overrides gl_billboard_mode setting)
|
RF_FORCEYBILLBOARD = 0x10000, // [BB] OpenGL only: draw with y axis billboard, i.e. anchored to the floor (overrides gl_billboard_mode setting)
|
||||||
RF_FORCEXYBILLBOARD = 0x20000, // [BB] OpenGL only: draw with xy axis billboard, i.e. unanchored (overrides gl_billboard_mode setting)
|
RF_FORCEXYBILLBOARD = 0x20000, // [BB] OpenGL only: draw with xy axis billboard, i.e. unanchored (overrides gl_billboard_mode setting)
|
||||||
|
|
|
@ -737,8 +737,11 @@ void GLSprite::Process(AActor* thing, sector_t * sector, int thruportal)
|
||||||
int clipres = GLRenderer->mClipPortal->ClipPoint(thingpos);
|
int clipres = GLRenderer->mClipPortal->ClipPoint(thingpos);
|
||||||
if (clipres == GLPortal::PClip_InFront) return;
|
if (clipres == GLPortal::PClip_InFront) return;
|
||||||
}
|
}
|
||||||
// disabled because almost none of the actual game code is even remotely prepared for this. Sorry for the few cases where it may be desired, but the overall effect is too bad.
|
// disabled because almost none of the actual game code is even remotely prepared for this. If desired, use the INTERPOLATE flag.
|
||||||
Angles = thing->Angles;// InterpolatedAngles(r_TicFracF);
|
if (thing->renderflags & RF_INTERPOLATE)
|
||||||
|
Angles = thing->InterpolatedAngles(r_TicFracF);
|
||||||
|
else
|
||||||
|
Angles = thing->Angles;
|
||||||
|
|
||||||
player_t *player = &players[consoleplayer];
|
player_t *player = &players[consoleplayer];
|
||||||
FloatRect r;
|
FloatRect r;
|
||||||
|
|
|
@ -326,6 +326,7 @@ static FFlagDef ActorFlagDefs[]=
|
||||||
DEFINE_FLAG(RF, ABSMASKPITCH, AActor, renderflags),
|
DEFINE_FLAG(RF, ABSMASKPITCH, AActor, renderflags),
|
||||||
DEFINE_FLAG(RF, XFLIP, AActor, renderflags),
|
DEFINE_FLAG(RF, XFLIP, AActor, renderflags),
|
||||||
DEFINE_FLAG(RF, YFLIP, AActor, renderflags),
|
DEFINE_FLAG(RF, YFLIP, AActor, renderflags),
|
||||||
|
DEFINE_FLAG(RF, INTERPOLATE, AActor, renderflags),
|
||||||
|
|
||||||
// Bounce flags
|
// Bounce flags
|
||||||
DEFINE_FLAG2(BOUNCE_Walls, BOUNCEONWALLS, AActor, BounceFlags),
|
DEFINE_FLAG2(BOUNCE_Walls, BOUNCEONWALLS, AActor, BounceFlags),
|
||||||
|
|
Loading…
Reference in a new issue