D2X-XL Update Notification Thread

D2X-XL - Descent II update for modern systems with many new features and enhanced graphics. Home Page

Moderators: Grendel, Aus-RED-5

User avatar
Sirius
DBB Master
DBB Master
Posts: 5616
Joined: Fri May 28, 1999 2:01 am
Location: Bellevue, WA
Contact:

Post by Sirius »

Ouch. Way above my level, I'm afraid. It'd probably be easier to convert the model formats (to whatever the one was that worked above) upon level load...
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Somehow the stencil tests do not work as they should according to the tutorials I have read ... sigh.

I have run into another problem: While an object may be invisible for the viewer (player), it's shadow may not. D2 doesn't render invisible objects though, and hence not their shadows. The only work-around I can think of is to render every object's shadow in a mine ... but that would simply kill performance.

Edit: I have found a half-way acceptable solution for the 2nd problem.

Edit2: I give up. I have coded everything exactly to the book (NVidia paper by Cass Everitt and Mark J. Kilgard), and it doesn't work in D2.
Valin Halcyon
DBB Admiral
DBB Admiral
Posts: 1113
Joined: Sun Jan 02, 2000 3:01 am

Post by Valin Halcyon »

As I said in my dbb message, I will take a look at the code later today, Deidel. Shadowing is too good to give up. :)
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

I have sent you detailed instructions by PM. You can ask if you need to know more. We can also meet in IRC or in one of the DBB's TS channels later today.

Btw, this is my 3333rd post on the DBB! :mrgreen:
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Some eye candy

Post by Diedel »

after I miserably failed with the shadowing ... :cry:

Shields!

Image

This is a true, spatial sphere. It pulsates slightly in-game. When hit, it flashes orange and gets white when invulnerable. Can be turned off by the game host in multiplayer.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Rendering speed increase of up to 50%, possibly more

Post by Diedel »

How does a rendering speed increase of up to 50% sound? :mrgreen:

The speedup is CPU dependant.

Make sure to specify '-mathformat 2'.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Homing missiles ...

Post by Diedel »

As you may remember, I had limited homing missile updating to 40 fps. As I was looking over that code recently, I started to wonder about a certain parameter I had been using there ... turned out that I had reversed the influence of fps on homing missile turn rate, instead of neutralizing it. I have fixed this in v1.6.35, and heck, homers fly circles around you again! :P That's how I remember them. :mrgreen:
User avatar
d3jake
DBB Admiral
DBB Admiral
Posts: 1074
Joined: Tue Dec 21, 2004 10:08 am
Location: Minnesota, USA

Post by d3jake »

O_O *drools....* Now I wish I had a computer that could meet the min. system requirements for D2X.. that looks soooo cool.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

I can run D2X-XL on an Athlon XP 1800+ Linux system with a GF 2 MX 400 in 640x480 with over 80 fps in the standard campaign. Amazingly, that system is faster than my Athlon 64 3500+ WinXP pro system with a GF FX 5200. Now I am asking myself: Does the M$ compiler suck, or is it the OS, or the drivers? :?
User avatar
Sirius
DBB Master
DBB Master
Posts: 5616
Joined: Fri May 28, 1999 2:01 am
Location: Bellevue, WA
Contact:

Post by Sirius »

Unless your machine is WAY below the normal requirements, it should be fine at least for most settings.
User avatar
d3jake
DBB Admiral
DBB Admiral
Posts: 1074
Joined: Tue Dec 21, 2004 10:08 am
Location: Minnesota, USA

Post by d3jake »

Well.. lesse.. What about a 533 MHz, and 256MB RAM? THe video card is a Voodoo3 2000. Is that really slow or what?
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

The only problem might be the Voodoo card, unless there is an OpenGL driver or wrapper for it that can at least handle the basic requirements of D2X-XL.
User avatar
d3jake
DBB Admiral
DBB Admiral
Posts: 1074
Joined: Tue Dec 21, 2004 10:08 am
Location: Minnesota, USA

Post by d3jake »

um...what's a wrapper?
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

A wrapper is a piece of software that intercepts calls of a certain kind (in the Voodoo gfx card case, calls of the Glide API), and translates them to some other kind of calls (here: to calls to the OpenGL API).

In other words: The wrapper would pretend to be a Glide driver, but remodel all Glide calls made to it to OpenGL calls.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Awesome rendered Descent 1 movies by deuxsonic

Post by Diedel »

Rendered movies for Descent 1

deuxsonic has sent me rendered intro and end movies and mine exit sequences plus audio messages for the robot briefings for Descent 1. Pretty awesome stuff, I must say! :)

D2X-XL 1.6.37 supports these files. Unfortunately, they are 471 MB if packed with WinRAR. deuxsonic is working on a smaller version though.

Descent 1 lovers, rejoice (unless you are into the extreme retro style :P)!
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Rendered D1 movie and audio download links

Post by Diedel »

Descent 1 rendered movie and audio download links

Find the download links here. :D

I found that when directly clicking the links, I got the rar file contents returned instead of being asked where to store the downloaded file, so I recommend right-clicking the links and using the \"save target as ...\" command.

