Project

General

Profile

Activity

From 2011-04-06 to 2011-04-19

2011-04-19

19:43 Revision b3a474dd (github): Client sends accurate position w/momentum
Previously the client was sending position coordinates
only as (short) integers, without the fractional part. This
ca...
skyjake
19:17 Revision 4a59fa49 (github): Client: Fixed showing of HUD messages sent by server
The DDPF_LOCAL flag should not be relied upon. skyjake
19:16 Revision c62ce776 (github): jDoom: Fixed problem with key pickup notification
The message about key pickup was not shown. skyjake
17:19 Revision 27484a24 (github): Client: Fixed HUD info updates
Keycards, ammo, etc. were not updated in the client's status bar. skyjake
16:46 Revision cf2e72eb (github): Client: Fixed client getting stuck
Server seems to think some valid coordinates are invalid.
The client was getting stuck near corners.
skyjake
16:45 Revision d4fd1685 (github): Fixed intermission in multiplayer
Fire/Use-to-skip was not working. skyjake
14:17 Revision 70c2e5dd (github): Fixed map change notifications
The server was not sending any information about map changes
to the client.
skyjake
14:02 Revision e0b4149f (github): Fixed PathDirectory's const iterate method was not functionally equivalent to the non-const version.
danij
13:59 Revision 571425f8 (github): Client: Fixed view filter (palette effect for pain etc.)
When the server sets the filter color, the client will not turn off the
view filter until the server says so.
skyjake
13:11 Revision 8858fbdb (github): Couple of minor fixes to previous commit.
danij
12:55 Revision 1774d113 (github): Reimplemented the console variable directory using an instance of PathDirectory. In addition to improved average search times we are saving around 400k of system memory, which is a nice bonus.
danij
12:36 Revision 6730c54c (github): Client: Fixed explosion of missiles
On clientside missiles will run through their explosion
sequence when they hit something, but the damage
is dealt onl...
skyjake
12:35 Revision ff2c1155 (github): Server sends mobj type to clients
The mobj type (and mobjinfo) are important for the game logic
so it knows how to treat the mobjs.
skyjake
12:33 Revision 1019566a (github): Minor cleanup
skyjake
09:53 Revision b6fcf33c (github): More robust sharp ticking
Now it is impossible for the fractional frameTime to become desynchronized
with the fixed 35 Hz ticks, because it is ...
skyjake

2011-04-18

23:54 Revision b560e772 (github): Renamed ddccmd_t to ccmd_t
danij
23:51 Revision 50136dfb (github): Renamed ccmd_t to ccmdtemplate_t
danij
23:36 Revision 53752c83 (github): Refactored away the copy of ccmd_t (used during command registration) stored in ddcmd_t
danij
22:46 Revision 375d7668 (github): Renamed ddcvar_t to cvar_t
danij
22:43 Revision 3cbfb29a (github): Renamed cvar_t to cvartemplate_t
danij
22:29 Revision 51d76633 (github): Refactored Con_FindVariable into Con_GetVariableType and removed the cvar argument from the notification callback. This addresses an engine-internal object visibility issue in the public API.
Fixed ddcvar_t to cvar_t cast problem in the multiplayer player setup menu. danij
17:33 Revision 9acdb07e (github): Removed obsolete scripts
skyjake
17:28 Revision 0fe3d3f4 (github): Client: Fixed picking up of items (and player pos changes)
Instead of trying to handle object position changes on its own, the engine
now relies on the exported P_TryMove3f. Th...
skyjake
17:17 Revision 975e2729 (github): Added P_TryMove3f
The function is in the common game plugin and is exported out from the game. skyjake
01:57 Revision 0687fa21 (github): Don't use Str_Copy in PathDirectory::internName as this makes a "full copy", allocating storage equal to the reserved size in the source string.
My first thought was to implement a "squeeze" method (in Qt parlance) but as ddstring_t allocates from the Zone and t... danij
00:38 Revision c7e02041 (github): Minor tweaks to PathDirectoryNode::ComposePath and function header comments in pathdirectory.h
danij
00:26 Revision 26683707 (github): When composing paths to branches in PathDirectoryNode_ComposePath always add a closing delimiter.
Cleanup. danij

2011-04-17

21:46 Revision a5bfc90e (github): Further optimizations to PathDirectory:
* Added node name interning mechanism.
* Store node name hashes alongside the interned name to avoid rehashing.
* Use...
danij
11:27 Revision 565b0daf (github): Client: Allow spawning objects with MF_LOCAL
skyjake

