Project

General

Profile

Activity

From 2008-03-16 to 2008-03-29

2008-03-29

20:18 Revision afdd7a75 (github): Defer the lighting of world sprites and models until just before they are drawn.
danij
18:28 Revision 4c2396f0 (github): Defer lighting of model decorations until just before Rend_RenderModel(). Also removed modelparams_t->subsector as it served no purpose.
danij
17:19 Revision b50c4603 (github): Optimize: Plotted decoration origins do not change on the XY plane during plotting in decorateLineSection() so they are invariant to the inner vertical pattern loop.
danij
17:09 Revision 8358b48c (github): Further optimized the calculation of decormodel yaw and pitch; yaw and pitch are invariant within the inner decoration plotting loops.
danij
17:03 Revision 676f3e68 (github): Optimize: We do not need to calculate decormodel pitch and yaw every frame. Instead, calculate in decorateLineSection() when the position of the decoration is plotted and cache the result to surfacedecor_t.
Fixed: decormodels are now lit by the lightgrid when bias lighting is enabled. danij
16:52 Revision 97ba0093 (github): Fixed: Planeglows could not be used independently from dynamic lights.
danij
15:30 Revision 708c7a0e (github): Optimize: There is no need to call R_PointInSubsector() from createSurfaceDecoration(). Instead, determine the decorations' subsector in decorateLineSection() and cache the result in surfacedecor_t.
Also, ensure the surface material offset tracking buffers are fully initialized after level load. danij
15:24 Revision 2f45cd9a (github): When converting plane lumobjs to vlights we need to flip the plane normal z component.
danij
15:21 Revision ef01a740 (github): Optimized P_FinalizedLevel() a bit.
danij
13:28 Revision 709ccd18 (github): We shouldn't be worrying about the tracking of plane heights or surface material offsets until after the level has been fully loaded.
danij
12:48 Revision 095387b3 (github): Changed MAX_SMOOTH_MATERIAL_MOVE to 8.
danij
12:41 Revision 3a61120e (github): Implemented smoothing for scrolling surface materials. Basically a copy of the $smoothplanes stuff.
danij
11:14 Revision aaee3951 (github): Renamed plane_t->visOffset to plane_t->visHeightDelta to avoid possible confusion.
danij
10:30 Revision 45a42825 (github): Initial (naive) implementation of model decorations. Whilst functional, its decidedly clunky and sub-optimal at present (every model, decoration on every world surface is currently drawn every frame!).
danij

2008-03-28

05:08 Revision 1670c196 (github): Fixed: checkMeleeRange() would forever fail if !cfg.netNoMaxZMonsterMeleeAttack due to the way the z height component was added to the distance calculation. Instead, do a z-height threshold check.
danij
04:56 Revision 6c4146f4 (github): Fixed: Collisions with any mobj flagged MF_SPECIAL was broken (introduced in the last fix to resolve MF_SKULLFLY flagged things stopping at pickups). Everything appears to be working as expected now.
danij
03:48 Revision c85c1e33 (github): Implemented a short, two-frame delay to player->extraLight changes to avoid flickering and accentuating y-shear artefacts when v-sync is disabled.
danij
03:13 Revision 7ec6ddf3 (github): Fixed: Any mobj flagged with MF_SPECIAL would prevent other mobjs from passing through it.
danij
02:14 Revision cdb0e93e (github): Fixed minor overlap issue in the fullscreen HUD, ammo indicators in jDoom.
danij
01:28 Revision b7a65d0b (github): When a plane moves, mark all wall surfaces in the same sector as the moving plane as requiring a decoration update. Also, further optimized the decoration plotting; we only need to know the dimensions of the surface material during a decoration update.
danij
00:42 Revision 16d939bd (github): Mark the surfaces of a linedef's sides as needing a decoration update when the linedef's flags change (we allow changing the peggedness of textures at any time).
danij
00:15 Revision a4f13626 (github): Removed the point in bbox checking in Rend_InitDecorationsForFrame() as it is now unnecessary.
danij
00:12 Revision 121077a2 (github): Implemented a kludge to handle the manipulation of a decorlight's halofactor as they cannot yet be smoothly occluded like mobj-linked lumobjs.
danij