The web space has been kindly and generously provided by KoolBear. Thanks a lot, KB! :D
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman »

Awww, you got me all excited for a minute.

Your download page actually has

\"Part 4 of the Descent 4 movies (114 MB).\"

but then I had to conceed that it was only a typo :P

Edit: ok seriously now:

link1 = extra1-h.rar
link2 = extra1-h.rar
link3 = extra2-h.rar
link4 = extra3-h.rar
link5 = extra4-h.rar
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Thx. Fixed.

But you were able to enter the correct URIs manually, weren't you? ;)
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman »

ok, just checking.... the extra movie files go in \"movies\" and the extra.hog file goes in \"data\" ......Correct?
Pilot from Oz
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Yup.
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman »

Are the extra movies just the robot descriptions or should it be the whole intro with the guy behind the desk as well? Something like that starts to run but drops out after a second and then the robot descriptions start.

I am pretty sure that I have Hi-Res movies switched on but can't check right now (morning tea at work)

Thanks
User avatar
BUBBALOU
DBB Benefactor
DBB Benefactor
Posts: 4198
Joined: Tue Aug 24, 1999 2:01 am
Location: Dallas Texas USA
Contact:

Post by BUBBALOU »

nice to see the D1 movie clips ripped from PSX/MAC on my puter I used MVE Extract to see them all.

I seem to have a better workout dodging your stupidity than attempting to grasp the weight of your intelligence.
User avatar
Aus-RED-5
DBB Friend
DBB Friend
Posts: 1604
Joined: Fri Apr 23, 2004 7:27 am
Location: Adelaide, South Australia
Contact:

Re:

Post by Aus-RED-5 »

Weyrman wrote:Are the extra movies just the robot descriptions or should it be the whole intro with the guy behind the desk as well? Something like that starts to run but drops out after a second and then the robot descriptions start.

I am pretty sure that I have Hi-Res movies switched on but can't check right now (morning tea at work)

Thanks
Just take the "-nomovies 1" switch out of the ini file. You'll see the movies then. :)
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Aus-RED - our finest man on the D2X-XL help desk! :)
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Mouse joystick

Post by Diedel »

What do you think of the idea to handle the mouse like a joystick: D2X-XL measures how far the (invisible) mouse pointer has been moved out of the screen center, and moves the ship to the same direction. Distance from screen center determines movement speed (up to the built-in limits - mouselook will not be active in this mode). Ship movement will cease when the mouse is brought back into the screen center (or to be precise, into a small deadzone around it).

I tried it and found that you could get the hang of this pretty quickly. I also found that not having a physical center position like with a joystick didn't pose a big problem.
User avatar
Sirius
DBB Master
DBB Master
Posts: 5616
Joined: Fri May 28, 1999 2:01 am
Location: Bellevue, WA
Contact:

Post by Sirius »

Might as well put in an option - I wouldn't mind trying the scheme.
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman »

I once had a helicopter game and used the mouse as a joystick. I felt it gave a better feel for a real cyclic stick than a joystick did. IMO

Thinking about it, using the mouse movement to activate the slide controls would be interesting to try. I've often thought about that sort of arrangement, so if you could put it in too, I would be grateful.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

You can try it in v1.5.64. Check \"Handle mouse like a joystick\" in Configuration - Controls.

I may add a visual clue in the form of two small gauges to show relative mouse position.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

D2X-XL online help system - preview

Post by Diedel »

I am currently building online help for the menu right into D2X-XL.

Here's a preview:

Image

I hope this will make the plethora of options more accessible. :)
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman »

Diedel,

1.6.64

I have the \"treat mouse as a joystick\" option set and I have mapped the slide axes to the mouse axes, (assuming this is what I need to do) but the mouse still acts like a mouse. I only slide while the mouse is moving. Have I mapped it incorrectly or what?

Also:

The SP game \"The Apocalyptic Factor XL\" and \"Norlige Electro Depri\" plus a few others load sometimes and othertimes crash to desktop.

Also:

Have a look at the picture below, the cloak icon is missing and so is the invulnerablity one.
Image
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

This is not the bug report thread.

Missing cloak and invul HUD icons are most likely caused by not having updated d2x-xl.hog.

\"Joystick\" mouse only works for pitch and heading.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Integrated help system

Post by Diedel »

Integrated help system

D2X-XL now contains an integrated help system for the menus, covering most menus with the exception of the rather self-explanatory ones and the entropy options menus, which I will supplement help info for later.

Press F1 to have the currently highlighted option explained.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

massive UDP/IP networking bug fixed

Post by Diedel »

massive UDP/IP networking bug fixed

Fixed a massive UDP/IP networking bug causing all kinds of problems today. See the D2X-XL version history.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Jitter during demo playback removed

Post by Diedel »

Jitter during demo playback removed

I have removed jitter occuring when playing back demos. The new, jitter-free demo files are not compatible with other D2X versions, but D2X-XL can still play back the old format demo files.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Long standing bugs fixed

Today I have managed to nail down a few pretty obnoxious, long standing bugs from D2X-XL:

