Author Topic: The DX8.1 Engine Upgrade  (Read 21849 times)

0 Members and 1 Guest are viewing this topic.

The DX8.1 Engine Upgrade
Basically I'm creating this so we can discuss the idea of upgrading the graphics engine with DX8.1 functionality in a proper thread of its own.

As I see it, this is a good idea but also a huge one and I do not claim to have intricate knowledge of DirectX. Assuming we go through with this though, we need a definite plan on how to do it since we are talking about a very major upgrade. I am imagining preferably that we would document how the existing engine works first before going through with any updates.

Here are a few of my thoughts on what we would be aiming to put in with such an idea:

1) Hardware T&L - FS2 would become insanely fast with this because of the fact that all the models are non-deforming meshes which apparently handle very fast with hardware T&L
2) Overall faster rendering - DaveB claims that there's room for optimization in it, which means we could have more and higher quality models.
3) Some advanced features, maybe allowing multiple maps so we could have specular highlighting and such?
4) Pointsprites for the particle system as mentioned in another thread
5) Antialiasing support built into the engine. 2x antialiasing is handled rather well by all of the Geforce series cards - even the 256's. 3x (Quincunx) makes things look unbelievable, but not everyone has access to this.

These are just some thoughts, so would anyone care to comment on the feasibility and or add to the list? Keep in mind I haven't added things like pixel and vertex shaders since hardware support for these is very limited (GF3 and 4) and I'm unsure of how they handle with only software (I'm imagining they have a large performance hit)

 

Offline Bobboau

  • Just a MODern kinda guy
    Just MODerately cool
    And MODest too
  • 213
The DX8.1 Engine Upgrade
I think the big question is,
do we have anyone here capable of doing this?
Bobboau, bringing you products that work... in theory
learn to use PCS
creator of the ProXimus Procedural Texture and Effect Generator
My latest build of PCS2, get it while it's hot!
PCS 2.0.3


DEUTERONOMY 22:11
Thou shalt not wear a garment of diverse sorts, [as] of woollen and linen together

 
The DX8.1 Engine Upgrade
That's a given.

 

Offline Martinus

  • Aka Maeglamor
  • 210
    • Hard Light Productions
The DX8.1 Engine Upgrade
Given that AFAIK DX9 will be released to the general public sometime soon would it not be advisable to hold off for a bit and upgrade to it?

 
The DX8.1 Engine Upgrade
Not necessarily, as most of the new functionality will be beyond the hardware of most people. However, since little will be done before it is released I'd say we'll probably end up going DX9 anyway.

 

Offline Martinus

  • Aka Maeglamor
  • 210
    • Hard Light Productions
The DX8.1 Engine Upgrade
Quote
Originally posted by ##UnknownPlayer##
Not necessarily, as most of the new functionality will be beyond the hardware of most people. However, since little will be done before it is released I'd say we'll probably end up going DX9 anyway.


Yeah, I was just considering that we should future proof this thing as much as we can :)

 

Offline phreak

  • Gun Phreak
  • 211
  • -1
The DX8.1 Engine Upgrade
we can also do vertex and pixel shading with DX8

looks like im going to run up to the bookstore and buy a DX8 programming book
Offically approved by Ebola Virus Man :wtf:
phreakscp - gtalk
phreak317#7583 - discord

 

Offline Inquisitor

The DX8.1 Engine Upgrade
In the same way the DX5 runs on DX8 enabled computers, I think we can future proff it that way.

I am fond of 8 but can go either way.

I would add, that not only update the graphics, but also update the control code, and possibly the sound.

I have found that rewriting say, joystick controls from DX-whatever to DX 8 is pretty straightforward. so, that MIGHT be a good place to start, for people wanting to get their feet wet with DX8.

Thoughts?
No signature.

 

Offline JC Denton

  • Node For Me
  • 27
The DX8.1 Engine Upgrade
I say work on the simple stuff (like input) that doesn't have massive changes from version to version at first, in DX8, so we can get used to programming in it.  Then when DX9 is released someone can go back over whatever we upgraded to DX8, bring it up to 9, and the remainder of the team can work on something like sound or graphics and upgrade that to DX9.

Sound like a plan?
"I condemn false prophets, I condemn the effort to take away the power of rational decision, to drain people of their free will -- and a hell of a lot of money in the bargain. Religions vary in their degree of idiocy, but I reject them all. For most people, religion is nothing more than a substitute for a malfunctioning brain."  - Gene Roddenberry

