Discussion: Adding stuff to D2X-XL

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

Moderators: Grendel, Aus-RED-5

Post Reply
User avatar
AverageJoe
DBB Ace
DBB Ace
Posts: 24
Joined: Sun Aug 20, 2006 2:31 pm
Location: Loading Bay

Post by AverageJoe » Mon Aug 21, 2006 6:59 pm

Hey man, i'm just saying it's nice to have a headlight icon or something.

Do you currently have someone to make high-res models? I might be able to whip some up but I don't know how to convert them to the Descent2 format.

Edit: Do you have any plans to add shader support or at least specular/normal maps?
Searching for my head in vain...
Image
User avatar
SnyTek
DBB Ace
DBB Ace
Posts: 40
Joined: Tue Jun 25, 2002 2:01 am
Location: Reinach, Switzerland

Post by SnyTek » Tue Aug 22, 2006 1:07 am

Diedel

Are you afraid of adding something that really could improve gameplay? Is it just the eye candy stuff that interest you?
As long as you didn't play my levels in multiplayer you can't really judge my levels, can you? As I wrote they are not everyone's taste and I'm sorry if you can't see and acctept that.

Cheers
SnyTek

PS: keep your insulting comments for yourself!
User avatar
Aus-RED-5
DBB Friend
DBB Friend
Posts: 1604
Joined: Fri Apr 23, 2004 7:27 am
Location: Adelaide, South Australia
Contact:

Post by Aus-RED-5 » Tue Aug 22, 2006 2:28 am

Chill people.

Are you guys paying him for the work to be done?
Are you guys helping him in anyway with this project by means of coding?
I think not.

Diedel does all this for FREE.
I think he has every right to pick and choose what to add to D2X-XL.

Giving him grief because he won't do what you \"suggested\" is just plain wrong!

If you want something bad enough.. Then you guys go learn how to add it into the source code and do it your self.

As far as bug reports....

Here is my suggestion. :P

come on guys.... really? How hard is it to follow the rules? :roll:

I didn't like the idea either, but in the end it does help him out. ;)
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman » Tue Aug 22, 2006 3:02 am

Well said Aus-Red!

There is no need for insults and bad mouthing.

All of us who use this need to remember that this is 95%+ one man's effort that is being SHARED with us and enjoy it with gratitude every time we play.

Make suggestions by all means, but appreciate the things that are added without complaining about what isn't.

So think about every comment you write!

{Here endth the sermon)
Pilot from Oz
User avatar
AverageJoe
DBB Ace
DBB Ace
Posts: 24
Joined: Sun Aug 20, 2006 2:31 pm
Location: Loading Bay

Post by AverageJoe » Tue Aug 22, 2006 4:02 am

Uhm, SnyTek was the only one out of line. He misread a post and that is all. I'm going to be seriously dissapointed in this community if people get their panties in a bunch over extreamly stupid shit like this.

I use Lightwave 7.5 with Microwave. Does Milkshape3D have any kind of support for .oof?

Shaders are most definetly not a '500 mile wide' field.
There are three languages:
HLSL (DX9+)
GLSL (OGL)
Cg (DX9+ and OGL compatible)
Implementation is really quite simple and there are gazillions of tutorials around (NeHe has alot for example). I'm not sure if the SDL language has shader implementation though, I have never head of it until now.


Specular maps are very cool and extreamly handy.
They are full color maps, with alpha being the opacity and the RGB channels are used for specular color math however the designer sees fit. Usualy it's multiplication.
What this allows is very accurate detailing of the specular highlights, making gritty surfaces, wet surfaces, metalic surfaces, etc., very easy to develop.


Another question I had is this: Is the D2X-XL source code compileable by Bloodshed Dev C++? I don't have Visual Studio (only Visual C++).
Searching for my head in vain...
Image
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Aug 22, 2006 4:51 am

Snytek,

I didn't insult you, I stated facts.

As far as your levels go, I merely stated my opinion, backed with years of playing D2 and spending many 100 hours on building levels myself, among them quite a few top notch multiplayer levels. Judging your levels has nothing to do with taste (i.e. feeling, 'guts' anybody?), but with facts. I understand that you appreciate your levels, but if you can't stand criticism of your works, your problem. You should just make it clear to yourself then that you are severely limiting your opportunities to improve. Heck, there's over 4000 D2 levels out there, and look how many have made it into my level spotlight. And even among those that haven't are way better ones than yours.

Adding new features to D2X-XL is entirely up to my disposition, as I am doing all the work. No need to talk trash to me. Who do you think you are?

Joe,

