Is it possible to create your own graphics API?

Started by
14 comments, last by Fiddler 13 years, 2 months ago
[quote=Antheus]Talking to hardware directly, especially to degree done by vendor-provided drivers is impossible, since those details are one most heavily guarded trade secrets in computing industry today. [/quote]

While I agree with the essence of your post, this part is quite wrong. 2 out of the 3 major GPU manufacturers release hardware specifications today. This includes hardware registers, instruction sets, CRTC setup, engine/memory clocking and almost everything else necessary to create a high-performance 3d driver for that hardware. In fact, open-source drivers now exist that, in some cases, surpass the official drivers in performance and capabilities.

(In case anyone is wondering, the two manufacturers who release specifications are AMD and Intel. The one that doesn't is Nvidia but its hardware has been reverse-engineered to the extent that a 3d driver is possible).

Back on topic: if you wish to construct a brand new graphics API, check the open-source graphics stack on Linux (Search for "Gallium3d" and "Mesa3d"). It is built in such a way that it is possible to layer new APIs with full hardware acceleration on top and people have been using it to accelerate OpenVG, OpenCL, OpenGL ES, OpenGL, Direct3D and video decoding APIs. This is actually very cool: not only is all the source code available for studying, its developers also tend to be very helpful.


Your only other option is to layer your API on top of D3D/OpenGL, which is going to be suboptimal up to a point.

[OpenTK: C# OpenGL 4.4, OpenGL ES 3.0 and OpenAL 1.1. Now with Linux/KMS support!]

Advertisement

(In case anyone is wondering, the two manufacturers who release specifications are AMD and Intel. The one that doesn't is Nvidia but its hardware has been reverse-engineered to the extent that a 3d driver is possible).


o_O Did something happen while I was not paying attention, such that AMD and Intel are now major GPU manufacturers, but ATI isn't?

o_O Did something happen while I was not paying attention, such that AMD and Intel are now major GPU manufacturers, but ATI isn't?


Well AMD bought ATI, and Intel sold millions of motherboards with crappy embedded graphics hardware. Welcome to the future! :)

[quote name='Zahlman' timestamp='1297246884' post='4771803']
o_O Did something happen while I was not paying attention, such that AMD and Intel are now major GPU manufacturers, but ATI isn't?


Well AMD bought ATI, and Intel sold millions of motherboards with crappy embedded graphics hardware. Welcome to the future! :)
[/quote]

And NVidia...what?

My Gamedev Journal: 2D Game Making, the Easy Way

---(Old Blog, still has good info): 2dGameMaking
-----
"No one ever posts on that message board; it's too crowded." - Yoga Berra (sorta)

@Zahlman - Yes, something did happen whil you were not paying attention.

AMD is ATI or rather ATI is no more..
How did that manage to pass you by?
Even if you've somehow missed the media fallout these past few years, there's that little hint where http://www.ati.com redirects to http://www.amd.com ...

[OpenTK: C# OpenGL 4.4, OpenGL ES 3.0 and OpenAL 1.1. Now with Linux/KMS support!]

This topic is closed to new replies.

Advertisement