Future of graphics programming

Just read an interesting interview with Tim Sweeney [Epic/Unreal/JazzJackrabbit ;)] about Graphics APIs, Larrabee, CUDA etc:
Basically he thinks that current Graphics APIs will not make sense anymore in the very near future - DirectX 9 is the last graphic API that really mattered - and soon everything will return to 100% programmable custom rendering. Sounds very nice and could be true. I personally like that view. Sounds like graphics programming could become fun again, and it's not anymore about who knows how to squeeze the best tricks out of a restricting API. And maybe new games then will not look the same anymore. :)

eight comments, already:

Or more probable is that the APIs will converge towards 100% programmable custom rendering, if you want it to be custom. It’s way too much overhead to do it from scratch. It’s already quite custom with Direct3D10 and Direct3D11 brings even more flexiblity. You can even write the results back to the buffer :).
imbusy () (link) - 15 09 08 - 19:57

He’s right about everything but ‘soon’.

2 things will mean this will take a lot of years to pan out. Firstly, the slow pace of consumer adoption, and their tendency to buy budget cards that have all the bullet points on the box but just implement all of them so slowly they’re not worth the cardboard they’re printed on. It’s the the exact same problem causing Dx10 to still be a tiny niche when people were claiming it would be essential in every game by now – in reality the only game that really used it (Crysis) tanked at retail, supposedly because of piracy but I think that’s only part of the story.

Secondly, drivers & APIs. Everyone has their own GPGPU API right now, which is stupidly impractical. They’re going to have to be unified somehow – Dx11 doesn’t do this (the framework is still fixed even if a couple more stages are added), so it will be Dx12 at least, or if GL finally pulls its finger out maybe it might fill the gap. Or, maybe Sh will be adopted. Even once you have this common API, I bet it’s going to be a while before it’s properly supported, given the variation in architectures and how each manufacturer is trying to differentiate themselves.

I predict this will be a total nightmare for anyone who can’t fix their hardware basis for at least 3 years, with mainstream adoption at least 5 years away. Nice idea though ;)
steve () (link) - 15 09 08 - 20:04

software rendering, and hopefully software ray-tracing will be a dream come true.

hard stuff like reflections and shadows will be automatic and ray tracers are much better at handling high ploy scenes, culling is basically automatic too. and no more missing features between new hardware (eg old shader versions)

Firstly, the slow pace of consumer adoption

Don’t think that will be much of a problem, it’s not now, lots of games already only run on high end machines.

in reality the only game that really used it (Crysis) tanked at retail

well apparently even crysis didn’t really use Dx10. there were simple hacks to make the game render the “Dx10 only” stuff in Dx9.

should be nice and easy for irrlicht, just plug-in a ray-tracing driver and we are good to go :)
LukePH (link) - 17 09 08 - 15:55

Steve, I’m guessing your sinbad? :) I didn’t even know you visited this blog.

But at any rate, I just have to ask, why is software rendering a dream come true? Why would people rather re-implement OpenGL if they want to use fixed-functionality. From the sounds of it, I’m not really liking it. How will people who were built upon OpenGL/DX9 adapt? Will they have to spend even more years learning the ropes?

It basically all seems ridiculous to me, but I guess I’m ill-informed. The way I see it, I would rather have an insanely great GPU, with a fully programmable hardware pipeline. I don’t want to have to rewrite a triangle rasterizer.

Am I ill-informed, and assuming the wrong things?
Halifax - 18 09 08 - 01:52

Halifax,

well most people are not going to be writing the ray tracers, just like a lot of people don’t write their games in raw OpenGL/DX9. if it were in irrlicht, all you would have to do is pick a different driver.

I doubt people are going to have to spend years relearning the ropes anyway, everything is so much simpler. no need for vbos, most shaders, culling, transparent render passes, shadow buffers, etc. most the work is simply not needed, just stick the meshes there and render.

there will probably be a few ray tracing libraries developed, but with much easier APIs then OpenGL/DX9. But there are already a ray tracing engines with OpenGL interfaces, if your not wanting to relearn/change anything
LukePH (link) - 18 09 08 - 12:39

Hmm, I guess I see you point. I can’t wait until I see an actual implementation of it though.
Halifax - 19 09 08 - 00:20

@steve, Crysis used DX10 really, alright, but almost all effects were on DX9 also. But that was the time for that only. Though maybe with increased adaptation of 64 bit Vista DX10 will increase. Already 64 bit Vista is 38% from the starting meagre 10% of Vista users. I myself use 64 bit Vista and apart from XP to Vista nuisances I am satisfied from performance as compared to XP 32 bit. More RAM is certainly its star factor. And these games are going to make us buy still more RAM in future.
If Tim Sweeny had his way from not so long ago interview he wants all consumers with SLI, 16 GB RAM, 64 bit Vista or XP.
Also he is actually very excited of Software RayTracing from very start, He used it in UT99 and misses it.
Software Rendering definetly has merits, and it may be future, not forget how good record intel has on Graphic cards and drivers. How I believe they can pull this one right now. Thewn price and performance. Then consumer adaptaion. And u are already true on point of budget cards which can run only UT2004 these days. A specification – 6600 – 8800GT, excluding 7300 for Devil May Cry 4. Devil May Cry 4 is great game with nice shaders, colurfukl colours, great castles, etc. If u play games like them, beat them up it is great.
Crysis tanked mainly – Requirements + not so stellar Gameplay + Piracy. As if Call of Duty 4 is not pirated still it has high PC sales. same with GTA 4, which is pirated even more. And here in India plethora of pirated PS2 with Mod Chips and Pirated PS2 CDs are flowing. Everyone has them. Recently a guy got mod chip from the showroom of SONY in my city whre he bought authentic PS2 then modded it. See showroom owner is rampant in piracy. Nintendo DS is already completely pirated in China.
Though I am excited too.
Unified API will be really good, but see, everyone has there GPGPU. And who knows DX and OGL will adapt and survive.
kinjalkishor () - 20 09 08 - 18:22

isn’t mesa3d a software implementation of opengl? i guess people who would like to continue using opengl could just use mesa3d then?
horace () - 20 09 08 - 19:20


Name:  
Remember personal info?
yes
no
Email (optional):
URL (optional):
Enter "layered" (antispam):
Comment:Emoticons / Textile

  ( Register your username / Log in )

Notify: Yes, send me email when someone replies.  

Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.
Note: If you type in your email adress above, it will be visible to other visitors, although it will be hidden for bots using javaScript.