please explain what you mean with \"adding shader support\" to D2X-XL? There is no such thing as \"shader support\" in a program. All you can do is add shader programs to the renderer. I don't know if you have ever looked into the tutorials you are mentioning here. I did, and I can only tell you that all I have seen suck (and I have seen a lot). They don't explain basic stuff, or they only explain basic stuff, or they give a small example of a very special application, but I haven't found a general explanation about how to add useful shaders to a program. If you have better links than those you quoted here, you're welcome to post them.

As far as light and shadow maps and whatnot are concerned: Again I have not found a good tutorial on this, explaining all the ins and outs of adding such stuff (like where exactly in the entire rendering process do I have to apply them, etc). Same goes for real time shadows (which I tried to add, and failed - part thanks to the arrogant OpenGL community: If you tell them 'I am dumb, please explain it step by step and do not post links to smart articles', guess what will happen? They will post links to smart articles. And if you tell them that's not what you need, they get all upset how you dare to be so ungrateful when they dedicate their precious, precious time to you. Well, to hell with help like that.). (Joe, if you know something about shader programming, just start by explaining me how to add a distortion effect similar to the HL2 Strider main gun firing effect to the Fusion cannon. ;) I have no clue how to do something like that, because I don't even know where in the rendering pipeline this has to be done.)

In support of Aus-RED I have to say that I have been spending a tremendous lot of work on D2X-XL and seen very little material reward although it has thousands of downloads across all supported platforms.

Now you are trying to tell me what I have to add to the program, and when? This is just ridiculous, and if you can't get in line with all the other people who are *really* supporting me (like Aus-RED or Weyrman), but think a community that gives you some critical reflection if it sees fit sucks, feel free to find one that suits you better.

Bottom line: I know dang well what I can and want to add to D2X-XL, and what I don't, and if somebody wants to interfere with that he first has to earn a lot of merits in the development of D2X-XL.

And Joe, if you want to build \"many many\" D2 levels, build just one first and prove that your level building skills are worth extreme efforts on the side of D2X-XL.

Until then, all you are doing in my eyes is venting hot air. I am not trying to insult you, I am trying to show you how you arrive at my end of the line.

If all that was too much to read:

Adding stuff to D2X-XL is entirely up to my disposition and depending on my priorities for the software, my available time and my skills.

If you don't like that, look for another game - or start to add the stuff you want yourself. There's nothing I'd love more than to look an OpenGL guru over the shoulder when he spices up D2X-XL. Unfortunately, none willing to do that has been found so far - so you will have to stick with me, like it or not. :P

Don't think I'm trying to shy you away - you are welcome here - but currently you two apparently fail to see my side of the story.
User avatar
SnyTek
DBB Ace
DBB Ace
Posts: 40
Joined: Tue Jun 25, 2002 2:01 am
Location: Reinach, Switzerland

Post by SnyTek » Tue Aug 22, 2006 9:58 am

Diedel

I really was upset when I wrote the last post - I apologise for that. But I want to explain why I was upset and what my problem is:

1) I appreciate what you are doing - it's great that we still can play D2 on our machines and I'm greatful for that!

2) If you don't want to do something, say so and don't do it. I'm wether insultet nor upset if you won't implement a feature, believe me! As I'm a programmer myself I very well understand that you have to filter and set priorities!

3) I can stand criticism. If you don't like my levels, I don't really care very much ;) .

4) What insulted me is the dependency you made: \"Your levels aren't good enough for me -> so I won't implement your idea\". My suggestion hasn't anything to do with my levels. It would be a benefit for all who use multiplayer hog files.
I really hope you can see my point!

5) who I think I am? Somebody who deserves to be treated with respect - as everybody else. Regardless if this person is a programming or level building god.

6) Stating facts can be insulting. It depends on how you say it: \"Wie man in den Wald hineinruft...\".

Please, let's end this story here and now!

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

Post by Diedel » Tue Aug 22, 2006 10:43 am

SnyTek wrote: 3) I can stand criticism. If you don't like my levels, I don't really care very much ;) .
It didn't sound like you do.
SnyTek wrote:4) What insulted me is the dependency you made: "Your levels aren't good enough for me -> so I won't implement your idea". My suggestion hasn't anything to do with my levels. It would be a benefit for all who use multiplayer hog files.
I really hope you can see my point!
I did in no way post or even think like that. It is entirely your fault to interpret what I said this way.
SnyTek wrote:5) who I think I am? Somebody who deserves to be treated with respect - as everybody else. Regardless if this person is a programming or level building god.
Treat ppl respectfully, and you will reap respect.
SnyTek wrote:6) Stating facts can be insulting. It depends on how you say it: "Wie man in den Wald hineinruft...".
If you are touchy, facts can easily insult you.