"Democracy substitutes election by the incompetent many for appointment by the corrupt few." - George Bernard Shaw

 

Offline Sandwich

  • Got Screen?
  • 213
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Brainzipper
The DX8.1 Engine Upgrade
Quote
Originally posted by Inquisitor
I would add, that not only update the graphics, but also update the control code, and possibly the sound.

I have found that rewriting say, joystick controls from DX-whatever to DX 8 is pretty straightforward. so, that MIGHT be a good place to start, for people wanting to get their feet wet with DX8.


The one game where the control customizability is extremely comprehensive and you wanna change it?!?! :wtf:
SERIOUSLY...! | {The Sandvich Bar} - Rhino-FS2 Tutorial | CapShip Turret Upgrade | The Complete FS2 Ship List | System Background Package

"...The quintessential quality of our age is that of dreams coming true. Just think of it. For centuries we have dreamt of flying; recently we made that come true: we have always hankered for speed; now we have speeds greater than we can stand: we wanted to speak to far parts of the Earth; we can: we wanted to explore the sea bottom; we have: and so  on, and so on: and, too, we wanted the power to smash our enemies utterly; we have it. If we had truly wanted peace, we should have had that as well. But true peace has never been one of the genuine dreams - we have got little further than preaching against war in order to appease our consciences. The truly wishful dreams, the many-minded dreams are now irresistible - they become facts." - 'The Outward Urge' by John Wyndham

"The very essence of tolerance rests on the fact that we have to be intolerant of intolerance. Stretching right back to Kant, through the Frankfurt School and up to today, liberalism means that we can do anything we like as long as we don't hurt others. This means that if we are tolerant of others' intolerance - especially when that intolerance is a call for genocide - then all we are doing is allowing that intolerance to flourish, and allowing the violence that will spring from that intolerance to continue unabated." - Bren Carlill

 

Offline Inquisitor

The DX8.1 Engine Upgrade
Not the customization itself, the calls to the DX libs.

A difference, ya know :)
No signature.

 

Offline Bobboau

  • Just a MODern kinda guy
    Just MODerately cool
    And MODest too
  • 213
The DX8.1 Engine Upgrade
so who's gona be doing this, I'd take a shot at it but I can't even DL the SDK
Bobboau, bringing you products that work... in theory
learn to use PCS
creator of the ProXimus Procedural Texture and Effect Generator
My latest build of PCS2, get it while it's hot!
PCS 2.0.3


DEUTERONOMY 22:11
Thou shalt not wear a garment of diverse sorts, [as] of woollen and linen together

 

Offline Sandwich

  • Got Screen?
  • 213
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Brainzipper
The DX8.1 Engine Upgrade
Quote
Originally posted by Inquisitor
Not the customization itself, the calls to the DX libs.

A difference, ya know :)


:rolleyes: Again, we really need a sarcasm tag... :D
SERIOUSLY...! | {The Sandvich Bar} - Rhino-FS2 Tutorial | CapShip Turret Upgrade | The Complete FS2 Ship List | System Background Package

"...The quintessential quality of our age is that of dreams coming true. Just think of it. For centuries we have dreamt of flying; recently we made that come true: we have always hankered for speed; now we have speeds greater than we can stand: we wanted to speak to far parts of the Earth; we can: we wanted to explore the sea bottom; we have: and so  on, and so on: and, too, we wanted the power to smash our enemies utterly; we have it. If we had truly wanted peace, we should have had that as well. But true peace has never been one of the genuine dreams - we have got little further than preaching against war in order to appease our consciences. The truly wishful dreams, the many-minded dreams are now irresistible - they become facts." - 'The Outward Urge' by John Wyndham

"The very essence of tolerance rests on the fact that we have to be intolerant of intolerance. Stretching right back to Kant, through the Frankfurt School and up to today, liberalism means that we can do anything we like as long as we don't hurt others. This means that if we are tolerant of others' intolerance - especially when that intolerance is a call for genocide - then all we are doing is allowing that intolerance to flourish, and allowing the violence that will spring from that intolerance to continue unabated." - Bren Carlill

 

Offline Inquisitor

The DX8.1 Engine Upgrade
Sandwhich: Thta's what the ";)" is for :)
No signature.

 
The DX8.1 Engine Upgrade
Anyways...

Probably one of the most important things we could do if we start tinkering with the graphics engine would be to draw up a diagram on its functioning. We need to document this thing first before we start to mess around with it. When I get time I might start playing around with it in Visio and see what I can get - if anything useful comes out I'll put it up.

 

