Linked by Thom Holwerda on Sat 15th Mar 2014 16:35 UTC
Games

The GameCube GPU is a complex, tight-knit piece of hardware with impressive features for its time. It is so powerful and so flexible, it was used unmodified within the Wii architecture. For a comparison, just imagine a SNES running with an NES's graphics system. This is completely unheard of, before or since. The GameCube is a remarkable achievement of hardware engineering! With its impressive capabilities, emulating the GameCube's GPU has been one of the most challenging tasks Dolphin has ever faced.

Fantastic in-depth look at specific parts of the GameCube/Wii GPU, written by the developers of the Dolphin emulator.

Thread beginning with comment 584624
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[4]: Incredible emulator...
by wigry on Mon 17th Mar 2014 11:22 UTC in reply to "RE[3]: Incredible emulator..."
wigry
Member since:
2008-10-09

The biggest difference between OpenGL and DirectX is the general model of control. With DirectX developer or application manages the resources and drivers are thin. With OpenGL, the developer or application issue only general commands and driver takes care about all the resources and communication. So the OpenGL performance is DIRECTLY bound to the driver quality and implementation.

In case of Apple and OSX, Apple developes the drivers inhouse and they have been much more successful with AMD / ATI cards than with NVidia. Hence the OpenGL performance with NVidia cards is very lousy while with AMD cards it is OK. No wonder Apple went AMD-only with new Mac Pro.

So DirectX performance is dependent on the developer skills of the particular application and OpenGL performance is bound to the driver developer. So with OpenGL, single driver must meet the requirements of every application out there. With DirectX the developer can fine tune and optimize infinitely ensure the best performance.

And X-Plane uses OpenGL 4.x if available.

Reply Parent Score: 3

Ultimatebadass Member since:
2006-01-08

And X-Plane uses OpenGL 4.x if available.


Will have to double check, but I could've sworn last time i checked in the graphics settings menu on the bottom it said "2.1-somethingsomething".

Reply Parent Score: 2

Ultimatebadass Member since:
2006-01-08

Yup, checked it. XPlane 10.25 64bit, OSX 10.9.2 shows OpenGL renderer as 2.1 in graphics options menu.

Reply Parent Score: 2

RE[6]: Incredible emulator...
by wigry on Tue 18th Mar 2014 06:37 in reply to "RE[5]: Incredible emulator..."
wigry Member since:
2008-10-09

Found this explanation from Aerosoft forums:

X-Plane tries to use modern features although it claims to be an OpenGL 2.x program since it isn't allowed to run with higher versions under Mac Os X since it still uses OpenGL 1 calls. And that's the problem. All modern cards only use modern multi shaders that are used by OpenGL 3 and 4, while OpenGL 1 and 2 used a totally different shader model with specialized vertex and pixel shaders. So the drivers try to implement the old shader model on the modern hardware while X-Plane tries to emulate modern OpenGL 3 and 4 methods like instancing within the boundaries of the old shader model. For the drivers this is a nightmare and totally uncommon since everyone in their right mind would simply use the modern calls directly. So at the moment it is a torture test for the drivers of the graphics card.

Hopefully they might finish the elimination of the old OpenGL 1 calls with 10.30. so that Mac Os X no longer sets the Legacy flag and allows them to use OpenGL3/4 openly. This might help with the driver problems..

Edited 2014-03-18 06:45 UTC

Reply Parent Score: 2

RE[5]: Incredible emulator...
by zima on Thu 20th Mar 2014 19:39 in reply to "RE[4]: Incredible emulator..."
zima Member since:
2005-07-06

So DirectX performance is dependent on the developer skills of the particular application

Or of the particular engine, more often than not?

Reply Parent Score: 2