I am not gonna argue any more with you, but I will not be the culprit here either. There are rules, and they are here for everybody.
User avatar
AverageJoe
DBB Ace
DBB Ace
Posts: 24
Joined: Sun Aug 20, 2006 2:31 pm
Location: Loading Bay

Post by AverageJoe » Tue Aug 22, 2006 10:59 am

Diedel: I am learning Cg and HLSL, I don't think you would have to learn much regarding them, mostly implementation methods. My main concern is how to have a model surface in D2X-Xl point to the shader programs.

How may I provite merit for you?

Lots of good HLSL, GLSL and Cg articles.
Searching for my head in vain...
Image
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Aug 22, 2006 11:08 am

Joe,

the problem is not to understand Cg or HLSL, but where to insert shader code in the rendering process. Like I said: Where e.g. do I have to add a shader making a distortion effect affecting the entire screen? Or where one that distorts a certain face for a teleporter effect?

Merits? Constant good contribution to the project, like adding program features, providing hires models, levels ...
User avatar
AverageJoe
DBB Ace
DBB Ace
Posts: 24
Joined: Sun Aug 20, 2006 2:31 pm
Location: Loading Bay

Post by AverageJoe » Tue Aug 22, 2006 2:06 pm

How you use shaders in a simple explaination is to create a reference from the model data.
For example when loading the model:
you load vertices, triangles, uvmaps, texture pointer, shader pointer (shader paramters, pointers). Something like in that order.

Then you make sure you add the Cg libraries, etc. so the loaded shaders function properly with your code (ie. transmitting vertice data from gpu to cpu).

Now they should function. It was a while back that I read up on how to do it. Forgive me if I forgot something or misdirected you in anyway as I don't recall the exact setup.




I'll see if I can whip up some high-res objects. What do you think about creating a 3D cockpit? That way if the player crashes into a wall or a blast radius moves them it's possible to tilt the head around to simulate velocity. I know it would be pretty low priority but it would still be a neat feature. However the benifits from having dynamic lighting would indeed fit the benifit.
Searching for my head in vain...
Image
User avatar
Shadowfury333
DBB Ace
DBB Ace
Posts: 326
Joined: Mon Aug 09, 2004 8:36 pm

Post by Shadowfury333 » Tue Aug 22, 2006 2:15 pm

Diedel, have you looked at any other open source projects that use shaders. DarkPlaces seems like a good place to start, as it is programmed in C (though it might be QuakeC), supports shaders, and uses real-time shadowing well. It might be a good reference. If not, you're welcome anyway.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Aug 22, 2006 2:31 pm

Joe,

a Cg or HLSL program needs to be triggered by the renderer at the right spot in the rendering pipeline. It's not like you load everything and then it magically starts to work. ;)

SF333,

thanks for the invitation. Maybe I can figure something from that code, if I find the time to look into it, but it won't be an easy task.
=Tempest=
DBB Ace
DBB Ace
Posts: 47
Joined: Sat Aug 12, 2006 9:26 am

Post by =Tempest= » Tue Aug 22, 2006 8:26 pm

3D cockpit? Hell yes. 3D cockpits can respond to enviornmental changes, like shadows and coloring, can be tilted, and also can be MUCH more realistic than Descent's current answer. I've seen the effect in other games and it rocks. We should at least have a better looking cockpit than we have now.
Weyrman
DBB Ace
DBB Ace
Posts: 163
Joined: Thu Oct 06, 2005 5:40 pm
Location: Brisbane Australia

Post by Weyrman » Tue Aug 22, 2006 8:33 pm

Just a hi-res 2d cockpit would be a nice improvement.

Is the current cockpit an image that can be extracted from somewhere? Would making a hi-res one be like making hi-res textures?
Pilot from Oz
User avatar
Aus-RED-5
DBB Friend
DBB Friend
Posts: 1604
Joined: Fri Apr 23, 2004 7:27 am
Location: Adelaide, South Australia
Contact:

Post by Aus-RED-5 » Tue Aug 22, 2006 9:12 pm

Weyrman wrote:Just a hi-res 2d cockpit would be a nice improvement.

Is the current cockpit an image that can be extracted from somewhere? Would making a hi-res one be like making hi-res textures?
I have thought about doing one, but I have to much going on to even worry about it.

You can extract the cockpit from the hog file using DTX2.
Just remember.
Once you finish making a higher res version of the cockpit.
You might need to get Diedel to make it work with D2X-XL. ;)
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Wed Aug 23, 2006 2:45 am

Hey, hold it! :)

The cockpit stuff belongs to the suggestions thread. ;)
User avatar
Aus-RED-5
DBB Friend
DBB Friend
Posts: 1604
Joined: Fri Apr 23, 2004 7:27 am
Location: Adelaide, South Australia
Contact:

Post by Aus-RED-5 » Wed Aug 23, 2006 3:19 am

Please feel free to move it Diedel. ;)

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

Post by Diedel » Wed Aug 23, 2006 1:01 pm

I can split threads, but I don't think I can join them. ;)
pATCheS
DBB Ace
DBB Ace
Posts: 187
Joined: Sat Apr 03, 2004 9:12 pm
Contact:

Post by pATCheS » Mon Sep 04, 2006 2:21 am

Pixel shaders can only operate on a fixed pixel location and any texture input. Thus, a warpy effect like with the Strider's large cannon has to be done by first rendering relevant parts of the scene to a texture (render-to-texture, RTT). From there it's a \"simple\" matter of writing a shader to perturb the texture coordinates appropriately. It's not worth the effort imo because the code needed wouldn't be very reusable for other effects, and it's a lot of work for something so simple. Like shadow volumes, it would create more problems than it's worth.

Specular lighting is a direct reflection of light, but generally with enough distortion that you can't really see it as a reflection, but rather as a blur. Examples of specular reflection in the real world are a surface with raindrops on it, most plastics, and liquids. Specular lighting/mapping wouldn't be terribly difficult, getting the artwork for it would be the challenge. Specular mapping is really only for \"masking\" the specular effect, or controlling its intensity on a per-texel basis rather than by using only a specular power.

There are shader prototyping programs available that let you toy with shaders to get a better idea of how they work. ATI's RenderMonkey readily comes to mind as an excellent tool (yes, it works on NVIDIA cards, though it ran slow with my ex-6800 Ultra with certain drivers). You should also look for flow diagrams to see where vertex and pixel shaders fit in the picture. Here's an okay one that I found just now: http://web.archive.org/web/200503082011 ... p?pipeline And the Wiki article on the matter: http://en.wikipedia.org/wiki/Shader
User avatar
Kyouryuu
DBB Alumni
DBB Alumni
Posts: 5775
Joined: Fri Apr 30, 1999 2:01 am
Location: Isla Nublar
Contact:

Post by Kyouryuu » Mon Sep 04, 2006 11:25 am

I think if you want to update the materials system, start with the basics. Specularity is a big one and so is emissive. Those are probably the two biggest "bang for the buck" improvements in terms of materials. Under specularity, of course, metal can be shiny. And, with emissive, lights can actually appear to glow, instead of just being fullbright textures. I can imagine how cool that would look, especially with textures like the "reactor veins."

Descent already has decent opacity support. Sure, it's only "on" or "off," but I think that's already more than Descent 3 did. :lol:
AverageJoe wrote:Does Milkshape3D have any kind of support for .oof?
I believe it does, but not by default. PlanetDescent isn't up right now, but I think they had some kind of OOF or ORF exporter for MS3D. But I could be wrong.
User avatar
Dynamite
DBB Ace
DBB Ace
Posts: 40
Joined: Sun Nov 27, 2005 9:20 pm
Location: EVERYWHERE!!!!! :o

Post by Dynamite » Mon Sep 04, 2006 1:22 pm

It would be great if there were support for hi-poly robot models, not just a mega missile and a pyro.

It would also be great if there were WAV/MP3/OGG support. :oops: :idea: :D :o :shock:

And, does Blender have OOF support? If so, where is it? I'd like to know. :)
"If you vote for me, all of your wildest dreams will come true." -Pedro Sanchez,Napoleon Dynamite
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Mon Sep 04, 2006 2:44 pm

Support for hires bots is present already, as D2X-XL can read and render OOF models. All I need to do is to add animation code for moving robot parts.
User avatar
Kyouryuu
DBB Alumni
DBB Alumni
Posts: 5775
Joined: Fri Apr 30, 1999 2:01 am
Location: Isla Nublar
Contact:

Post by Kyouryuu » Mon Sep 04, 2006 7:31 pm

I don't think Blender can do OOF. That was the first thing I tried when I needed to make an OOF and I couldn't find anything that would let me do it. As near as I can tell, Blender doesn't export to the specific 3DSMax format needed by most converters.
User avatar
Dynamite
DBB Ace
DBB Ace
Posts: 40
Joined: Sun Nov 27, 2005 9:20 pm
Location: EVERYWHERE!!!!! :o

Post by Dynamite » Mon Sep 04, 2006 8:28 pm

