Randy Heit
1b69ee54cc
- Fixed voxel rendering to not get the vertical scale horribly messed up when forcing an aspect
...
ratio with vid_aspect/vid_nowidescreen that does not match the dimensions of the resolution.
SVN r3079 (voxel)
2010-12-26 22:04:29 +00:00
Randy Heit
a18744224c
- Added an AngleOffset option to VOXELDEF to modify the angle of voxels. This is the number of
...
degrees added to an actor's angle to draw the voxel.
SVN r3060 (voxel)
2010-12-19 20:27:47 +00:00
Randy Heit
6b33d572ef
- Fixed: R_LoadKVX() had been designed to deal with voxels missing mips, but not for voxels with
...
mips without any content.
SVN r3059 (voxel)
2010-12-19 20:07:22 +00:00
Randy Heit
b6d8622b7e
- Added VOXELDEF, for more flexibility in assigning voxels to sprites. An example line to make
...
Heretic's barrel use the column voxel from voxel_test.wad with a scale of 0.75 looks like this:
barla = "colua" { scale=0.75 }
Besides scale, the other two options are droppedspin and placedspin, which are the number of
degrees/second to spin an object. There are two different spins: one for object dropped over
the course of gameplay, and another for objects placed by the map author. As a shorthand, the
spin option will set both of these to the same value.
You can also give more than one sprite or frame the same voxel settings:
vial brpl barla = "colua" { scale=0.75 }
As seen above, omitting the frame character will apply this voxel to all of the sprite's
frames.
SVN r2966 (voxel)
2010-10-24 16:55:24 +00:00
Christoph Oelckers
4f63e3ce85
- fixed some compile errors with release config.
...
SVN r2960 (voxel)
2010-10-20 09:52:35 +00:00
Randy Heit
68a30866e5
- Be strict about the spin part of a voxel's name: It must be a valid number.
...
SVN r2959 (voxel)
2010-10-20 03:30:51 +00:00
Randy Heit
abd9a958b1
- Separate voxel spinning information out of the sprite frames and into a separate structure.
...
SVN r2958 (voxel)
2010-10-20 03:16:26 +00:00
Randy Heit
d171c12c8b
- Add support for drawing voxels offscreen so that they can be blended to the screen using
...
the rt_ functions.
- Fixed potential crash in distrecip() on low resolutions.
- Add a buffer parameter to rt_initcols so it can be used with alternate buffers.
- Add a coverage buffer class to record the spans drawn by R_DrawVoxel().
- Import the memory arena class from the scripting branch (and fix it so it recycles blocks off the free list).
SVN r2956 (voxel)
2010-10-17 18:03:01 +00:00
Randy Heit
e3fa06cb16
- Make dc_temp a pointer to the real buffer.
...
SVN r2945 (voxel)
2010-10-16 02:15:07 +00:00
Christoph Oelckers
29443ed482
- changed voxel loading so that the palette remapping is done by the screen object. If the remapping is done right after loading GZDoom would not be able to use the original palette
...
- reverted r2936.
SVN r2937 (voxel)
2010-10-12 22:45:01 +00:00
Christoph Oelckers
f9768e8866
- add a 'remap' parameter to R_LoadKVX.
...
SVN r2936 (voxel)
2010-10-12 21:31:44 +00:00
Randy Heit
f4ea350d4b
- Add floorclip support for voxels.
...
SVN r2933 (voxel)
2010-10-12 03:12:20 +00:00
Randy Heit
e689326ec3
- Rewrite voxel mip selection to be based on the voxel's visible size and not solely on its distance.
...
- Extend nytoofar, because it was too close for 1600x1200. (I may have to change this function to use floating point math?)
SVN r2932 (voxel)
2010-10-12 02:55:28 +00:00
Randy Heit
4c70624473
- Add heightsec clipping for voxels.
...
- Remove the hack to use the voxel's Z size as its Z pivot.
SVN r2926 (voxel)
2010-10-09 03:26:30 +00:00
Randy Heit
dd444a68d7
- Add code to load voxels from between VX_START/VX_END markers (or a voxels/ directory). Naming
...
conventions are essentially the same as for sprites:
* Four characters for the sprite name and one character for the frame.
* The remaining three characters after the frame can be used to give the number of degrees per half-second to spin the voxel.
* If the sprite frame is omitted, then the voxel will be used for all of the sprite's frames that don't have a specific voxel. If you want the voxel to spin but want to omit the frame, then you should use a space character as the frame character.
SVN r2923 (voxel)
2010-10-08 04:07:03 +00:00
Randy Heit
ddce11e8b2
- Add the assembly version of R_DrawSlab, and optimize the C version slightly, since Macs can't
...
use the assembly code.
SVN r2919 (voxel)
2010-10-07 03:43:24 +00:00
Randy Heit
e3d2719e22
- Fix division by 0 when calculating distrecip.
...
SVN r2918 (voxel)
2010-10-07 02:21:37 +00:00
Randy Heit
5d6721ebce
- Fix voxels for non-90 degree fields of vision.
...
SVN r2917 (voxel)
2010-10-07 02:13:16 +00:00
Randy Heit
d33d91dcfc
- Don't do top/bottom and only minimal left/right clipping in R_ProjectSprite() for voxels.
...
- Move voxel selection into R_ProjectSprite().
SVN r2916 (voxel)
2010-10-07 01:54:14 +00:00
Randy Heit
b1a80760bd
- Okay, so the voxels weren't actually too close to me. Rather, vertical scaling was too short,
...
and it seems all of Blood's voxels have the Z pivot in the middle of the voxel rather than at
the bottom. As a temporary solution, I'm ignoring the Z pivot and using the Z size instead.
SVN r2908 (voxel)
2010-10-06 04:25:57 +00:00
Randy Heit
618acc7ec4
- Added a cvar to toggle voxels on and off. Now I see they are drawing too close to me.
...
- Use the visssprite's colormap when drawing voxels.
SVN r2907 (voxel)
2010-10-06 04:02:22 +00:00
Randy Heit
f623f4623b
- Composite voxel clipping arrays across the entire screen width rather than constraining it
...
to the left and right edges of the sprite. The Build engine gets away with being so
unspecific of the clipping bounds, so we can too.
SVN r2906 (voxel)
2010-10-06 03:56:59 +00:00
Randy Heit
ab0e6fc38f
- Fix voxel scaling on widescreen resolutions.
...
SVN r2905 (voxel)
2010-10-06 03:43:21 +00:00
Randy Heit
12788fff5b
- Add the Build engine's KVX (voxel) drawing routines. At the moment, every single sprite is
...
replaced by a specific KVX file on my hard drive, and clipping seems pretty broken, but
at least there are voxels on the screen.
SVN r2904 (voxel)
2010-10-06 03:18:17 +00:00
Christoph Oelckers
0490c35347
- added Edward-san's improvements for changemus command.
...
SVN r2902 (trunk)
2010-10-05 22:35:59 +00:00
Christoph Oelckers
5ff3b3f329
- added Gez's VOC loader.
...
SVN r2901 (trunk)
2010-10-05 22:31:22 +00:00
Christoph Oelckers
00f6f459e5
- fixed: Strife defined the wrong graphic for the pause sign.
...
SVN r2900 (trunk)
2010-10-05 19:17:22 +00:00
Christoph Oelckers
828adec7e6
- moved the Messages menu from Display Option to HUD options.
...
SVN r2890 (trunk)
2010-10-03 20:22:42 +00:00
Braden Obrzut
f26e65e550
- Fixed Linux compilation errors. (I'm not too sure what I was supposed to do with PrepTimidity() though.)
...
SVN r2882 (trunk)
2010-10-02 16:49:44 +00:00
Christoph Oelckers
d3ca1fddcc
- added new action special Ceiling_LowerAndCrushDist. It's similar to Ceiling_LowerAndCrush but allows to explicitly set the distance from the floor where the ceiling stops moving. This is used to remove the special behavior for Strife from the code that unlike the other games moved the ceiling to the floor, not to 8 units above it.
...
SVN r2881 (trunk)
2010-10-02 16:26:10 +00:00
Christoph Oelckers
6d78ff3469
- Backported GZDoom revisions 1018-1019: Fixed spelling of "pseudo" because it bugged me too much. ;)
...
SVN r2880 (trunk)
2010-10-02 13:49:33 +00:00
Randy Heit
b2b84ad11f
- Fixed snd_mididevice so that changing it immediately restarts the song for all devices, not
...
just Windows system devices.
- Remove SMF generation from i_music.cpp, since the psuedo-MIDI devices do this now.
SVN r2875 (trunk)
2010-10-02 04:12:21 +00:00
Randy Heit
90dd40c58f
- Reimplemented TiMidity++ playback so that it also can handle XMI subsongs.
...
SVN r2874 (trunk)
2010-10-02 03:36:19 +00:00
Randy Heit
fa429ad844
- Fix incorrect parameters to PrintMidiDevice().
...
- Add music_psuedo_mididevice.cpp to CMakeLists.txt.
SVN r2873 (trunk)
2010-10-02 02:23:42 +00:00
Randy Heit
b6941be55f
- Reimplemented FMOD MIDI playback as a psuedo-MIDI device so that it can take advantage of XMI subsongs.
...
SVN r2872 (trunk)
2010-10-02 02:19:50 +00:00
Christoph Oelckers
024bbeb171
- changed 'load game' menu so that it preselects the last used savegame, either for loading or saving.
...
SVN r2867 (trunk)
2010-09-29 22:24:55 +00:00
Christoph Oelckers
5464676603
- cleaned up i_music.cpp.
...
SVN r2866 (trunk)
2010-09-29 19:29:14 +00:00
Christoph Oelckers
5be9729872
- FScanner::Float is a double so there's no need to cast values to float before assigning them to this variable.
...
SVN r2865 (trunk)
2010-09-29 07:25:14 +00:00
Randy Heit
bc08502132
- Pass SMF files through the MIDI conversion process too, to give TiMidity++ and FMOD some
...
degree of support for songs that use loop controllers to loop the song back to a point after
the very beginning of the song.
- Enable loops during SMF generation. Infinite loops will be clamped to some finite amount. (This is currently 30, so a 3 minute song will still restart from the very beginning after 90 minutes)
- Fixed: The SMF, HMI, and XMI readers all generated invalid MEVT_NOP events.
- Fixed: SMF generation died on songs that set their tempo during the initial beat.
SVN r2864 (trunk)
2010-09-29 03:35:53 +00:00
Christoph Oelckers
64784b2dc8
- fixed: DOptionMenu::FirstSelectable should not be called when the menu already has a valid selection.
...
SVN r2863 (trunk)
2010-09-29 00:54:14 +00:00
Christoph Oelckers
e2c105b447
- fixed: XMI music files were not converted for playback with FMod or Timidity++.
...
- Was there any reason why the MIDI_GUS device was so well hidden from the user? It sure does not sound broken. Added it to MIDI menu and $mididevice.
SVN r2862 (trunk)
2010-09-29 00:35:47 +00:00
Christoph Oelckers
6014250f3a
- fixed: Option menus with no selectable items crashed.
...
SVN r2861 (trunk)
2010-09-28 16:28:44 +00:00
Christoph Oelckers
9414fd2995
- fixed: G_DoLoadLevel must reset level.maptime before calling P_SetupLevel or all actors that read it in their BeginPlay method get the wrong time.
...
SVN r2860 (trunk)
2010-09-28 15:14:53 +00:00
Randy Heit
5a3b3631c3
- Added XMIDI support (including subsongs).
...
- Moved unaligned accessors into m_swap.h.
SVN r2859 (trunk)
2010-09-28 03:58:41 +00:00
Christoph Oelckers
2d5755a80e
- fix GCC warning.
...
SVN r2858 (trunk)
2010-09-27 22:42:35 +00:00
Christoph Oelckers
77709f1847
- fixed: The loadgame menu responder did not check for an empty list of savegames.
...
SVN r2857 (trunk)
2010-09-27 22:36:47 +00:00
Christoph Oelckers
add5518a04
- added some constant definitions for action specials to DECORATE header.
...
SVN r2856 (trunk)
2010-09-27 05:49:56 +00:00
Christoph Oelckers
9abaaa1785
- added a default cursor for Chex Quest.
...
- set 'cursor' as default for Action Doom 2. Doom's bunny is probably not the best thing here...
- made cursor user-settable in the menu.
SVN r2855 (trunk)
2010-09-26 07:46:34 +00:00
Christoph Oelckers
cf9792ed53
- fixed: The order of items in the main menu was wrong. Doom is supposed to have 'Options' in second place. Many vanilla-compatible mods with special one-patch menus would not work correctly due to this. Fortunately the only mod I could find that relied on ZDoom's order was Action Doom 2, which as an IWAD can easily be handled by a simple configuration option.
...
- added 'else' blocks to MENUDEF parser.
SVN r2854 (trunk)
2010-09-26 06:53:40 +00:00
Randy Heit
79f26d9e5c
- I do believe I forgot to add some things.
...
SVN r2853 (trunk)
2010-09-26 05:33:46 +00:00