This wants `curline->sidedef`, which is the 3D sidedef currently being
drawn. `sidedef` appears to be the last regular sidedef that happened
to be drawn? The perils of globals.
because they're kind of a pain to type when all uppercase.
- Also, make its sx1 and sx2 members shorts, so it takes less space, since
it's getting crammed into a vissprite now.
- This still doesn't use all the sprite properties correctly. It also
looks like they're going to need different code to build the clipping
arrays. But at least wall sprites are drawn at the proper angle now!
- R_AddLine() and R_RenderDecal() had nearly identical code for setting up
texture mapping. These have now been spun off into methods of
FWallCoords and FWallTmapVals.
the camera is on. Mostly, this means testing the distance of the camera to the plane rather
than computing the plane's Z at the camera and comparing that with the camera's Z.
SVN r4220 (trunk)
because it was an extension of the normal wall clipping process. Since a stacked sector
above you doesn't draw a floor, it wouldn't clip any midtextures to the floor either.
R_RenderMaskedSegRange() now checks this directly when rendering inside a stacked sector.
SVN r3647 (trunk)
of its clipping information before it was drawn. (On the other hand, I have no idea what this
ds->bkup and refreshing stuff is about, so I might have broken something somewhere else.)
SVN r3602 (trunk)
be used when for walls and floors when the renderer is paletted. The format
is very simple:
rgbtex1 paltex1
rgbtex2 paltex2
...
The first texture is the one to be used normally, and the second is the one
to be used in paletted modes.
The vid_nopalsubstitutions cvar can be used to ignore this lump.
SVN r3311 (trunk)
ignored the Y locations of patches drawn on two-sided midtextures and always drew them at the
top of the texture. Added a compatibility flag.
SVN r3205 (trunk)
* Added new cvar, r_3dfloors for testing, so for example, you can see the FPS difference.
* ds_p->bkup is not always allocated.
* Fixed particles visible through 3D floors.
* Fixed FAKE3D flag names.
SVN r3178 (trunk)
- Fixed: When loading non-UDMF maps, things did not have their conversation field zero'ed.
- Added an assert for the FAKE3D_REFRESHCLIP case at the end of R_RenderMaskedSegRange(), because Valgrind indicates this is being run
without ds->bkup being set to something valid. I do not immediately know how this should be fixed.
SVN r3130 (trunk)
former used fistp, which is not portable across platforms, so cannot be
used in the play simulation. They were only suitable for the renderer.
xs_Float.h also has a very fast float->fixed conversion, so FLOAT2FIXED
uses that now.
(And I also learned that the FPU's round to nearest is not the rounding I
learned in grade school but actually Banker's Rounding. I had no idea.)
(Also, also, the only thing that could have made quickertoint faster than
toint was that it stored a 32-bit int. I never timed them, and I doubt in
practice there was any real difference between the two.)
- Changed atan2f to atan2. Using floats is not a win, because the result is
returned as a double on the x87 stack, which the caller then needs to cast
down to a float using fst/fld.
SVN r1990 (trunk)
may still be needed. In particular, when drawing a seg with a midtexture is
split by foreground geometry, the first drawseg generated from it will have
the correct WallSZ1,2 values, but subsequent ones will have whatever
R_RenderDecal() left behind. These values are used to calculate the upper
and lower bounds of the midtexture. (Ironically, my work to Build-ify things
had done away with these globals, but that's gone now.)
SVN r1938 (trunk)