Stop reinventing lerp() all over the place.
This commit is contained in:
parent
f2af4dd14d
commit
65597c181a
10 changed files with 38 additions and 31 deletions
|
|
@ -1338,7 +1338,7 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
{
|
||||
let targ = trackers[i];
|
||||
if ( !targ ) continue;
|
||||
Vector3 ndc = SWWMUtility.ProjectPoint(projdata,ViewPos+level.Vec3Diff(ViewPos,targ.prevpos*(1.-fractic)+targ.pos*fractic));
|
||||
Vector3 ndc = SWWMUtility.ProjectPoint(projdata,ViewPos+level.Vec3Diff(ViewPos,SWWMUtility.LerpVector3(targ.prevpos,targ.pos,fractic)));
|
||||
if ( ndc.z >= 1. ) continue;
|
||||
Vector2 vpos = SWWMUtility.NDCToViewport(projdata,ndc);
|
||||
tag = targ.mytag;
|
||||
|
|
@ -1748,9 +1748,9 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
|
||||
private void DrawMapGrid( Vector2 basepos )
|
||||
{
|
||||
double zoomlevel = oldminimapzoom*(1.-FracTic)+minimapzoom*FracTic;
|
||||
double zoomlevel = SWWMUtility.Lerp(oldminimapzoom,minimapzoom,FracTic);
|
||||
double zoomview = MAPVIEWDIST*zoomlevel, zoomclip = CLIPDIST*zoomlevel;
|
||||
Vector2 cpos = players[consoleplayer].Camera.prev.xy*(1.-FracTic)+players[consoleplayer].Camera.pos.xy*FracTic;
|
||||
Vector2 cpos = SWWMUtility.LerpVector2(players[consoleplayer].Camera.prev.xy,players[consoleplayer].Camera.pos.xy,FracTic);
|
||||
// find farthest visible southwest grid point from camera position
|
||||
int maxlines = int(zoomview/64);
|
||||
Vector2 gpt = (cpos-(zoomview,zoomview))/128;
|
||||
|
|
@ -1850,9 +1850,9 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
|
||||
private void DrawMapLines( Vector2 basepos )
|
||||
{
|
||||
double zoomlevel = oldminimapzoom*(1.-FracTic)+minimapzoom*FracTic;
|
||||
double zoomlevel = SWWMUtility.Lerp(oldminimapzoom,minimapzoom,FracTic);
|
||||
double zoomview = MAPVIEWDIST*zoomlevel, zoomclip = CLIPDIST*zoomlevel;
|
||||
Vector2 cpos = players[consoleplayer].Camera.prev.xy*(1.-FracTic)+players[consoleplayer].Camera.pos.xy*FracTic;
|
||||
Vector2 cpos = SWWMUtility.LerpVector2(players[consoleplayer].Camera.prev.xy,players[consoleplayer].Camera.pos.xy,FracTic);
|
||||
Sector csec = players[consoleplayer].Camera.CurSector;
|
||||
for ( int i=0; i<level.lines.Size(); i++ )
|
||||
{
|
||||
|
|
@ -1960,9 +1960,9 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
}
|
||||
private void DrawMapMarkers( Vector2 basepos )
|
||||
{
|
||||
double zoomlevel = oldminimapzoom*(1.-FracTic)+minimapzoom*FracTic;
|
||||
double zoomlevel = SWWMUtility.Lerp(oldminimapzoom,minimapzoom,FracTic);
|
||||
double zoomview = MAPVIEWDIST*zoomlevel, zoomclip = CLIPDIST*zoomlevel;
|
||||
Vector2 cpos = players[consoleplayer].Camera.prev.xy*(1.-FracTic)+players[consoleplayer].Camera.pos.xy*FracTic;
|
||||
Vector2 cpos = SWWMUtility.LerpVector2(players[consoleplayer].Camera.prev.xy,players[consoleplayer].Camera.pos.xy,FracTic);
|
||||
Sector csec = players[consoleplayer].Camera.CurSector;
|
||||
if ( !mi ) mi = ThinkerIterator.Create("MapMarker",Thinker.STAT_MAPMARKER);
|
||||
else mi.Reinit();
|
||||
|
|
@ -2045,9 +2045,9 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
}
|
||||
private void DrawMapThings( Vector2 basepos )
|
||||
{
|
||||
double zoomlevel = oldminimapzoom*(1.-FracTic)+minimapzoom*FracTic;
|
||||
double zoomlevel = SWWMUtility.Lerp(oldminimapzoom,minimapzoom,FracTic);
|
||||
double zoomview = MAPVIEWDIST*zoomlevel, zoomclip = CLIPDIST*zoomlevel;
|
||||
Vector2 cpos = players[consoleplayer].Camera.prev.xy*(1.-FracTic)+players[consoleplayer].Camera.pos.xy*FracTic;
|
||||
Vector2 cpos = SWWMUtility.LerpVector2(players[consoleplayer].Camera.prev.xy,players[consoleplayer].Camera.pos.xy,FracTic);
|
||||
Sector csec = players[consoleplayer].Camera.CurSector;
|
||||
for ( SWWMSimpleTracker t=hnd.strackers; t; t=t.next )
|
||||
{
|
||||
|
|
@ -2061,7 +2061,7 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
double radius;
|
||||
if ( t.target )
|
||||
{
|
||||
pos = t.target.prev.xy*(1.-FracTic)+t.target.pos.xy*FracTic;
|
||||
pos = SWWMUtility.LerpVector2(t.target.prev.xy,t.target.pos.xy,FracTic);
|
||||
angle = t.target.angle;
|
||||
radius = t.isbeam?(t.target.speed*cos(t.target.pitch)):t.target.radius;
|
||||
}
|
||||
|
|
@ -2170,7 +2170,7 @@ Class SWWMStatusBar : BaseStatusBar
|
|||
double alph = clamp(((t.lastupdate+mtime)-level.maptime)/35.,0.,1.);
|
||||
if ( t.isbeam ) alph *= t.target?(t.target.alpha/t.target.default.alpha):0.;
|
||||
double theta = clamp(5.*FrameTime,0.,1.);
|
||||
t.smoothalpha = t.smoothalpha*(1.-theta)+alph*theta;
|
||||
t.smoothalpha = SWWMUtility.Lerp(t.smoothalpha,alph,theta);
|
||||
}
|
||||
else t.smoothalpha = 0.;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue