Author Topic: Mild flaming about D3D and OGL (Was: My thoughts on D3D)  (Read 7108 times)

0 Members and 1 Guest are viewing this topic.

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Mild flaming about D3D and OGL (Was: My thoughts on D3D)
Ok, as most know, D3D support is being ripped out of the base from 3.6.10 on.  This will allow opengl to be further optimized and improve the gameplay experience for the vast majority of gamers with the hardware and drivers that can support it.  However, this isn't everyone, and there's still a significant number of users who use integrated chipsets such as Intel's, or don't have updated drivers, and possibly can't because of lack of privileges, stubborn parents, etc.  We already hear it often enough from these people that the game doesn't work, it's not posted anywhere that the game requires OpenGL yet, and won't be clearly stated in the future unless someone attempts to write up some sort of requirements for it.  Gutting D3D altogether will be leaving these people with no other way to play the game.

First, I'm for the gutting.  I want the optimizations and the focus to be on OpenGL.  I don't see the point in wasting time on a one-platform API for a cross-platform game, when for most there's no difference between the two.  But, what can we do for these other people with shoddy/no OpenGL support?

The best option I can think of is that we need to have some sort of OpenGL->D3D wrapper.  Sadly, there's not a single free wrapper for this in a usable state right now.  SciTech has GLDirect5, but it costs money, and even if you're not the most moral computer user in the world it's still difficult to find a copy of it.  However, their driver is based off the Mesa3d codebase, and supposedly they have given their work back to the mesa project.  Mesa3D used to have a OpenGL driver for D3D, essentially being a wrapper, but it's woefully outdated, and they don't seem to have integrated anything that SciTech gave them into the codebase yet.

Where I'm going with this is that I think Mesa3D could be the solution to our problems.  It's just not ready yet.  We need to encourage/help them to get the D3D driver for OpenGL updated to a modern standard, at least DX8, and then it should serve as a viable alternative for those with no other OpenGL support on their cards.  This could also serve as an alternative on Vista to the included OpenGL to D3D wrapper that microsoft includes by default.  It would be free, and so could be recommend, or possibly distributed with the SCP (to the extent that OpenAL is 'distributed' with it, at least).  If we were to have a member of the community willing to work on getting D3D support, I think this would be a better option for him to work on than going back and jamming D3D back into the codebase.  I'm sure Mesa would like the help, and the publicity a project like this could get for them.  Any thoughts?

Edit:  Subject changed to reflect path that this thread took.  Note that I don't really care anymore, but if people want to keep blowing off steam here about D3D and OGL, feel free to leave it unlocked.
« Last Edit: October 24, 2007, 03:00:38 pm by chief1983 »
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
i can't think of a single video card that has all the features required to support this game in EITHER API that the drivers for doesn't include openGL
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Shouldn't some of the more recent Intel chipsets be able to do it, theoretically?
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline DaBrain

  • Screensniper
  • 212
    • Shadows of Lylat board
OpenGL is enough. I don't think wrappers will do any good.
We'll only end up with horrible performance and a lot of problems.


Either we find someone to fix the D3D code, or we forget about it.

It looks like there is a minimal number of players that can't play in OpenGL. (like Mustang19)
But he'll get a new PC soon. And I bet  lot of them will eventually get a better PC or gfx card.

In the end you'd end up with a complicated hack-ish fix, that is used by a few people now, but nobody in less than one year.

[X]No
--------------------------------------------------
SoL is looking for a sound effect artist
Please PM me in case you want to apply
---------------------------------
Shadows of Lylat - A Freespace 2 total conversion
(hosted by Game-Warden)
----------------------------------

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Why no one?  You think the integrated chipset companies are all magically going to have working OpenGL drivers by then?  I highly doubt it.  There are more people than you may realize who have tried to run this game only to find out that their computer doesn't run it very well.  You don't see them around here, because, well, their computer can't run it so what's there to do?  If anything there are more people every day who try this game out, and who abandon it because they can't run it.  I'm not suggesting that any real amount of current resources dedicate themselves to this, I'm really just saying that if D3D support did become a priority, I would almost rather see it using the Mesa D3D driver than putting the D3D code back into the engine.  It would give us a good rep and notice within the FOSS community, and possibly pull other FOSS developers here.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline DaBrain

  • Screensniper
  • 212
    • Shadows of Lylat board
New integrated graphic chips won't have a problem with FSO.

Only the old outdated ones have driver issues. Gfx chips that are hardly fast enough to start FSO and will have real trouble as the engine and the content improves more. Also... everybody with a chip like that will most likely upgrade at some point, or just isn't interested in games enough to buy a decent 3d accelerator.

