Author Topic: Which Graphics API?  (Read 3392 times)

Offline Black Patriot

  • Admiral
  • ****
  • Posts: 1019
  • Cookies: 3
  • Member
Re: Which Graphics API?
« Reply #60 on: April 11, 2011, 06:21:58 PM »
Hmmm, I think the reasoning has to be a little more robust than "I don't know anyone still running a DX9 card so we should forget about that".

There are plenty of sources for very reliable statistics on this. Steam's latest hardware survey shows that use of PS2 and PS3 hardware is really dropping off now, but it still leaves the two varieties of PS3 with an 8% share of gaming PC's. I think many people would see that as a pretty big chunk of the market to completely drop support for.

From what I've heard almost every modern game, at least those by the major game companies or programed on a modern game engine (UE3 & CE3 for example), are working directly with the hardware and bypassing the API. My basic understanding is that using the API is only done when you can't access the hardware directly, e.g. for launch titles where there isn't time to get it right. The reason that DirectX is so necessary for PC games is because of the sheer amount of different hardware configurations, working directly with the hardware through the drivers would get very difficult very quickly.

Short version: DirectX and OpenGL aren't used for anything other than launch titles, indie games (not to pay out indie games, there are lots of original games coming out of the indie scene), and shovelware on consoles.

Also, Valve's support for the PS3 has previously been pretty lackluster, the Orange Box wasn't ported in house and was barely supported after release. Portal 2 is the first game that's been developed for the PC, 360 and PS3 in house, and the Steam integrating with the Playstation Network indicates that they're hoping that the PS3 will become a far bigger part of their market.
Gigabyte GA-X58A-UD3R
Intel Core i7-950 @ 3.6 GHz
12GiB G.Skill RAM
Gigabyte GTX 680 2048MB
128GB Kingston SSD (Windows 7 Drive)
64GB Kingston SSD (Windows 8 Drive)
2 x 160GB 7200rpm HDD (RAID 0)
8.2TiB Storage (on File Server)
875W Thermaltake ToughPower XT PSU
46" Samsung Series 6 LED @ 1080p
Logitech Z-5500 THX
Windows 7 Professional x64
Windows 8 Consumer Preview x64

Offline Jon

  • aka Elminster
  • Admiral
  • ****
  • Posts: 1113
  • Cookies: 35
  • Hardpointing and Game Interaction Design
    • StarTrek:Excalibur
Re: Which Graphics API?
« Reply #61 on: April 11, 2011, 07:01:34 PM »
DX API's are pretty important as they allow development of stable software quickly and efficiently, with much less overhead.

Accessing the HW directly effectively means you have to build your own API into the game, which, while it may have the benefit of increased features and felxibility, is both costly and time consuming.
Unless stated otherwise, any views expressed are my own and should not be construed as fact with regard to the game..

ASUS M4A79T Deluxe
AMD Phenom II X4 955
8.0GB Dual-Channel DDR3 @ 668MHz  7-8-8-20
XFX ATI Radeon HD 6970
32GB OCZ-VERTEX SSD
150GB Western Digital WDC Raptor
300GB Western Digital WDC VelociRaptor
Windows 7 Ultimate 64-bit

Offline Mark

  • aka Ignis
  • Project Director
  • Fleet Admiral
  • ******
  • Posts: 3548
  • Cookies: 181
  • Creative Leader
    • Excalibur
Re: Which Graphics API?
« Reply #62 on: April 11, 2011, 07:54:24 PM »
Also, Valve's support for the PS3 has previously been pretty lackluster, the Orange Box wasn't ported in house and was barely supported after release. Portal 2 is the first game that's been developed for the PC, 360 and PS3 in house, and the Steam integrating with the Playstation Network indicates that they're hoping that the PS3 will become a far bigger part of their market.

PS stands for Pixel Shader, not PlayStation. I'm afraid consoles aren't really relevant to the discussion as far as the current plans for Excalibur go anyway.

Offline Black Patriot

  • Admiral
  • ****
  • Posts: 1019
  • Cookies: 3
  • Member
