Graphics Library for D
Adam Wilson
flyboynw at gmail.com
Tue Jan 7 12:23:01 PST 2014
On Tue, 07 Jan 2014 12:13:18 -0800, Ola Fosheim Grøstad
<ola.fosheim.grostad+dlang at gmail.com> wrote:
> On Tuesday, 7 January 2014 at 19:31:38 UTC, Adam Wilson wrote:
>> True enough, but for the moment we are trying to keep the scope of the
>> project manageable. If someone wants to add it great! But until then we
>> need to focus on what is required.
>
> Yes, that is true, and then we should define a set of applications which
> it will be suitable for and what the basic model is: Should it be
> immediate mode, retained mode or scene graph based?
>
I think Immediate Mode offers the greatest flexibility and performance.
It's also the easiest to implement since you don't have to build the
mountains of data structures needed to retain the scene info.
> High level graphic frameworks tend to loose momentum fast, even the good
> ones. Example: SGI's Open Inventor is actually a neat scene graph
> framework, and open source, but dead. SGI's GL survived because it was
> low level and immediate mode.
>
Cinder, Processing, etc are High-Level Immediate Mode, I think that offers
the best chance of succeeding.
> So, I really think D is better off providing the basics in phobos first,
> staying true to the virtue of providing independent modules that are
> focused:
>
> - OS application abstraction: graphics context, input stream, audio
> playback
> - generally useful vector path datatype compatible with
> phobos-collections and SVG
> - vector/matrix library with competitive SSE performance and features
> such as clamping
To a large degree I agree with this. Getting some basics into Phobos is an
excellent idea and most of the community seems to agree. The biggest
problem I can see is that windows are usually tied to the graphics
framework the implements them. There are numerous reasons for that, all of
which make sense. For example, I don't know if it would be possible to
pass the Phobos window to Qt or DirectX, it might be, but we'll have to be
very careful in our API design if it is.
--
Adam Wilson
IRC: LightBender
Aurora Project Coordinator
More information about the Digitalmars-d
mailing list