Imho we made a mistake in the past. We should have looked into the future and not so much into the past.
We tried to support low-end machnies that much, that the progress of the graphics has been a bit slow.


People have to accept that the game is moving forward and will stop working on older machines at one point.


Also, if the game doesn't run on my PC, which should be able to run it (atm), I'll post it as bug in Mantis, so it can be fixed.
--------------------------------------------------
SoL is looking for a sound effect artist
Please PM me in case you want to apply
---------------------------------
Shadows of Lylat - A Freespace 2 total conversion
(hosted by Game-Warden)
----------------------------------

 

Offline ni1s

  • 26
Do we not already know where this discussion ends? D3D isn't supported because nobody supports it.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Right, but if Mesa were to get their D3D driver working again, we'd have D3D support, wouldn't we.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline CP5670

  • Dr. Evil
  • Global Moderator
  • 212
I would say just tell such people to upgrade, considering that there are a number of PCI video cards available for under $30 (less than the cost of most commercial games) that will run FS2 reasonably well. In any case, 3.6.9 will always remain around if they insist on running the game on a GMA.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
I really wish people would stop repeating the same excuses, after they've been refuted in the past already.  There are simply situations in which people can't or won't upgrade, telling them to isn't going to change it, so all that means to us is one less person who can enjoy the game.  Instead of telling people to fix it, I'm just trying to point out that there could be another solution, that doesn't involve telling people their hardware sucks.  Granted, that will probably still happen but at least they wouldn't have to do anything about it to enjoy the game.

Another reason, maybe it would just be nice to have that fallback, in case something happens?  Why limit ourselves if we don't absolutely have to?  I'm not even suggesting that anyone here currently involved in something else actually do this, I'm just throwing it out for future reference.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline Excalibur

  • 28
  • Forsee a new beginning.
Why don't we just leave the older versions available for download so these people can use it if there's no way to upgrade their equipment to support the newer versions?

The apps are only around 10mb max in a .zip/.rar file.
His legacy will last until the beginning.

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
First off, Mesa3D D3D support isn't a solution to anything, so just drop that thought right now.

Second, D3D hasn't been removed from the engine, it's simply disabled since no one around here will work on it.  We can't keep upgrading the OpenGL code without breaking the D3D code, which holds back the progress of all graphics and performance upgrades.  If you want all of the new graphics features then the choice is simple: we don't compile in D3D support, or somebody works on the D3D code full-time to keep it up to date.  There is no point in complaining about it, we simply have no other option.  D3D support in builds must be disabled.  It is a serious drain on stability, performance, developer time, and severe reduction in graphics features.  If you find someone to work on the D3D code then we will quite readily go the other route, re-enable D3D, and that's that.  There are about 4 people working on a D3D 9 port right now, but that is totally useless to us since not one of them seems interested in actually supporting the code once they are done with it.