Re: Which Graphics API?
« Reply #63 on: April 11, 2011, 09:52:18 PM »
PS stands for Pixel Shader, not PlayStation. I'm afraid consoles aren't really relevant to the discussion as far as the current plans for Excalibur go anyway.

Ah, I was slightly confused as to why you'd bring up the Playstation when Excalibur isn't being developed for consoles, my mistake.

DX API's are pretty important as they allow development of stable software quickly and efficiently, with much less overhead.

Accessing the HW directly effectively means you have to build your own API into the game, which, while it may have the benefit of increased features and felxibility, is both costly and time consuming.

On PC they're certainly necessary, but the only way for consoles to compete with current PC hardware is for game engines to be designed for direct access to the hardware drivers, something which is far obviously far simpler on a console which has identical hardware on every unit.

As for dropping support for Pixel Shader 2 & 3 I wouldn't say that it's an unreasonable business decision; 8%, while large, isn't a massive amount of customers to lose, especially when compared to the potential benefits of adopting PS4 & 5. Pixel Shader 4 was added to the 8000 series of Nvidia cards and the HD 2400 series from ATI, quite old cards. I would say that it's not unreasonable to expect your customers to be using hardware that's younger than 5 years, which is quite a long time in the PC world, especially for gaming.
Gigabyte GA-X58A-UD3R
Intel Core i7-950 @ 3.6 GHz
12GiB G.Skill RAM
Gigabyte GTX 680 2048MB
128GB Kingston SSD (Windows 7 Drive)
64GB Kingston SSD (Windows 8 Drive)
2 x 160GB 7200rpm HDD (RAID 0)
8.2TiB Storage (on File Server)
875W Thermaltake ToughPower XT PSU
46" Samsung Series 6 LED @ 1080p
Logitech Z-5500 THX
Windows 7 Professional x64
Windows 8 Consumer Preview x64

Offline Michael

  • aka NanoByte
  • Admiral
  • ****
  • Posts: 1928
  • Cookies: 59
  • VFX Leader
Re: Which Graphics API?
« Reply #64 on: April 11, 2011, 10:47:12 PM »
I'm in agreement here for the most part.  Pixel Shader 2 (PS 2.0) has now fallen out of scope mainly due to the development of the shaders getting to a point where we are exceeding Instruction Limits of 2.0 and having to do additional Passes (rendering the same geometry multiple times with different shaders applied) to get the look I want.

Therefore our next logical step is to move to PS 3.0.  With our Texture Spec 2 requiring a heavy demand on PS 2, it doesn't make sense to try and fit that into the game now because of the additional passes to acheive it if the hardware only supports PS 2, then we have probably over-taxed the hardware unless you had a high-end PS 2 card you may get an acceptable frame rate and STILL have to turn off some features like Shadows.

We can stick with PS 3 as the minimum and make the game look great, while utilize more advanced features for our DX 11 Shaders.  That is the direction I would like to take it for now.  This could change as time goes on as well.
MB: GIGABYTE GA-X48-DQ6 775 X48 RT
CPU: Intel Core2 Duo E7500 Wolfdale 2.93GHz 3MB L2 Cache
GFX: SAPPHIRE Radeon HD 3870 512MB 256-bit GDDR4 PCI Express 2.0 x16
RAM: CORSAIR DOMINATOR 2GB (2 x 1GB) DDR2 1066 Dual Channel Kit
HDD: Seagate Barracuda 7200RPM 500GB X 2 in SATA RAID 0 Config

Offline AricwithanA

  • The One and Only
  • Admiral
  • ****
  • Posts: 1168
  • Cookies: 7
  • UI Developer
Re: Which Graphics API?
« Reply #65 on: April 11, 2011, 10:55:37 PM »
I'm in agreement here for the most part.  Pixel Shader 2 (PS 2.0) has now fallen out of scope mainly due to the development of the shaders getting to a point where we are exceeding Instruction Limits of 2.0 and having to do additional Passes (rendering the same geometry multiple times with different shaders applied) to get the look I want.

Therefore our next logical step is to move to PS 3.0.  With our Texture Spec 2 requiring a heavy demand on PS 2, it doesn't make sense to try and fit that into the game now because of the additional passes to acheive it if the hardware only supports PS 2, then we have probably over-taxed the hardware unless you had a high-end PS 2 card you may get an acceptable frame rate and STILL have to turn off some features like Shadows.

