D2X-XL Worklog

Notes on features and problems from the development of D2X-XL, newest first.

Fusion Guns & Hitboxes

This is a two part work log entry: The first part is about the Fusion gun, its special properties and some problems resulting thereof. The second is about weapon hit detection.


The Fusion Gun

The Fusion gun has the special property of its shots travelling through all objects they hit, damaging every one of them on their way. Although a Fusion shot is moving pretty fast, depending on rendering speed it can happen that it has contact with the same object during several frames. To keep it from damaging such an object in each frame, Descent remembers the object such a shot has hit last. This works well if the shot only hits one object per frame, but if it hits several of them, it will 'forget' those it has hit earlier, and damage them again in the next frame. To avoid this, D2X-XL now uses a sufficiently large list of hit objects for each Fusion shot, effectively removing this problem:


Hit Boxes

Did you ever notice that your shots are damaging a target although from looking at it they should have missed? The reason for this is that Descent uses a simple sphere enclosing each object for hit detection. This is a very crude method, but easy to compute. I never liked that, and nowadays even low end computers have enough horse power to do better. Of course the most precise method would be to use a per polygon hit detection, but as most objects in Descent are pretty boxy, using cuboids enclosing them is a good and easy to handle approximation.

I had had this in mind over a year ago, but had never come around to implementing it. In the course of investigating the fusion problem I finally added this feature to D2X-XL. As using per submodel hit boxes is a neat and simple improvement over a single hitbox, I added an option to use these, too. When enabled, hitbox collision detection will work for all objects. That means that collisions of player ships with robots will profit from the increased precision here too, and you may be able to slip through groups of robots, or through between robots and walls where you couldn't before.

This feature definitely adds to the realism and challenge of Descent, and should be a great enhancement particularly in competitive multiplayer gaming. In multiplayer games, it is of course host controlled and not available if the game host doesn't use D2X-XL.

Here are a few screen shots to give you an impression of this feature:


News

A new D2X-XL update fixing broken screen resolution persistence is available

There is yet another D2X-XL update is available (the new Pumo Mines broke a few things ...)

Believe it or not: There's a new D2X-XL version online!

Uploaded updated D2X-XL and library source code that compiles with Visual Studio 19

After a really long time, another new DLE version is available

A new DLE version is available (hear, hear!) :D

A new Max OS X version of D2X-XL is available!

D2X-XL now offers a cartoon style render mode!

New D2X-XL and DLE versions are available

Blarget has got his own area in the level spotlight

New D2X-XL and DLE versions are available

A couple of levels have been added to the level spotlight

Hooray! We're finally having a new Mac OS X version of D2X-XL!

D2X-XL now features an observer mode for multiplayer games

A new D2X-XL version with improved multiplayer synchronization is available

A new D2X-XL version fixing out of sync problems in multiplayer games is available

A new D2X-XL version with many multiplayer bug fixes is available

Added high quality (ogg) Descent 1 and 2 music to the downloads area

A new D2X-XL version with important bug fixes is available

D2X-XL compiles and runs on Linux again!

Descent 1 and 2 high res textures are now available as complete downloads

A new DLE version with a ton of bug fixes and improvements is online

A new D2X-XL version is online

A new D2X-XL version with a much needed bug fix is online

A new DLE version is online

Published another DLE version with more bug fixes and improvements by Sirius

Published a new D2X-XL version

Published a new DLE version with tons of bug fixes and improvements by Sirius

D2X-XL now supports Oculus Rift 3D headsets!

Updated DLE and D2X-XL to support new level features requested by Pumo

Added an article about DLE's new tunnel generator to the worklog

DLE's new tunnel generator is finished

Added a new article to the worklog

Published a new DLE version

Added a new article to the worklog

Added two new articles to the worklog

D2X-XL and DLE-XP now support triangular segment sides!

DLE-XP has an OpenGL render and 1st person view!

New DLE-XP version available

Wrote a new worklog article

Check out DarkFlameWolf's level spotlight section!

New DLE-XP and D2X-XL versions are available

A new DLE-XP version is available

Added a worklog article about the way point feature

Added way point support to DLE-XP and D2X-XL

Posted a bunch of new screenshots

Posted a bunch of new screenshots

A New version of DLE-XP is available

New OS X version of D2X-XL is available!

Added article about lightmaps to worklog.

New article and video added to worklog.