Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > IL-2 Sturmovik: Cliffs of Dover > Pilot's Lounge

Pilot's Lounge Members meetup

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #9  
Old 03-08-2012, 03:43 AM
keinmann keinmann is offline
Approved Member
 
Join Date: Mar 2012
Posts: 19
Default

It's not simply a matter of performance (e.g., not enough memory or "power"), though that is certainly a big part of it. It's a much bigger and more complex issue. It goes down to how gaming software works at the lowest level...

Modern games for Windows use DirectX (typically 10, 10.1 or 11). Nowadays, DirectX no longer includes the FFP (Fixed-function Pipeline). FFP has been totally replaced with programmable shader pipelines. In modern DirectX, NOTHING gets on the screen without a shader. Shaders are what ultimately push pixels to your screen. And shaders require a proper GPU to be run!

If you ever try writing a video game or any real-time 3D application, you'll then realize how painful it can be to write code and shaders for different hardware. One card might support only Shader Model 2.0, while another supports 3.0. There are vast differences in these, and the workload it can put on programmers to be backward-compatible with old hardware can be obscene. Think about the fact that DirectX 9 only had vertex and pixel shaders. DirectX 10 introduced geometry shaders. Now in DirectX 11, I find myself writing pixel shaders, vertex shaders, geometry shaders, hull shaders, compute shaders and more! To put it in simple terms: Any hardware capable of running a modern DirectX or OpenGL application like IL-2 already has a shader-capable GPU and can do better than 256 color lol. So it's unnecessary.

And this is only the tip of the iceburg. The differences between versions of DirectX and hardware goes much, much deeper. The latest versions of DirectX have new controller APIs, for example. Another example is DirectX 11 no longer includes any "built-in" 2D API that works with D3D! There are new math APIs, lots of stuff is discontinued or no longer supported, etc. D3D 11 supports multi-threaded rendering and has a new Device Context COM interface... And it goes on and on and on... If you want to see what I'm talking about just dig around in Microsoft's release notes and the DirectX documentation. There's a LOT more to developing games (even very simple/crappy games) than a non-programmer could ever imagine!

And this isn't even considering many other factors... Oh, now you have to port your game to OpenGL and make the darn thing run on Mac and Linux! Oh joy! Then a million new bugs get introduced... Programmer shoots himself in head...
Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 11:46 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.