Graphics Library for D
Boyd
gaboonviper at gmx.net
Wed Jan 8 02:57:45 PST 2014
I could definitely use something like this. I'm currently working
on a GUI library, and I still could use a decent graphics
back-end. I suspect Aurora could function in this capacity.
I would love to contribute, though my experience with graphics is
mostly limited to Win32 GDI. However, I could probably help with
testing it in the early stages.
Also, I'm wondering if you are planning to include(or at least
support a possible implementation) perfect anti-aliasing and
stuff like that. I know AntiGrain has been mentioned here, I've
used it in the distant past for text rendering, and it was pretty
cool to have that kind of quality. For a lot of applications, the
performance won't be effected much by this, and in some
applications quality is very important.
----------------
On Monday, 6 January 2014 at 04:11:07 UTC, Adam Wilson wrote:
> Hello Fellow D Heads,
>
> Recently, I've been working to evaluate the feasibility and
> reasonability of building out a binding to Cinder in D. And
> while it is certainly feasible to wrap Cinder, that a binding
> would be necessarily complex and feel very unnatural in D.
>
> So after talking it over with Walter and Andrei, we feel that,
> while we like how Cinder is designed and would very much like
> to have something like it available in D, wrapping Cinder is
> not the best approach in the long-term.
>
> With that in mind, we would like to start a discussion with
> interested parties about building a graphics library in the
> same concept as Cinder, but using an idiomatic D implementation
> from the ground up. Walter has suggested that we call it
> Aurora, and given the visual connotations associated with that
> name, I think it is most appropriate for this project.
>
> I know that the community has worked through a few of the
> problems involved. For example, I can't remember who wrote it,
> but I've seen a module floating around that can create a window
> in a cross-platform manner, and I know Mike Parker has been
> heavily involved in graphics for D. And no discussion of
> graphics would be complete without Manu, whose input Walter,
> Andrei, and I would greatly appreciate.
>
> I want to point out that while Cinder will be the design
> template, the goal here is to use D to it's maximum potential.
> I fully expect that what we end up with will be quite different
> than Cinder.
>
> Due to the scope of the project I think it would be best to
> execute the project in stages. This will allow us to deliver
> useful chunks of working code to the community. Although I
> haven't yet heard anything on the subject, I would assume that
> once Aurora reaches an acceptable quality bar it would be a
> candidate for inclusion in Phobos, as such I would like to
> approach the design as if that were the end goal.
>
> The logical phases as I can see them are as follows, but please
> suggest changes:
>
> - Windowing and System Interaction (Including
> Keyboard/Mouse/Touch Input)
> - Basic Drawing (2D Shapes, Lines, Gradients, etc)
> - Image Rendering (Image Loading, Rendering, Modification,
> Saving, etc.)
> - 3D Drawing (By far the most complex stage, so we'll leave it
> for last)
>
> Here are a couple of things that Aurora is not intended to be:
> - Aurora is not a high-performance game engine. The focus is on
> making a general purpose API that is accessible to
> non-graphics programmers. That said, we don't want to purposely
> ruin performance and any work and guidance on that aspect will
> be warmly welcomed.
> - Aurora is not a GUI library. Aurora is intended as a creative
> graphics programming library in the same concept as Cinder.
> This means that it will be much closer to game's graphics
> engine, in terms of design and capability, than a UI library;
> therefore we should approach the design from that standpoint.
>
> My personal experience in graphics programming is almost
> completely with DirectX and Windows so I would be happy to work
> on support for that platform. However, we need to support many
> other platforms, and I know that there are others in the
> community have the skills needed, your help would be invaluable.
>
> If you are interested in helping with a Cinder like library for
> D and/or have code you'd like to contribute, let's start
> talking and see what happens.
>
> While I do have some ideas about how to design the library, I
> would rather open the floor to the community first to see what
> our combined intellect has to offer as I don't want to unduly
> influence the ideas generated here. The idea is to build the
> best technical graphics library that we can, not measure egos.
>
> So with the above framework in mind, let's talk!
More information about the Digitalmars-d
mailing list