2008-03-27

12:28 Revision 3ad90778 (github): Completed separation of the surface decoration, origin plotting from the projection into the world. The next step will involve moving the projection of non-light decorations to Rend_RenderSubsector()
danij
09:51 Revision 5a6b6f9a (github): Stripped out the light adaptation stuff; it wasn't working out how I had envisioned (the lightModRange LUT remains).
danij
08:46 Revision 1d22580b (github): Use the memory management wrapper in M_Misc rather than raw calls to malloc() etc.
danij
08:45 Revision 32856023 (github): Use the memory management wrapper in M_Misc rather than raw calls to malloc() etc.
danij
08:41 Revision 3642ed47 (github): Use the memory management wrapper in M_Misc rather than raw calls to malloc() etc.
danij
08:37 Revision 2402822b (github): Use the memory management wrapper in M_Misc rather than raw calls to malloc() etc.
danij
08:34 Revision 71d95e49 (github): Use the memory management wrapper in M_Misc rather than raw calls to malloc() etc.
danij
08:30 Revision 026cabab (github): Use the memory management wrapper in M_Misc rather than raw calls to malloc() etc. Also fixed an attempt to free a NULL ptr.
danij
08:18 Revision af9e2599 (github): Wrap shared struct ddplayer_t with the new player_t, within the engine so that we have both a public and an engine-internal section of this object.
danij
01:06 Revision 08e7982b (github): Got rid of the "MAXPLAYERS" and "players" macros used internally in the engine to avoid any possible confusion.
danij

2008-03-26

23:04 Revision d1abc82c (github): Fixed a problem in the save game code which could result in P_AddThinker() being called multiple times for the same mobj during load.
danij
07:51 Revision 3a127fcb (github): Changed rendpoly_vertex_t->color to float. We now treat all color as float until the last possible moment where in the rend lists we currently convert to byte.
danij
03:46 Revision 6d09e213 (github): Don't use the global texMagMode when loading UI graphics. This stops them from becoming pixelated if a user decides to change it (for retro kicks, no less).
danij
01:50 Revision 4f97ffb2 (github): When drawing sky mask polys in the sky debug mode; ensure they are always drawn fullbright.
danij
01:07 Revision 155074d8 (github): countMobjsOfTtype() requires a positive health property when counting. This means we do not need to alter the result if it is called AFTER the mobj that triggered it has been P_KillMobj'd
danij
00:56 Revision 662db20a (github): Renamed the engine's PTR_SlideTraverse() to slideTraverse() and made it static to prevent issues when the engine's symbols are in the same namespace as the games'.
danij
00:29 Revision eff10679 (github): Renamed the engine's PIT_CheckLine() to PIT_LineCollide() and PIT_CheckMobj() to PIT_MobjCollide() to prevent aliasing issues when the engine's symbols are in the same namespace as the games'.
danij

2008-03-25