But if you really want D3D support that badly (because you aren't able/willing to get OpenGL working) then just use an older build, since all of them are readily available going all the way back to at least 3.5.

Third, Intel IGP cards and drivers are getting significant developer resources from Intel.  The hardware is quickly developing all of the support that we need, and the driver quality/support is progressing rapidly.  Intel is making a low-end, cost effective video card, and that simply isn't going to compare with high-end ATI or NVIDIA cards.  But the low-end market isn't exactly what it used to be either, since even the lowest requirements are far above GeForce2 levels at this point.  Remember that it's not just games that Intel has an interest in here, modern operating systems have an ever increasing need for good hardware 3D support for general tasks.  OS X makes considerable use of hardware OpenGL acceleration for basic desktop features, modern Linux desktops make heavy use to 3D hardware, and Vista does the same thing with D3D.  Apple is using Intel IGP cards in new Macs, which means that the hardware has to be capable to doing what they need, and overall driver support improves as a result.  I have tested and made several small modifications to the OpenGL code to address issues with Intel cards, and I know for a fact that the code works fine on the hardware, so long as you have good drivers.  I don't think that anyone has seriously approached me about an Intel related problem in the game that wasn't solved with a quick driver update.

We do support Intel cards models 915 or higher, so if anyone has a problem with them (that isn't simply a performance issue) then we will work with them to resolve the problem.  Everyone keeps saying that we don't support Intel cards, but that simply isn't true.

Perhaps once everyone gets their facts straight we can stop rehashing this conversation.

 

Offline CP5670

  • Dr. Evil
  • Global Moderator
  • 212
Quote
I really wish people would stop repeating the same excuses, after they've been refuted in the past already.  There are simply situations in which people can't or won't upgrade, telling them to isn't going to change it, so all that means to us is one less person who can enjoy the game.

The only valid excuse I can think of is if they're on a laptop that cannot be upgraded. However, if as Taylor says it simply takes a driver update, that should be an end to the issue. If they can't even do that for some reason, there is little we can do about it. The number of such cases should be vanishingly small, and as I said earlier, 3.6.9 is still there for these few people. We shouldn't spend time worrying about something like "stubborn parents," who may as well not allow the user to play FS2 at all. :p

I know that numerous retail games from the last two years will fail to run properly at all on those GMA chips, which are not intended for gaming, so it isn't like FS2's current hardware support is inferior in any way.

 
But the low-end market isn't exactly what it used to be either, since even the lowest requirements are far above GeForce2 levels at this point. 

And a Geforce 2 can handle basic FS SCP without major hiccups.  I was using one for ages until this spring.
That's cool and ....disturbing at the same time o_o  - Vasudan Admiral

"Don't play games with me. You just killed someone I like, that is not a safe place to stand. I'm the Doctor. And you're in the biggest library in the universe. Look me up."

"Quick everyone out of the universe now!"

 

Offline jr2

  • The Mail Man
  • 212
  • It's prounounced jayartoo 0x6A7232
    • Steam
...They'll always be able to play 3.6.9 and / or Retail.... the shiny graphics they see here should convince them to upgrade when it becomes possible for them to do so.

First off, Mesa3D D3D support isn't a solution to anything, so just drop that thought right now.

While I respect you position as one of the primary coders around here, would you mind throwing us lowly slobs some, say, proof?  I'm sure it's true.  But I'd like to be able to wrap my 16-bit mind around it if possible.  :p

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
First off, Mesa3D D3D support isn't a solution to anything, so just drop that thought right now.

While I respect you position as one of the primary coders around here, would you mind throwing us lowly slobs some, say, proof?  I'm sure it's true.  But I'd like to be able to wrap my 16-bit mind around it if possible.  :p
Even a basic look into what it is will tell you all that you need to know:
 - it has received no development since 1999
 - it was created for Win 9x, may not work on Win2000/XP/Vista
 - it only had partial capabilities (no mipmap support, etc)
 - it was DirectX 6 only

It's nothing short of complete useless.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
You're right, the current codebase is pretty shoddy, since updating it from DX6 to DX8 or DX9 would probably require a complete rewrite due to changes in the API.  So I agree, the current D3D driver codebase is quite useless.  But, Mesa3D itself has been updated, and is quite a decent little driver.  I was more referring to getting them to do the overhaul needed to bring the D3D driver back up to a modern standard.  If that were to happen somehow, then is the idea of using it still useless?
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
I seriously doubt they would do that.  Aside from the initial commit of the D3D code in 1998, it only ever received one change, which was in November 1999.   In other words, it was never actively developed in the first place.  It's fairly obvious that the Mesa3D team have absolutely no interest in that bit of code.

Regardless, we don't need a hack like this anyway.  These translation APIs never work out well, as history proves, and it still requires someone to actively develop the code.  If the Mesa3D team didn't give it complete support and make it full featured then we would have to work on it ourselves, thereby making the point moot.

What we need is for someone to join the project and work on the D3D code, period.  Nothing short of that is really going to help us.

 
I think it would be more helpful to do a community poll and see how many people actually have an integrated cards. There was a recent discussion on GW: a few people like Turey and Takashi technically have slower processors than mine, but I'm just about the only person here who would be crippled by an OpenGL transition, and by the time 3.6.7 is released I'll have a new computer anyway. Don't limit the SCP's potential by trying to support hardware made five years ago. There must be about 10-20 people in the world who play the lastest FS Open, regularly, without OpenGL support.

So coming from a person with an Intel card, I say no to Chief1983, but thanks for the thought.

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
There must be about 10-20 people in the world who play the lastest FS Open, regularly, without OpenGL support.
The latest FSO builds, anything from this year (excluding the official 3.6.9 release itself), only have OpenGL support.  D3D was disabled in the code earlier in the year.  I don't even think that it will compile at this point.  The transition to OpenGL-only builds happened months ago.  The only thing that's limiting the engine's graphical potential is D3D, which is something that we remedied by disabling D3D support.

And there are far more people using integrated cards than that.  The number is in the hundreds at least.  Integrated cards aren't old though, they are simply low-end, and we do officially support most of them.  Plus, if we didn't support cards made five years ago or more, our use base would probably drop by more than half.