Project

General

Profile

Activity

From 2008-03-27 to 2008-04-09

2008-04-09

04:42 Revision b6e8069a (github): Optimize: Replaced the method used to determine the alpha delta for "soft" surfaces; project the viewer onto the line being tested and then calculate the approximate distance to the resultant point.
danij
02:28 Revision e15f755e (github): Moved the ccmd "listmaps" into common/g_game.c (was in dd_wad.c). The symbolic map lump identifiers are not known to the engine (they are game-specific) so we should not try to second guess them.
danij
01:23 Revision 80ba19a4 (github): Sprinkled some -verbose messages throughout wadmapconverter
danij
00:34 Revision f2a93294 (github): Updated the games re the changes to ddfont_t.
danij
00:30 Revision 20a9bd80 (github): Renamed the members of ddfont_t to get around the issue of TextOut being already defined under WIN32.
Fixed: Ensure the font data is copied correctly in Con_SetFont()
Fixed: In the console the cursor height was not scal...
danij

2008-04-08

19:48 Revision c356be7f (github): Cleaned up jDoom's ST_refreshBackground()
danij
19:31 Revision 375f7446 (github): Added (jDoom): Cvar "hud-keys-combine" and "Single key display" HUD menu option - Controls the default DOOM behaviour where keys of the same colour are only drawn once (e.g., if the player has both the red keycard and the red skull; only the red skull will be displayed). When disabled (the default), icons for all collected keys will be drawn.
Todo: the statusbar needs updating similarly. danij
19:08 Revision 20a2d461 (github): Cleanup.
danij
17:54 Revision 6699d800 (github): Revised the formatting of the "give" ccmd "stuff" parameter. Now works as follows:
* give wak - As before, will give all weapons all ammos and all keys
* give w1k2 - Will give weapon 1 and key 2.
danij
04:10 Revision 599b7168 (github): Removed the state-based rendering of FakeRadio, now that we want to cache a surface's shadow parameters.
Cleaned up Rend_RadioSegSection() in preparation for splitting the update and draw steps. danij

2008-04-07

04:15 Revision 7d5dfb38 (github): In the BSP builder, don't use hedge_t to represent partitions. BSP_PickHEdge now returns a bspartition_t which is used instead. Todo, currently there are some unnecessary members in bspartition_t but due to other parts of the build process; they can't be removed yet.
danij
04:08 Revision f8d9c5ca (github): Fixed: Drawing of middle surfaces on two-sided linedefs would have incorrect material y offset when lower unpegged.
danij

2008-04-06

17:36 Revision 48bf28bd (github): Numerous optimizations:
* Got rid of rendpoly_t. Whilst it was a convenient way to pass data around the renderer it was quite inflexible and ... danij
17:20 Revision 5e09c72c (github): Cleanup.
danij
17:14 Revision f276c458 (github): Implemented a simple optimization in the BSP builder to only test collinear segs of a linedef once per round of evalPartition(). I nice ~36% speed boost ensues.
danij

2008-04-04