2011-04-16

20:27 Revision 170d8191 (github): Refactored PathDirectory turning the path fragment delimiter into an insert-time/compose-time argument. It is now possible to populate the directory without needing to convert directory separators so long as they have been normalized prior to insertion (i.e., not mixed, for example "data/jdoom\models/"). PathDirectory itself can now be used to do the "conversion" at compose-time.
danij
19:43 Revision a8fcae31 (github): Unmanaged texture upload log message in _DEBUG builds now verbose >= 1
danij
19:16 Revision 6514c1aa (github): Fixed: F_AllResourcePaths resulted in bogus leaf nodes being added to FileDirectory for all subdirectories of the matched search path. For example, if the directory data\jdoom\models\ exists in the real filesystem and the search data\jdoom\* is executed, a new leaf was created for "models" despite it not being a leaf.
Optimize: PathDirectory once again no longer stores the path delimiter along with each non-leaf path fragment. danij
15:36 Revision d2e17668 (github): Further minor optimizations to PathDirectory
danij
04:01 Revision 6cc7007c (github): Fix typo in previous commit.
danij
03:50 Revision 35e24a98 (github): Refactored away fixed-length path buffer in PathDirectoryNode::MatchDirectory
Cleanup. danij

2011-04-15

20:59 Revision 8f47c3fa (github): Reimplemented FileDirectory, encapsulating an instance of PathDirectory.
danij
18:29 Revision 42aae911 (github): Client: Fixed tick smoothing (for the most part)
Removed the obsolete client-only player think. Now the client
uses the regular P_PlayerThink().
skyjake
16:19 Revision a39468d0 (github): Cosmetic whitespace changes in source
skyjake
16:19 Revision 391157bc (github): Fixed view info calculations in R_SetupFrame
The view information for effectively only calculated for
player #0 only, as the final parameters were always set
for ...
skyjake
16:16 Revision a66ee864 (github): Client: MobjThinker ignores partial/unpredictable clmobjs
skyjake
14:20 Revision cb60404f (github): Applied the path fragment hash optimization to PathDirectory.
Switched PathDirectory and FileDirectory to allocate all internally used storage (other than ddstring_t) from the rea... danij
13:04 Revision fc7ef442 (github): Optimize: Implemented a path fragment hashing scheme to FileDirectory in place of the simple linear search and significantly improving the average-case search time. This is now of the same time-complexity as the search algorithm used with material namespaces (hint, hint).
Todo: Apply the same optimization to PathDirectory danij
12:47 Revision 3daf1986 (github): CCmd "Load" should look for RC_PACKAGE resources and not attempt to guess (thus allowing WAD/PK3/ZIP resources to be found from a search string which doesn't specify a file extension).
danij
00:46 Revision 83768f32 (github): Reimplemented the material namespace namehash.
danij

2011-04-14

19:09 Revision 1e477958 (github): Client: Fixed issue with "ghost" MT_TROOPs
The client was spawning local MT_TROOPs that couldn't
be damaged.
skyjake
18:28 Revision 64ef9a3c (github): Fixed weapon change glitches in multiplayer
On server-side the player controls were never checked
and the player brain was uninitialized (thus the forced
change ...
skyjake
17:45 Revision 08d00044 (github): Fixed: Particle generator flags ptf_vflat, ptf_hflat and ptf_flat should be ignored for line and model type particles.
Replaced P_CheckPtcPlanes as it no longer necessary. We track changes to a surface's current material, so instead do ... danij
15:23 Revision 28b960ed (github): MSVC: Fixed pointer arithmetic in cl_mobj.c
skyjake
13:49 Revision 5d6e7cd5 (github): Split the material binding definition association links out of MaterialBind and into a new info struct named MaterialBindInfo. This extended info is now only attached to the binding upon successful preparation of the first derived variant of the associated Material (reducing storage overhead for unused Materials).
danij

2011-04-12

22:54 Revision 2b0e4cd5 (github): Z height information in mobj deltas
The Z information is sent also if just the plane heights change. skyjake
22:52 Revision f91ccd91 (github): Mobj flags synced from server to client
In an effort to ensure that mobj state is properly transmitted from
the server to the clients, moved the mobj flags a...
skyjake
18:51 Revision e6013015 (github): Client mobjs are treated like regular mobjs
The client mobjs are added to the thinker list and use the game's
mobj thinker function. However, at the moment, P_Mo...
skyjake

2011-04-11

18:56 Revision ae7e1daa (github): Refactoring clientside mobjs and player data
Client mobjs are now equivalent to game mobjs + an attached extra info struct.
This allows handling the mobjs as-is i...
skyjake
18:53 Revision 9c93e2dd (github): Fixing warnings and doing general code cleanup.
For instance, there were some unused music functions in the Quicktime driver. skyjake
09:05 Revision 1773041a (github): GL texel minification and magnification modes are now defined in TextureVariantSpecification
Todo: Refactor TextureVariantSpecification removing all magic numbers, dualities etc, etc. danij

2011-04-10

13:56 Revision 97fb9d8c (github): Refactoring continues:
* Reimplemented updating of Materials after an engine reset/update. The new mechanism moves all update logic into the... danij

2011-04-09

21:55 Revision b93d3dbb (github): Refactoring continues:
* Removed patching of de::Material within the Materials subsystem and re-implemented it within the DED reader, patchi... danij
12:24 Revision 9ca351f2 (github): Reimplemented Def_CreateAutoMaterials to generate new Material definitions rather than interface directly with the Materials subsystem. All concrete Materials are now constructed from definitions in the same manner and at the same time.
danij
09:19 Revision 8efc5ac7 (github): Continued refactor of the Textures and Materials subsystems:
* Record logical dimensions of a texture in de::Texture, set to width = height = 0 in the default constructor. Added ... danij

2011-04-08

09:14 Revision 464280eb (github): Returned dpExample back to a releasable state.
danij
08:51 Revision f80ced95 (github): Removed the experimental model decoration stuff. It was only implemented as way for various individuals to test their work-in-progress models in-game. I now need to make some changes to this subsystem and as this code isn't going to go into a release build its time for it to go.
It is still available in our revision history, so if you want to continue experimenting with it you can do so by chec... danij
08:02 Revision 553649e4 (github): Fixed: R_PrecacheMap was in charge of initializing the decorated and glowing surface lists. Consequently they would not be built if playing back a demo.
Minor cleanup. danij
07:51 Revision 94341fc8 (github): Optimize: createGlowLightForSurface can early out if the Surface's Material is not presently glowing at this time.
danij
06:02 Revision 3c19bad2 (github): Visibility of TextureVariant can now be restricted to the Textures and Materials subsystems.
Todo: Materials should not need to know of them either - refactor API danij
03:16 Revision 5ce03664 (github): Relocated image analysis records out of TextureVariant and into Texture as these aren't really variable. If we do want per-variant values it would be trivial to transform the general case according to the variant's specification in an accessor.
Perform image analyses immediately after source image load and prior to variant construction/preparation. danij

2011-04-07

09:57 Revision 29e01b67 (github): Moved the method argument for Textures::chooseVariant to the front as it looks prettier :-)
Removed type argument from choosevariantworker_paramaters_t as we don't need to know at this level. danij
09:40 Revision 3b8f9c56 (github): Cleanup.
danij
07:27 Revision 080698c0 (github): Switched Texturess::findPreparedVariant to use an exact-match method when looking for suitable candidates as the rest of the subsystem should be functionally correct (if not all that pretty in places). Added a _DEBUG only sanity check to assit in routing out any remaining bugs. So far so good.
Do not do a full texture/material specification comparison if given two pointers to the same object. danij
04:37 Revision 8aeb8d2f (github): Refactor: All routines in gl_tex.c/h which use ColorPalettes are now passed pointers to them rather than their associated indices in the list owned by the refresh module. R_ToColorPalette now results in a fatal error if given an invalid palette index.
danij
04:04 Revision b66f9338 (github): Relocated GL_PalettizeImage, GL_QuantizeImageToPalette and GL_DeSaturatePalettedImage from gl_texmanager.c/h and into gl_tex.c/h where they belong.
danij
03:00 Revision af1d54ea (github): Fixed a couple of typos in comments.
danij
02:38 Revision a3124840 (github): Optimize: Store detail texture variant specifications into a set of buckets according to their quantized contrast value. As detail specifications have only one property (i.e., the contrast value) this means that search/selection performance is now bounded to O(1) with no divergence for best/worst cases.
danij
00:07 Revision 4922d9be (github): Optimize: Refactored away unnecessary heap allocation in getVariantSpecificationForContext. Querying for and retrieval of a known TextureVariantSpecification no longer involves dynamic allocations.
danij

2011-04-06

04:04 Revision 54d6eac5 (github): Defer TextureVariant construction until after source image load.
Cleanup. danij
 

Also available in: Atom