That blows (the OOF converter thing). :(

But D2X-XL still doesn't have WAV/MP3/WMA support, right? I'd like to see it added because I'd like to include the awesome D1 MP3 by Deft Flux into this D2 singleplayer level I'm building (Total Factor, you can find it on the PlanetDescent forums under \"A D2 Singleplayer Project\" in the Descent Levels/MODs forum) because I think it would definitely fit in with the level.
"If you vote for me, all of your wildest dreams will come true." -Pedro Sanchez,Napoleon Dynamite
User avatar
Aus-RED-5
DBB Friend
DBB Friend
Posts: 1604
Joined: Fri Apr 23, 2004 7:27 am
Location: Adelaide, South Australia
Contact:

Post by Aus-RED-5 » Mon Sep 04, 2006 9:01 pm

Dynamite wrote:But D2X-XL still doesn't have WAV/MP3/WMA support, right? I'd like to see it added because I'd like to include the awesome D1 MP3 by Deft Flux into this D2 singleplayer level I'm building (Total Factor, you can find it on the PlanetDescent forums under "A D2 Singleplayer Project" in the Descent Levels/MODs forum) because I think it would definitely fit in with the level.
Diedel is requesting that all suggestions or features request to be posted at the SF.net site.

However, you can still talk about it here, but if you really want Diedel to add your idea/s.
I'd suggest posting it at the SourceForge.net/D2X-XL site under the Feature Requests section.

Thanks. :)

Aus-RED-5
User avatar
Dynamite
DBB Ace
DBB Ace
Posts: 40
Joined: Sun Nov 27, 2005 9:20 pm
Location: EVERYWHERE!!!!! :o

Post by Dynamite » Mon Sep 04, 2006 9:03 pm

It's been posted here before, though, and a long time ago, too. :cry:
"If you vote for me, all of your wildest dreams will come true." -Pedro Sanchez,Napoleon Dynamite
User avatar
Aus-RED-5
DBB Friend
DBB Friend
Posts: 1604
Joined: Fri Apr 23, 2004 7:27 am
Location: Adelaide, South Australia
Contact:

Post by Aus-RED-5 » Mon Sep 04, 2006 9:27 pm

Dynamite wrote:It's been posted here before, though, and a long time ago, too. :cry:
That was then, this is now.

This time you posted on the SF.net, so you'll have to wait in line and see what happens from there.

He won't forget about you. ;)
User avatar
Dynamite
DBB Ace
DBB Ace
Posts: 40
Joined: Sun Nov 27, 2005 9:20 pm
Location: EVERYWHERE!!!!! :o

Post by Dynamite » Mon Sep 04, 2006 10:09 pm

Hopefully, he won't... :roll:
"If you vote for me, all of your wildest dreams will come true." -Pedro Sanchez,Napoleon Dynamite
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Sep 05, 2006 8:12 am

I don't, but it has rather low priority. ;)
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Sep 05, 2006 8:46 am

Kyouryuu wrote:Descent already has decent opacity support. Sure, it's only "on" or "off," but I think that's already more than Descent 3 did. :lol:
Descent 2 even supports transparency (in roughly 3% steps) using cloaked textures.
User avatar
Kyouryuu
DBB Alumni
DBB Alumni
Posts: 5775
Joined: Fri Apr 30, 1999 2:01 am
Location: Isla Nublar
Contact:

Post by Kyouryuu » Tue Sep 05, 2006 10:51 am

Ah, yes. That's also right. You can see that when you hit switches the \"open walls\" and see how they fade out

I don't know if you can incorporate that into \"normal\" textures though (like grating), which is what I was talking about. :lol:
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Sep 05, 2006 11:46 am

You can create cloaked textures and assign a cloak value to them.
User avatar
Dynamite
DBB Ace
DBB Ace
Posts: 40
Joined: Sun Nov 27, 2005 9:20 pm
Location: EVERYWHERE!!!!! :o

Post by Dynamite » Tue Sep 05, 2006 12:48 pm

Or transparent ones for that matter. :)
"If you vote for me, all of your wildest dreams will come true." -Pedro Sanchez,Napoleon Dynamite
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel » Tue Sep 05, 2006 3:10 pm

'Cloaked' = Descent speak for 'transparent'.
User avatar
Dynamite
DBB Ace
DBB Ace
Posts: 40
Joined: Sun Nov 27, 2005 9:20 pm
Location: EVERYWHERE!!!!! :o

Post by Dynamite » Tue Sep 05, 2006 3:11 pm

Ahhh... it's the same thing. :)
"If you vote for me, all of your wildest dreams will come true." -Pedro Sanchez,Napoleon Dynamite
Post Reply