D2X-XL Worklog

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

DLE

Modernization

DLE has been modernized along with D2X-XL. It is a 64 bit program now, its renderer has been rebuilt, and a lot of bugs have been fixed on the way.

Segment Splitter

A segment can be split into smaller segments. This is what the tools described below need to work well, since they don't create new geometry but only move the corners that are there.

The splitter preserves the structure of the level as far as possible. Textures are carried over to the new segments and aligned again, walls - doors and other walls that can change included - are put where they belong together with their switches and triggers, and objects are assigned to the segments they are in now.

Where a split segment meets a neighbour that has not been split, the splitter also builds the connection between the two wherever that is possible. For this it uses wedge shaped segments, which is why it only does so in D2X-XL levels.

Software Tessellation

Descent levels are built from cube shaped segments, so caves and rock formations in them tend to look blocky. DLE now has two tools to refine such geometry.

"Round Structures" smooths the tagged surface, turning angular structures into rounded ones.

"Increase Surface Detail" breaks faces up: it pushes the corners of a surface in and out irregularly, which turns it into rough rock.

Both tools leave doors alone and refit the textures to the changed faces. They can be restricted to rock, water and lava textures, so the technical parts of a level stay as they are.

A structure as built and after rounding it:

Rock with surface detail added, and such geometry in the game:

Ambient Segment Light

Segments can now have an ambient light level and color of their own. So far the only way to get a dark area bright enough was to turn lots of its faces into weak lights, and every one of them costs performance in the game. Now the brightness is simply set for all tagged segments in one dialog, and D2X-XL uses it as the minimum of the ambient light there.

Smaller Things

  • Texture alignment works considerably better. Aligning textures over an area now closes the seams between its faces, and it leaves the textures of door faces alone.
  • "Tag Plane" tags all adjoining faces lying in one plane at once, and faces that have to stay flat when a structure is rounded or roughened can be tagged as planar.
  • A level can have up to 65500 segments.
  • Sound objects can be made to play at random intervals.
  • The diagnosis can repair defective segments and move objects that lie outside of their segment back into it.
  • A level can be exported for Overload.

I also built a function that replaced unneeded empty segments with wedge and pyramid shaped ones to make levels render faster. It gained next to nothing, so I removed it again.


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.