23:30 Revision 3a206f4c (github): Optimize: Various improvements to the P_BuildSubsectorBlockMap() algorithm for a nice 73% speed increase. Also, no need to calculate the map vertex AABB here as we have a cached result in gamemap_t.
danij
00:54 Revision bcee4f99 (github): Removed superfluous semicolon.
danij
00:53 Revision e36c9cfc (github): Optimize: Don't build a linedef AABB every time it is needed; cache in linedef_t instead.
danij
00:50 Revision e8da6d46 (github): Disabled verbose message in LG_Init() for logging the light level of every sector (we don't really need to know when not debugging).
danij
00:47 Revision 84035aa8 (github): Ensure the decoration list is properly inited to NULL.
danij
00:45 Revision b2748704 (github): Cleanup.
danij
00:43 Revision 45d92361 (github): Removed superfluous semicolon.
danij
00:41 Revision 8602e293 (github): Optimize: When loading a map, build the BLOCKMAP first rather than the BSP. The BLOCKMAP can be built in a fraction of the time it takes to build the BSP, so, by building it first we can use it's spatial information to accelerate the BSP generation. Currently, only the overlapping linedef algorithm benefits from this (was O(n2) now O(nlogn)).
danij

2008-04-03

18:27 Revision 40338369 (github): Optimize: Reduce redundant material id lookups during map loading. Changed the MPE_SidedefCreate and MPE_PlaneCreate create to accept material ids rather than name strings and updated wadmapconverter to do the lookup once at material registration time.
R_CheckMaterialNumForName and R_MaterialNumForName should be optimized anyway but won't affect load speed by an order... danij

2008-04-01

18:11 Revision 6e41c6cf (github): Optimize: Store a ptr to material in animframe_t rather than a material type plus index so that there is no need to look it up.
Moved R_PrecacheMaterial() into r_materials.c
Various other minor tweaks and cleanup.
danij
16:09 Revision 7a85ef89 (github): The symbolic name of a material, is that of the material itself and not the texture resource it wraps.
danij
14:33 Revision 456dd0f2 (github): Updated jHexen's ANIMDEFS support in light of the changes to the animgroups.
danij
14:29 Revision 8170ba64 (github): Updated the ANIMATED lump support code in the games in light of the changes to the animgroups.
danij
14:16 Revision bdc667f6 (github): Updated the animgroups to allow mixing frames of any material type in one animation.
danij

2008-03-31

15:36 Revision 1214c107 (github): Manage surface enhancements such as decorations, reflections and attached ptcgens at material-level and not resource-type level. This means we can now (potentially) support these features with any type of material on any surface.
danij
13:51 Revision 5233d374 (github): Handle smooth texture animation at material-level as opposed to resource-type level. This means that we can (potentially) support smoothing e.g. flats to textures and all material types (for example, we could have smoothed texture animations in the UI).
danij
12:05 Revision 5bb54eea (github): Cache 2D distance to rendpoly vertexes in rendpoly_vertex_t.
Removed parameter distanceOverride from Rend_VertexColorsApplyTorchLight(), it is no longer needed.
Fixed: Bug in occ...
danij
01:28 Revision 244d4b65 (github): Removed function declarations for routines no longer in rend_list.c from rend_list.h.
danij
01:27 Revision e58efd6a (github): Removed now-unused parameter 'distanceOverride' from Rend_VertexColors(). Also removed an unnecessary clamp to the passed lightLevel.
danij
01:08 Revision 854edf56 (github): Overhauled the lighting pipeline. Flushed out numerous issues and inconsistencies in the process. The result being altogether more balanced/coherent lighting. Needs optimizing.
danij

2008-03-30

17:09 Revision e3e3ef35 (github): Cleanup.
danij
17:05 Revision fba8ebda (github): Renamed visspritelightparams_t to collectaffectinglights_params_t to reflect its change in use.
danij
16:59 Revision 6054021d (github): Re-factored out modelparams_t->uniformColor, it is no longer needed.
danij
16:42 Revision 3e2947fe (github): Re-factored out modelparams_t->lightLevel, it is no longer needed.
danij
16:17 Revision 04d80eb0 (github): Initial steps towards converging the world object, lighting pipelines to a single parametrized routine capable of supporting all visualizations (sprites, models, whatever...).
danij
16:06 Revision 7b3ee857 (github): Fixed: Various issues in B_DestroyAllClasses() which resulted in accessing beyond the end of the bindClasses array and a memory leak. @skyjake - feeling tired when you wrote that? :-)
danij
15:40 Revision 6ae234e4 (github): Fixed: We only need to make room for a binding class if it is not being inserted at the end of he bindClasses array, in B_InsertClass().
Updated style. Do not use C++ keywords as variable names. danij
15:26 Revision 200e014b (github): Fixed: Various issues in W_ResizeLumpStorage() evident on the first visit (attempt to free NULL lumpCache, non-obvious use of memcpy).
danij
12:44 Revision 7ff64f1e (github): Removed vissprite_t->data.psprite as it is now unused. Also, renamed R_DetermineLightsAffectingVisSprite() to R_CollectAffectingLights() as it is no longer limited for use with just vissprites.
danij
12:23 Revision 16c23ac2 (github): Seperated out the psprite data from vissprite_t and into (the new) vispsprite_t as it didn't make much sense in the former and only made things more complicated elsewhere. Also, defer lighting of psprites until just before they are drawn.
danij

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
 

Also available in: Atom