23:36 Revision d9cb0c44 (github): Fixed bug in the new algorithm for finding neighbouring sectors for spreading stair builds; always use the found sector from the last iteration as the compare sector for the current iteration.
danij
22:45 Revision 2e93aa95 (github): When drawing the level fullbright; do not render mobj shadows as this looks particularly odd imo. Also, don't draw mobj shadows on glowing surfaces (e.g. nukedge).
danij
22:08 Revision 5e41f160 (github): Fixed: Sky color used in non-sky sectors and vice-versa.
danij
09:01 Revision 6f93cbce (github): Fixed DDMINFLOAT/DDMAXFLOAT mix ups in the P_FindSector* utility routines which led to all manner of line specials not working correctly (e.g. the raising bridge in DOOM2::Gantlet).
danij
08:57 Revision 0bd9a792 (github): Revised the notation used to define DDMINFLOAT since the previous was wrapping around.
danij
05:26 Revision 93167dc8 (github): Use the platform-specific version of sys_window.c on all platforms.
danij
05:15 Revision 614f1583 (github): Explicitly add .c source files for Doomsday by name rather than using an automagical method to add all files matching *.c We need to do it this way in case we do NOT want to use sources in /portable and instead, use an alternative in say /win32
danij
03:58 Revision 3c4788d4 (github): userDirOk is now a member of application_t
danij
03:43 Revision beacdf57 (github): Fixed FTBFS issues with dd_uinit.c
danij
03:31 Revision a406638c (github): Evidently, curses.h will #define "true" 1 and #define "false" 0 (which will mess with our own #defines for ddboolean_t) unless we #define NCURSES_ENABLE_STDBOOL_H 0 beforehand.
danij
03:25 Revision ef829fe6 (github): Fixed a load more incorrect file encodings.
danij
02:47 Revision 1215f490 (github): Ensure all the unix-specific source files are encoded as UNIX, UTF-8.
danij
01:57 Revision 61e8ed52 (github): winCommand is now a property ddwindow_t
danij
01:43 Revision eb254215 (github): Fixed more FTBFS issues in the nix command line console.
danij
01:21 Revision ecfabfaf (github): Fixed a bunch of FTBFS issues in the *nix command line output.
danij
00:19 Revision 9a766929 (github): Added path vs blockmap AABB clipping to both P_SightPathTraverse() and P_PathTraverse(). Due to the way the LOS traces have been traditionally handled, it meant that frequently the destination of the trace was completely outside the blockmap. This clipping ensures we only ever loop over valid blocks later on in these algorithms.
danij
00:11 Revision 9ba5e06a (github): Removed old headers from the Doomsday vcproj
danij
00:09 Revision 2ea654fa (github): When drawing the blockmap debug display, do not follow the target mobj if it is outside the blockmap.
danij

2008-03-24

02:22 Revision 630cd8be (github): Fix FTBFS issue with the window flags.
danij

2008-03-23