We can stick with PS 3 as the minimum and make the game look great, while utilize more advanced features for our DX 11 Shaders.  That is the direction I would like to take it for now.  This could change as time goes on as well.

Since tech does keep evolving (no pun intended), I hope we don't get stuck in a temporal loop of update, adding time...update done..new tech...update again...adding time...lol
"The work to which we have set ourselves is the liberating of the imagination, the harnessing of imagination to humankind's deepest sense of creativity. -The Sisterhood's Credo

Offline Michael

  • aka NanoByte
  • Admiral
  • ****
  • Posts: 1928
  • Cookies: 59
  • VFX Leader
Re: Which Graphics API?
« Reply #66 on: April 11, 2011, 11:29:49 PM »
I don't think so... this is a matter of going with the technology that can meet our requirments.  I mean I can keep developing Pixel Shader 2 Shaders for the engine and still have the game look great... even the same as the PS 3 shaders, it's just that we reduce efficiency when we could be using PS 3 shaders to do one pass instead of 2 or 3 passes.

MB: GIGABYTE GA-X48-DQ6 775 X48 RT
CPU: Intel Core2 Duo E7500 Wolfdale 2.93GHz 3MB L2 Cache
GFX: SAPPHIRE Radeon HD 3870 512MB 256-bit GDDR4 PCI Express 2.0 x16
RAM: CORSAIR DOMINATOR 2GB (2 x 1GB) DDR2 1066 Dual Channel Kit
HDD: Seagate Barracuda 7200RPM 500GB X 2 in SATA RAID 0 Config

Offline AricwithanA

  • The One and Only
  • Admiral
  • ****
  • Posts: 1168
  • Cookies: 7
  • UI Developer
Re: Which Graphics API?
« Reply #67 on: April 11, 2011, 11:32:56 PM »
I don't think so... this is a matter of going with the technology that can meet our requirments.  I mean I can keep developing Pixel Shader 2 Shaders for the engine and still have the game look great... even the same as the PS 3 shaders, it's just that we reduce efficiency when we could be using PS 3 shaders to do one pass instead of 2 or 3 passes.



Sweet!  Yay for better stuff!
"The work to which we have set ourselves is the liberating of the imagination, the harnessing of imagination to humankind's deepest sense of creativity. -The Sisterhood's Credo

Offline Poseidon

  • Rear Admiral
  • ***
  • Posts: 743
  • Cookies: 5
  • Member
Re: Which Graphics API?
« Reply #68 on: April 12, 2011, 02:03:32 AM »
on
Since tech does keep evolving (no pun intended), I hope we don't get stuck in a temporal loop of update, adding time...update done..new tech...update again...adding time...lol

It's funny you say that.  Every six months there is a new jump in tech (in general). However, the DX standard is, and will be DX11 out to this point.  The tessalation features with explosions will be magnificent!  Not to mention PS 5.0!  But DX11 is the top API set and will stay that way for at least the next 2 years.  There is no plan to release DX12, because there hasn't been a lot of titles released yet in either DX10 or DX11.  So not to worry, DX11 is going to be around for a while.  Besides, we haven't even fully explored DX10 yet.
Current Rig:
MSI 890FXA-G70 MoBo
Phenom II 955 Quad Core (3.2Ghz x 4)
16Gigs Corsar 1600Mhz FBS RAM
(2) Diamond HD 6870 XOC @ Crossfire
XFI Fata1ity
500G x 1 Tera SATA HD's
1200w ToughPower Mini "Warp Core"
26" ASUS
Windows 7 x64 Ulimate

Offline AricwithanA

  • The One and Only
  • Admiral
  • ****
  • Posts: 1168
  • Cookies: 7
  • UI Developer
Re: Which Graphics API?
« Reply #69 on: April 12, 2011, 02:23:32 AM »
It's funny you say that.  Every six months there is a new jump in tech (in general). However, the DX standard is, and will be DX11 out to this point.  The tessalation features with explosions will be magnificent!  Not to mention PS 5.0!  But DX11 is the top API set and will stay that way for at least the next 2 years.  There is no plan to release DX12, because there hasn't been a lot of titles released yet in either DX10 or DX11.  So not to worry, DX11 is going to be around for a while.  Besides, we haven't even fully explored DX10 yet.

