I get the feeling recently that vector graphics are rapidly becoming more and more important. There's the GAMESWF project targeting games specifically, but outside the gaming world there's the Windows Presentation Foundation, Avalon, XAML. In Mac the core drawing API is based on PDF, from what I understand. Seems there's likely to be more diversity in screen resolutions in the future too, making resolution-independent rendering more important.
So, what are the chances that CEGUI could be twisted into handling vector graphics in addition to bitmap graphics? My understanding is that "everything is a texture" was a sort of level 0 design decision, but I'm now finding myself trying to make a GUI on top of the "Anti-Grain Geometry" (AGG) library, and it would be great if I could reuse big chunks of CEGUI, substituting SVG files or something in place of the imagesets.
Anyway, I was just curious about this. I've hacked something up for now, which is probably all I have time for anyway, but I was just curious, if I really wanted to do things the "right" way, without reinventing wheels, what would be the best approach? My feeling was that I'd probably want to re-use an existing GUI API like CEGUI, thereby making it possible to reuse widget code and things like that just by replacing textures with vector-based things, and switching from the OpenGL renderer to a hypothetical "AGG renderer". But could CEGUI ever concievably handle this? Or is the current design too texture-centric to even be worth trying to railroad a vector GUI into CE's API?
Vector GUIs
Moderators: CEGUI MVP, CEGUI Team
- lindquist
- CEGUI Team (Retired)
- Posts: 770
- Joined: Mon Jan 24, 2005 21:20
- Location: Copenhagen, Denmark
Re: Vector GUIs
Hi baxissimo.
I've had a look at Antigrain (AGG) and it looks very cool
I have absolutely no experience that kind of library though, and the API seems very different from "conventional" graphics APIs on first glimpse.
I do however find it very interesting, and a CEGUI renderer would be awesome... I'll definitely try it out (time to learn a new API anyway ), so watch this space.
I'll post my experiences with VectorCEGUI when I have some.
I've had a look at Antigrain (AGG) and it looks very cool
I have absolutely no experience that kind of library though, and the API seems very different from "conventional" graphics APIs on first glimpse.
I do however find it very interesting, and a CEGUI renderer would be awesome... I'll definitely try it out (time to learn a new API anyway ), so watch this space.
I'll post my experiences with VectorCEGUI when I have some.
Re: Vector GUIs
I've had a look at Antigrain (AGG) and it looks very cool
I have absolutely no experience that kind of library though, and the API seems very different from "conventional" graphics APIs on first glimpse.
Yeh, AGG is a little different from your typical getDC(), dc.lineTo(), dc.moveTo() type interface. But you can wrap it up in a more conventional API like that if needed. The wxArt2d library has such an interface with the typical GDI-like set of calls, and they implemented a back end that uses AGG. So that's one place to go if you want to look at the source of a GDI-like wrapper.
Also these guys http://www.creativedocs.net/ have done a lot with AGG. Especially check out their gui screenshots http://www.creativedocs.net/devs/gui. It's all in .NET, apparently. The C# wrapper they wrote for AGG is available online. http://www.creativedocs.net/devs/agg
I do however find it very interesting, and a CEGUI renderer would be awesome... I'll definitely try it out (time to learn a new API anyway ), so watch this space.
I'll post my experiences with VectorCEGUI when I have some.
I suspect vectorCEGUI won't be such an easy task. But if you find out otherwise, that would be marvelous.
[edit]
Amanith is another good one to check out for vector rendering. http://www.amanith.org/blog/index.php. It might be a better fit with CEGUI since it's OpenGL based. I think it's also got a more traditional drawing API than AGG so might be easier to work with for that reason.
Return to “CEGUI Library Development Discussion”
Who is online
Users browsing this forum: No registered users and 1 guest