15:18 Revision 108a3e1e (github): Fixed various FTBFS issues when using the SDL window management.
danij
14:51 Revision f8095fb9 (github): Replaced the algorithm for finding neighbour sectors in processStairSector() with one that makes use of P_Iteratep()
danij
14:26 Revision 6ac2a6b1 (github): The thing id property is referenced with the constant MO_ID, not MO_TID.
danij
14:24 Revision 9739e4c6 (github): Added the missing map object MO_ID property identifier in jHexen.
danij
14:20 Revision cd1a10bb (github): Updated jHexen to use the new mechanisms for game-specific map data object lookup.
danij
14:05 Revision 9cbd3574 (github): Updated WolfTC to use the new mechanisms for game-specific map data object lookup.
danij
13:59 Revision fbf2c28a (github): Updated jHeretic to use the new mechanisms for game-specific map data object lookup.
danij
13:52 Revision 0dab4519 (github): Updated jDoom64 to use the new mechanisms for game-specific map data object lookup.
danij
13:50 Revision 5a18f8a5 (github): Added missing include for string.h
danij
04:57 Revision 3f29d680 (github): Begun splitting up RL_VertexColors(). Also, extended the torch lighting to allow for an RGB color to be specified and added a multiplicative blending mode (implemented for jDoom64's BFG explosion effect).
danij
00:27 Revision 20463f6d (github): In the light grid, apply z bias before calling Rend_GetLightAdaptVal() (tis the RightWay).
danij
00:26 Revision 0d149159 (github): Implemented a quick fix for the problem of INSTASIS think_t ptrs. This really should be resolved once and for all by creating a special engine-internal thinker function for both this and NOP/NIL.
danij
00:23 Revision 3db7dac6 (github): When determining if a camera player is in the void, extend the non-void z height range to be inclusive of the skyfix offsets.
danij
00:21 Revision 13eb534b (github): Removed the special cases for writing glowing vertices in the rend lists. Instead, handle glowing surfaces in RL_VertexColors() (note that bias lighting will currently override the glow but RL_VertexColors need splitting up anyway).
danij

2008-03-22

22:05 Revision b0f13796 (github): Fixed z offset bug with mobj-linked light halos.
danij
22:04 Revision 0912f31a (github): Fixed clipping issues with decor light halos.
danij
18:46 Revision e194a9d9 (github): Implemented a series of mechanisms to handle the transfer of game-specific map object data types and their values into the games. This code is early and there is a lot of room for optimization but svn is once again playable using jDoom (yay!). The rest of the supported games will be updated shortly.
danij

2008-03-21

15:51 Revision b885f805 (github): Separated out the model skin management from the model code itself in preparation for wrapping with material_t.
The engine-internal data pointers in the shared state_t have been removed (they are supposed to have no meaning outsi... danij
00:18 Revision 3910e684 (github): Use the material_t interface for deleting and precaching of sprite textures.
danij

2008-03-20

23:57 Revision 735c4d50 (github): Wrap references to sprite textures (non-translated, not psprites) with the new material_t abstract interface.
Fixed a performance bottle neck in R_AllocRendPoly() (there remains more work to be done. I have to wonder whether in... danij
17:47 Revision 72cdf8c0 (github): Introduced new type; typedef int lumpnum_t - To be used at all times when representing indices to lumps (and lump infos).
Further cleanup, got rid of some garbage in dd_main.c danij
15:11 Revision 58b9075e (github): Re-jigged the DENG_LIBRARY_DIR stuff under Windows a bit. Now accepts both relative (to the location of Doomsday.exe) and absolute paths.
danij
14:07 Revision 24b42cca (github): Determine global paths (userdir, basedir etc) as early as possible during startup, so that under Windows we can provide LoadLibrary() with absolute paths. Also added DENG_LIBRARY_DIR which if defined at compile time; changes the location of the library dir under Windows relative to the base directory (Added for dev purposes only. It should NOT be defined in release builds (a compile time warning will be generated if so)).
danij
14:01 Revision 6ca8083e (github): Don't include the WolfTC project when building by default.
danij
01:28 Revision 894bf243 (github): Revert the trunk to rev #5514. What I'm intending to do is too intrusive for trunk so instead, I'll use branch/danij-experimental.
danij

2008-03-19

02:58 Revision 3181f10f (github): Revert changes from rev #5519. Evidently, SDL is not willing/able to cooperate with my plan of doing user input in a plugin. Instead, I'm going to do something radical; a plugin based arch in parallel with a "SDL mode" which removes all the abstractions and reverts to handling input in the engine and only ever one window.
danij
00:53 Revision ef866e91 (github): Split off our interface to SDL input out to disdlinput.dll/so/lib and added a di* lib loader under *nix.
danij

2008-03-18

23:54 Revision f06bff6d (github): Don't link Doomsday against dinput8.lib under Windows, as it is no longer dependent.
danij
23:40 Revision f1356c6d (github): Began splitting up the user input system. Part 3 of 3
danij
23:39 Revision 2d502d54 (github): Began splitting up the user input system. Part 2 of 3
danij
23:36 Revision 8e52b6ee (github): Began splitting up the user input system. OS and/or api specific input device interfacing code is being moved out of the engine an into "Input Driver" plugins. Internally, Doomsday has only one, platform independent representation for each type of supported input device. It is the job of the Input Driver plugins(s) to provide input event notification in a standardized format which the engine uses to update it's internal virtual devices.
Under Windows, we now have diDInput8 which is a Doomsday Input Driver that interfaces with DirectInput8. Next up, wil... danij
15:26 Revision b482fd85 (github): Ensure our window class' menu name is initialized to NULL, make sure we specify the window type we want when calling Sys_CreateWindow().
danij
15:24 Revision be269f44 (github): Fixed mismatch between the declaration and implementation of Sys_CreateWindow().
danij
01:05 Revision 5a7551fe (github): Fixed a bunch of compilation issues.
danij

2008-03-17

07:00 Revision fdf54bf3 (github): Removed old source file references from codeblocks/doomsday.cbp
danij
06:46 Revision fc9f8af4 (github): Added inter project dependencies to the codeblocks doomsday.workspace to ensure correct build order.
danij
06:38 Revision 8a57d300 (github): Added a virtual build target "All" for all projects. This build target will automatically build all child targets for each project (for example, if the active project is jDoom; Build "All" will build both Debug Win32 and Release Win32 targets).
danij
06:08 Revision 1bb5ec92 (github): Fixed relative paths in the codeblocks project files. Changed doomsday.lib include path to include the output target folder for each target build (e.g. search Debug Win32 when linking a Debug Win32 build of jDoom).
I can now build and run Doomsday using the Visual C++2005/2008 compiler from within codeblocks and use EDITANDCONTINU... danij
04:52 Revision 4b1fc175 (github): Ignore *.layout
danij
04:49 Revision 345dea49 (github): Evidently the *.layout files are not part of the project configuration.
danij
03:31 Revision 71288473 (github): Initial commit of a Code::Blocks workspace and projects for Doomsday and all its plugins.
danij

2008-03-16

21:30 Revision d0921ec5 (github): Revised the interface to GL_PrepareMaterial() now takes a material_t ptr rather than a type and index. Also, register DDTEX textures as materials so they can be referenced using the same interface.
danij
21:24 Revision 58e02668 (github): Reworked things so that we no longer have to call R_UpdateSurface() after any changes.
danij
21:16 Revision 4c18f787 (github): Added new public functions, removed old ones not currently in use.
danij
21:15 Revision ed48b000 (github): Revised DMU constant names.
danij
21:14 Revision 47149dab (github): Added new source files to doomsday_cl.rsp
danij
21:11 Revision bea0962f (github): Added new source files to the vs vcproj and sln. Also added the missing lib libcmt to the includes for a release build.
danij
21:04 Revision 12a2c6a5 (github): Worked on DMU:
* Split up DMU in to multiple source files. The public interface and backend stuff is still in p_dmu.c. The set/get f... danij
20:50 Revision efdcf7d6 (github): Updated DMU constant names.
danij
06:17 Revision 8afc3c3c (github): Implemented the remainder of the P_FindSector* utilities.
danij
05:16 Revision 0e55f728 (github): Fixed a bug that somehow crept into findBuildNeighbor().
danij
05:11 Revision d0258069 (github): Reimplemented XS_TravBuildStairs(). Rather than combining two quite different traversals into one routine they have instead been split into separate subroutines. Each subroutine was then rewritten to make use of P_Iteratep().
danij
03:04 Revision 597680f9 (github): Got rid of the global XG sector builderdata flags array. The new scheme isn't as optimal (requiring an iteration of the world sectors to zero the flags before a stair build begins, rather than a simple memset) but imo, it really doesn't matter.
danij
02:32 Revision 95285d22 (github): Got rid of XS_AdjoiningPlanes() completely. Instead, use the P_Iteratep() based search utility functions in p_mapspec.c
danij
01:48 Revision 83cc976a (github): Replaced the algorithm used in XS_GetPlane() to determine an extremal texture height of all the wall surfaces in a given sector. The new algorithm makes use of P_Iteratep() and unlike the old algorithm; it avoids the need for a static working buffer (which it never checked the bounds of, meaning that if a sector was made up of more than 128 linedefs and each had a different texture; it would result in writing beyond the end of the working buffer).
danij
01:42 Revision c8ba5209 (github): Polyobjs are no longer managed in the same way. Determining of their mirror will need updating (commented out for now).
danij
 

Also available in: Atom