My last video card upgrade was just as the DX11 cards were coming out so they were really expensive so mine only does DX10.  lol
"The work to which we have set ourselves is the liberating of the imagination, the harnessing of imagination to humankind's deepest sense of creativity. -The Sisterhood's Credo

Offline Black Patriot

  • Admiral
  • ****
  • Posts: 1019
  • Cookies: 3
  • Member
Re: Which Graphics API?
« Reply #70 on: April 12, 2011, 08:23:03 AM »
My last video card upgrade was just as the DX11 cards were coming out so they were really expensive so mine only does DX10.  lol

As I pointed out in another thread, DX10 cards will run DX11 code, they'll simply ignore any feature that they don't have, so the shaders should work fine, it'll just ignore all the calls for, say, tessellation. Don't worry, your card will be PS4.0, so you won't have anything to worry about.
Gigabyte GA-X58A-UD3R
Intel Core i7-950 @ 3.6 GHz
12GiB G.Skill RAM
Gigabyte GTX 680 2048MB
128GB Kingston SSD (Windows 7 Drive)
64GB Kingston SSD (Windows 8 Drive)
2 x 160GB 7200rpm HDD (RAID 0)
8.2TiB Storage (on File Server)
875W Thermaltake ToughPower XT PSU
46" Samsung Series 6 LED @ 1080p
Logitech Z-5500 THX
Windows 7 Professional x64
Windows 8 Consumer Preview x64

Offline AricwithanA

  • The One and Only
  • Admiral
  • ****
  • Posts: 1168
  • Cookies: 7
  • UI Developer
Re: Which Graphics API?
« Reply #71 on: April 12, 2011, 09:10:01 AM »
As I pointed out in another thread, DX10 cards will run DX11 code, they'll simply ignore any feature that they don't have, so the shaders should work fine, it'll just ignore all the calls for, say, tessellation. Don't worry, your card will be PS4.0, so you won't have anything to worry about.

Oh I know it will run things just fine.  It runs the modeler rather smoothly!  Nothing to worry about here, but when I do upgrade the media center one day I'll upgrade my main setups video card and pass the current one down to the media center (along with a tv tuner).
"The work to which we have set ourselves is the liberating of the imagination, the harnessing of imagination to humankind's deepest sense of creativity. -The Sisterhood's Credo

Offline Poseidon

  • Rear Admiral
  • ***
  • Posts: 743
  • Cookies: 5
  • Member
Re: Which Graphics API?
« Reply #72 on: April 12, 2011, 10:44:07 AM »
As I pointed out in another thread, DX10 cards will run DX11 code, they'll simply ignore any feature that they don't have, so the shaders should work fine, it'll just ignore all the calls for, say, tessellation. Don't worry, your card will be PS4.0, so you won't have anything to worry about.

Yes, DX10 card can't do tessalation, or the 5.0 Shader.  But everything else is possible.  What we are seeing in the viewer is DX9 I believe.  So, that looks awesome as it is.  Not to worry for anyone.  This game is going to look good regardless.
Current Rig:
MSI 890FXA-G70 MoBo
Phenom II 955 Quad Core (3.2Ghz x 4)
16Gigs Corsar 1600Mhz FBS RAM
(2) Diamond HD 6870 XOC @ Crossfire
XFI Fata1ity
500G x 1 Tera SATA HD's
1200w ToughPower Mini "Warp Core"
26" ASUS
Windows 7 x64 Ulimate

Offline Daedalus

  • Cadet 2nd Class
  • **
  • Posts: 49
  • Cookies: 0
  • Member
Re: Which Graphics API?
« Reply #73 on: April 12, 2011, 07:12:22 PM »
One thing that I think would make the game look fantastic - and is very canon - is Depth of Field. This would look wonderful in cutscenes, especially with the interiors. DX10 can do DOF to a certain extent, but it doesn't do it right.

Crysis for example simply blurs out everything but the foreground equally, which obviously ignores object distance completely.

