Aurora Graphics Library Initial Design Discussion
Jeremy DeHaan
dehaan.jeremiah at gmail.com
Sun Jan 19 22:43:30 PST 2014
On Monday, 20 January 2014 at 06:11:45 UTC, Adam Wilson wrote:
> On Sun, 19 Jan 2014 21:59:57 -0800, Jeremy DeHaan
> <dehaan.jeremiah at gmail.com> wrote:
>
>> On Sunday, 19 January 2014 at 03:38:30 UTC, Adam Wilson wrote:
>>> System 2D API / 3D API
>>> Linux X11 / OpenGL 4.3
>>> Android Canvas / OpenGL ES 3.0
>>> OSX Quartz2D / OpenGL 4.3
>>> iOS Quartz2D / OpenGL ES 3.0
>>> Windows Direct2D / Direct3D 11
>>> Windows RT Direct2D / Direct3D 11
>>
>>
>>
>>
>> This is tricky for WinRT, which doesn't support OpenGL, but I
>> think that we should use OpenGL for both 2D and 3D on as many
>> systems as possible. Not long ago, Valve had a blog post[1]
>> about
>> how, even on Windows, OpenGL has faster calls. It also keeps
>> the
>> code under the hood roughly the same despite the system.
>>
>> Also, if you are looking for an example of using OpenGL for 2D
>> on
>> multiple systems, take a look at SFML[2]. It's graphics package
>> is 2D only, but it runs on Windows, Linux, OSX, and the Android
>> and iOS parts are nearly finished. Definitely more geared
>> towards
>> games, but it could make a good starting point.
>>
>> [1] http://blogs.valvesoftware.com/linux/faster-zombies/
>> [2] https://github.com/LaurentGomila/SFML
>
> I understand the speed argument, and I keep seeing it, however,
> Aurora is not primarily about speed, it's about ease of use and
> working well on a multitude of platforms. As Mike Parker has
> mentioned more than once, OpenGL on Windows is not quite as
> consistent in it's rendering of the same command as it is on
> other platforms due to the fact that GPU vendors are required
> to implement all of OpenGL instead of just the driver
> interface. This invariably leads to rendering "bugs". DX
> doesn't have this problem. So on Windows, for the sake of
> consistency, Aurora will be using DirectX as the default
> backend. Note that Mike is primarily responsible for SDL in D
> so he does know what he is talking about it. I won't stop
> anybody from writing an OpenGL backend for Windows, it just
> won't be the default.
Actually, that's isn't a bad point. One thing I forgot to
mention(though I suppose it is a little moot to bring it up now),
is that OpenGL depends on what the video card supports, so even
on Windows XP, someone could still access OpenGl 3+, which is
increadibly common these days. That might be something to
consider.
That aside, I'm pretty excited for this. I have many, MANY, ideas
for things that I will be making once this is up and running. I
work on the D binding for SFML, so I have a tiny bit of
experience when it comes to some of these things. I would love to
help in any way that I can!
More information about the Digitalmars-d
mailing list