The first bug makes D2X-XL crash when rendering objects with another than the highest detail level set. Other effects of this bug are mistextured bots or bot morphing not rendered properly. The crash bug when shooting the door straight ahead in D2:CS L1 right after spawning may have been caused by this too.

If you ask yourself how the heck detail level should have been below max on your machine, then the answer can be one of my infamous player file format/contents changes. ;)

The other bug is the constant blinking on and off of servers in the netgame browser list particularly in tracker supported games.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Hires textures in D1 missions

D2X-XL v1.6.163 and up now supports usig hires textures in D1 missions! You need to put them in a subfolder named 'd1' of the textures folder (e.g. c:\\games\\descent 2\\textures\\d1).

This was made possible by changes to the texture management. These have caused a bit trouble, but trust me, bearing with me until all flaws have been smoothed out is worth it. ;)
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Palette and color handling improved

To this day, D2X-XL has been plagued by miscolored menu texts and Descent 1 exit sequences. I had figured a solution for this problem a long time ago already, but since it required some major recoding of all color and palette handling in D2X-XL, it was only this week that I finally tackled that task.

Some tech background.

A palette is table containing 'real' (RGB) color values. It's main purpose is to save texture memory: If a texture only contains a limited set of colors (let's say: No more than 256), a palette is created containing these colors, and instead of storing the 4 byte RGBA color value for each pixel, a one byte index into the palette is stored.

Backdraws of this method are:
  • It requires extra computing time to rebuild the RGBA picture if it is to be displayed.
  • You may be forced to artificially limit the number of colors used in an image to the palette size.
  • All images using the same palette are limited to using the same (limited) color set.
Since memory was more precious when Descent 1 and 2 were created, Parallax chose to go this way.

So far so good. Parallax however chose to use several palettes, depending on image type (one for color fonts, one for background images, one for wall and object textures ...), and that is what the guys porting D2 to OpenGL stumbled over.

Each texture had to be temporarily converted to an RGBA image for rendering by OpenGL. Instead of keeping several palettes and assigning a reference to its palette to each image, the D2X makers chose to use one global palette. To make images being based on another than the current global palette work with it, they created code that remapped such images' colors to the global palette.

Now go figure how easy it is to foul up that remapping process. The entire palette handling introduced by Parallax/D2X team was a mess.

D2X-XL v1.6.178 and up now keeps track of all palettes used in the program, and assigns a reference to the palette its based on to each (palettized) image in the game. That means that there is no (time consuming and error prone) color remapping any more. A nice side effect of this is that Descent 1 textures are now being rendered using the original Descent 1 game palette, and are not being remapped to Descent 2's groupa palette. Above that, palette and color selection operations are now significantly faster than before (you won't notice that speedup though, as it's already in the 'supersonic' realm ;)).

A second measure I took to steer clear of palette problems was to use true RGB colors wherever applicable (e.g. in-game text and automap). This removes color changes due to use of different game palettes (as Descent 2 has).

In the process of rebuilding this code I had to change a lot. If you notice any miscolored stuff in D2X-XL, please file a bug report on SF.net and attach a screenshot showing the problem.

Thanks

Diedel
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Packet loss handling improved

During testing, simx and I have found that you can multiply available powerups by exploiting packet loss and certain flaws in the network code of Descent 2.

Basically, powerup multiplication can occur when some player doesn't receive a notification that some other player has picked up some powerup in the mine. As picking up powerups is handled locally, that player can now also pick up that powerup (let's say a Mega missile).

Descent contains some code to fix such problems, but it only looks at powerups floating around in the level, not those being onboard ships.

That means that in the extreme case, in a level initially containing one Mega, every player can end up having a Mega on board. Now if one player fires his Mega, it will respawn for each player. Descent will simply look at the max. permissible number of Megas floating in the level, disregarding those on onbard ships, and allow that Mega to spawn. The player with the cloned Mega can now pick it up, too, and so on.

Descent will only (half way) fix this when more Megas are fired and hence respawn than are allowed in the level. Still, every player can end up with a Mega floating in his or her instance of the level.

For UDP games, D2X-XL will therefore now regard the powerups onboard the local player's ship. Unfortunately, Descent never syncs players' ships' loadouts. Therefore I have added ship equipment sync'ing for UDP/IP games to D2X-XL, allowing each local instance of D2X-XL to determine the loadout of every connected player's ship. That means that D2X-XL will pretty quickly recover from any packet loss induced powerup multiplication (it won't remove anything from player ships, but will prevent respawning excess stuff once it is fired or dropped).

As usual, this meant quite some messing around with the network code, so if you detect any irregularities here, particularly in regard of powerup handling, please report it in a bug ticket on SF.net. :)

Thanks

Diedel
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

D2X-XL SVN source repository

Post by Diedel »

D2X-XL SVN source repository

The D2X-XL source code is now available in a SVN repository on SourceForge.net.

See http://www.descent2.de/d2x.html#downloads for details.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

D2X-XL on 64 bit Linux

Post by Diedel »

D2X-XL on 64 bit Linux

I have verified today that d2x-xl works on 64 bit Linux.
Post Reply