Tessellation would obviously be a big hit as well, especially for this like Borg ships.
Intel Core i7 950 @ 4.2GHz | Gigabyte X58A-UD5 | 6GB Corsair Dominator DDR3 RAM | Zotac GTX 580 @975/2100
Dell U2410 IPS monitor | Creative X-Fi XtremeGamer | Logitech G11 + Performance MX | Logitech X-540 5.1 surround sound
32GB OCZ Onyx SSD | 2x1TB Spinpoint HDD (Apps) | 2x2TB Spinpoint HDD (Media)
Cooler Master Silent Pro M700 | Windows 7 Ultimate 64-Bit

Phobya Nova 1080 | Swiftech MCP 655 | XSPC Rasa | EK FC580 GTX | 4x Akasa Apache

Offline Jon Deane

  • Lt. Commander
  • ****
  • Posts: 180
  • Cookies: 0
Re: Which Graphics API?
« Reply #74 on: April 12, 2011, 08:01:47 PM »
Does anyone know what PS an ATI Mobility FireGL v5700 uses?  I can't find that information anywhere, but I think I remember reading that it uses PS 2 long ago.

Plus, my laptop uses a switchable graphics card and the integrated card almost certainly won't run Excalibur.  Will that cause issues even when running the discrete card?  I can't use IE9's hardware acceleration because of the integrated card even when using the discrete one, so it's caused issues before.

Offline Darkthunder

  • Rear Admiral
  • ***
  • Posts: 543
  • Cookies: 4
Re: Which Graphics API?
« Reply #75 on: April 12, 2011, 08:51:50 PM »
Does anyone know what PS an ATI Mobility FireGL v5700 uses?  I can't find that information anywhere, but I think I remember reading that it uses PS 2 long ago.

Plus, my laptop uses a switchable graphics card and the integrated card almost certainly won't run Excalibur.  Will that cause issues even when running the discrete card?  I can't use IE9's hardware acceleration because of the integrated card even when using the discrete one, so it's caused issues before.

Not sure which version of PS it uses, but it's definitely a DX 10.1 card, as per the following list:
http://en.wikipedia.org/wiki/Comparison_of_AMD_graphics_processing_units#Mobility_FireGL.2FFirePro_series
// Darkthunder

Offline Jon Deane

  • Lt. Commander
  • ****
  • Posts: 180
  • Cookies: 0
Re: Which Graphics API?
« Reply #76 on: April 13, 2011, 08:02:17 PM »
Too bad.  I guess I won't know if I can run Excalibur until it's released and installed on my laptop.  I've found that ATI puts the minimum version of PS on their cards that they can get away with to drive upgrades.  And to think that I bought this card just for Excalibur (could have gone with 256mb instead of 512 and saved a ton of money).

Offline Mark

  • aka Ignis
  • Project Director
  • Fleet Admiral
  • ******
  • Posts: 3548
  • Cookies: 181
  • Creative Leader
    • Excalibur
Re: Which Graphics API?
« Reply #77 on: April 13, 2011, 08:09:53 PM »
Can't be sure but looks like the card should be able to run Excalibur just fine, you just might not get all the fancy bells and whistles :)

Offline Zachstar

  • Lt. Commander
  • ****
  • Posts: 190
  • Cookies: 0
  • Member
Re: Which Graphics API?
« Reply #78 on: May 03, 2011, 03:01:33 PM »
Hmmm, I think the reasoning has to be a little more robust than "I don't know anyone still running a DX9 card so we should forget about that".

There are plenty of sources for very reliable statistics on this. Steam's latest hardware survey shows that use of PS2 and PS3 hardware is really dropping off now, but it still leaves the two varieties of PS3 with an 8% share of gaming PC's. I think many people would see that as a pretty big chunk of the market to completely drop support for.

"Support" Implies that you are a commercial house. You owe folks nothing considering that unless I am mistaken the game is free to this point. People will upgrade to play YOUR work not the other way around.

The ONLY valid reason in my opinion for sticking with the older API is due to developer resources. A 3870 can't do DX11.
Phase Blasters, Rail Torpedoes Full Spread! FIRE!