Offline Sandwich

  • Got Screen?
  • 213
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Brainzipper
The DX8.1 Engine Upgrade
Quote
Originally posted by Inquisitor
Sandwhich: Thta's what the ";)" is for :)


Point taken. :)
SERIOUSLY...! | {The Sandvich Bar} - Rhino-FS2 Tutorial | CapShip Turret Upgrade | The Complete FS2 Ship List | System Background Package

"...The quintessential quality of our age is that of dreams coming true. Just think of it. For centuries we have dreamt of flying; recently we made that come true: we have always hankered for speed; now we have speeds greater than we can stand: we wanted to speak to far parts of the Earth; we can: we wanted to explore the sea bottom; we have: and so  on, and so on: and, too, we wanted the power to smash our enemies utterly; we have it. If we had truly wanted peace, we should have had that as well. But true peace has never been one of the genuine dreams - we have got little further than preaching against war in order to appease our consciences. The truly wishful dreams, the many-minded dreams are now irresistible - they become facts." - 'The Outward Urge' by John Wyndham

"The very essence of tolerance rests on the fact that we have to be intolerant of intolerance. Stretching right back to Kant, through the Frankfurt School and up to today, liberalism means that we can do anything we like as long as we don't hurt others. This means that if we are tolerant of others' intolerance - especially when that intolerance is a call for genocide - then all we are doing is allowing that intolerance to flourish, and allowing the violence that will spring from that intolerance to continue unabated." - Bren Carlill

 

Offline RandomTiger

  • Senior Member
  • 211
The DX8.1 Engine Upgrade
One significant thing from going to DX5 to DX8 or 9 is that the use of direct draw has changed. In DX8 you are not mean to use direct draw to make a 3D app but in DX5 you had to.

Also I think its possible to have different direct systems at different versions. If so the input and sound need not change unless problems arrise but direct3D can be upgraded so we can have nice bump mapping and vertex shading and stuff.

 

Offline Sandwich

  • Got Screen?
  • 213
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Brainzipper
The DX8.1 Engine Upgrade
Quote
Originally posted by RandomTiger
If so the input and sound need not change unless problems arrise but direct3D can be upgraded so we can have nice bump mapping and vertex shading and stuff.


I think that one of the cheapest (performance-wise) yet impressive graphical improvements would be bump-mapping. Even if the standard POF doesn't come with bump-map info, amazing effects can be attained by taking the lightness value of any texture and appling that as the bump-map for that texture - especially on Vasudan ships. ;7
SERIOUSLY...! | {The Sandvich Bar} - Rhino-FS2 Tutorial | CapShip Turret Upgrade | The Complete FS2 Ship List | System Background Package

"...The quintessential quality of our age is that of dreams coming true. Just think of it. For centuries we have dreamt of flying; recently we made that come true: we have always hankered for speed; now we have speeds greater than we can stand: we wanted to speak to far parts of the Earth; we can: we wanted to explore the sea bottom; we have: and so  on, and so on: and, too, we wanted the power to smash our enemies utterly; we have it. If we had truly wanted peace, we should have had that as well. But true peace has never been one of the genuine dreams - we have got little further than preaching against war in order to appease our consciences. The truly wishful dreams, the many-minded dreams are now irresistible - they become facts." - 'The Outward Urge' by John Wyndham

"The very essence of tolerance rests on the fact that we have to be intolerant of intolerance. Stretching right back to Kant, through the Frankfurt School and up to today, liberalism means that we can do anything we like as long as we don't hurt others. This means that if we are tolerant of others' intolerance - especially when that intolerance is a call for genocide - then all we are doing is allowing that intolerance to flourish, and allowing the violence that will spring from that intolerance to continue unabated." - Bren Carlill

 

Offline Bobboau

  • Just a MODern kinda guy
    Just MODerately cool
    And MODest too
  • 213
The DX8.1 Engine Upgrade
we could make a new BUMP chunck for holding bump map names
Bobboau, bringing you products that work... in theory
learn to use PCS
creator of the ProXimus Procedural Texture and Effect Generator
My latest build of PCS2, get it while it's hot!
PCS 2.0.3


DEUTERONOMY 22:11
Thou shalt not wear a garment of diverse sorts, [as] of woollen and linen together

 
The DX8.1 Engine Upgrade
Do both - make it look for bump maps and use them if found, otherwise take the lightness value above a certain threshold. It would be a really cool effect, but it is graphically intensive. I'll look into this.