Jump to content

  • Log In with Google      Sign In   
  • Create Account

Do GL and DX 'go through' the Windows GDI?

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 rAm_y_   Members   -  Reputation: 686


Posted 27 July 2014 - 07:33 PM

I do realise to answer this question you would pretty much need to know everything, kernel architecture, memory management, the HAL etc and how they all intertwine with each other. For example you can do a lot of graphics stuff with the GDI dialog boxes, probably full 2D/3D rendering also, I only know the basics as there are so man toolkits or RAD languages that bypass directly using the GDI. So how do GL/DX interact with the GDI, they must interact the OS at some point, so what is the relationship between these graphics libraries and the OS?


#2 nobodynews   Crossbones+   -  Reputation: 2951


Posted 27 July 2014 - 07:52 PM



In Windows Vista, all Windows applications including GDI and GDI+ applications run in the new compositing engine, Desktop Window Manager which is built atop the Windows Display Driver Model.




Direct3D 9Ex, Direct3D 10, and Direct3D 11 are only available for Windows Vista and newer because each of these new versions was built to depend upon the new Windows Display Driver Model that was introduced for Windows Vista


So, for at least Windows Vista and newer operating systems, GDI and DirectX are built on top of the Windows Display Driver Model, DirectX more directly. I'm not sure what Windows did before Vista, but I'm almost 100% certain DirectX bypassed GDI.

C++: A Dialog | C++0x Features: Part1 (lambdas, auto, static_assert) , Part 2 (rvalue references) , Part 3 (decltype) | Write Games | Fix Your Timestep!

#3 frob   Moderators   -  Reputation: 37528


Posted 27 July 2014 - 08:36 PM

Their big change was that the drivers took advantage of the 3D chips.

Before that time graphics cards effectively had a 3D mode for 3D graphics, and a 2D mode that has been the same since the mid 1990's introduced 2D graphics cards for Windows. One of Vista's big changes was that Aero ran the card as a 3D graphics card for the blending and effects.

The drivers needed to be modified to accommodate that change. Windowed D3D applications were no longer just 3d within a rectangle, but became 3D everywhere.

For full screen programs, both before and now you get access to everything.

Check out my book, Game Development with Unity, aimed at beginners who want to build fun games fast.

Also check out my personal website at bryanwagstaff.com, where I occasionally write about assorted stuff.

#4 slalrbalr   Banned   -  Reputation: 2005


Posted 28 July 2014 - 01:15 AM

Short answer: No, and since Vista it's the other way around: GDI goes through DX drivers when compositing is enabled. GL drivers have always been separate from both DX and GDI. (I don't like long answers smile.png )

Edited by tonemgub, 28 July 2014 - 01:16 AM.

#5 mhagain   Crossbones+   -  Reputation: 11123


Posted 28 July 2014 - 01:49 AM

This description of the WDDM driver model should help: http://msdn.microsoft.com/en-us/library/windows/hardware/ff570589%28v=vs.85%29.aspx


There's even a nice diagram that shows where everything fits



It appears that the gentleman thought C++ was extremely difficult and he was overjoyed that the machine was absorbing it; he understood that good C++ is difficult but the best C++ is well-nigh unintelligible.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.