renderhitbox
- Tangible - collision activating objects, minus rings
- All - every object
- Intangible - the opposite of Tangible, also no rings
- Rings - rings
Time is now tracked internally in the game using I_GetPreciseTime
and I_UpdateTime. I_Time now pulls from this internal timer. The
system code no longer needs to keep track of time itself.
This significantly improves frame and tic timing in interp mode,
resulting in a much smoother image with essentially no judder at
any framerate.
Some key points for programmers:
- Source code files are mostly listed in a 'Sourcefile'.
So you no longer directly edit the object list. There
can be multiple Sourcefiles and they can even live in
subdirectories--the directory name will be prepended to
every filename in the list. Of course, the Makefile
still needs to be edited to read from each Sourcefile.
- Different rules are no longer required for source code
files that live in subdirectories (such as sdl/ or
hardware/). Subdirectories Just Work so go ham!
In addition to those points, another important change is
that the bin directory is no longer divided into platform
subdirectories (Linux64, Mingw, etc). Executables now go
directly into bin. If you use DEBUGMODE or target 64-bit,
then subdirectories for 'debug' and '64' will be made
though.
Oh by the way, I don't think make clean actually removed
files before on Windows. It should now. I also fixed as
many little inconsistencies like that as I noticed.
And now just an overview of the technical aspects that
shouldn't affect anyone who doesn't REALLY care about the
Makefile...
objs and dep directories have been moved to a make
directory. Makefile.cfg and its variants have been moved
out of their various subdirectories to src/Makefile.d
make distclean removes the bin and make directories
entirely, but make clean and cleandep still only affect
the current build target.
When I say automation, I mean that a lot of copy pasting
in the Makefile has been reduced.