Hello guys,
this is a small project to enable a fast & standard 2D vector graphics API for squeak - OpenVG. The squeak sources is hosted at: http://www.squeaksource.com/OpenVG currently there are 4 packages: OpenVG-Base - base development package OpenVG-Tests - package to hold different tests OpenVG-Demo - package to hold different demos OpenVG-Plugin - VMMaker package sources. Before installing it, load the OpenVG-Base first. The platform source files is hosted at code.coogle and can be obtained via svn: svn checkout http://openvg-squeak.googlecode.com/svn/trunk/ Platforms: - currently plugin available only for win32 platform, sorry. If there is a brave soul to port the platform source on different platform , i can add him to developers :) To evaluate a plugin, install: OpenVG-Base, OpenVG-Tests , OpenVG-Demo packages next, download the squeak plugin from here: http://openvg-squeak.googlecode.com/files/OpenVGPlugin.dll now pick one of an OpenVG engine implementations: [1]http://www.amanithvg.com/download/ (a closed source , but VERY fast engine.. and for evaluation only :( ) it having a SRE and GLE versions. Use GLE version. [2]download & build own dll from http://sourceforge.net/projects/shivavg/ or download built by me: http://openvg-squeak.googlecode.com/files/OpenVGPlugin.dll There are also other OpenVG implementations available: - GinkoVG (software renderer) - Kompazz (seems like authors target it on unix platforms only) Now, after doing the above you are ready to run some code. First, tell a plugin, which OpenVG engine to use: OpenVGAPI loadLibrary: 'yourlibname.dll' Next, init the context: OpenVGAPI initContext Next, run some test: VGUTests new display Next run a tiger demo: VGTigerDemo runDemo have fun! P.S. at the moment, the OpenVG API coverage is not complete (no VGImage yet). So, you can play with paths/paints only. -- Best regards, Igor Stasenko AKA sig. |
Hi Igor,
Very interesting! Thanks for sharing it. Cheers, Juan Vuletich Igor Stasenko wrote: > Hello guys, > > this is a small project to enable a fast & standard 2D vector graphics > API for squeak - OpenVG. > > The squeak sources is hosted at: > http://www.squeaksource.com/OpenVG > > currently there are 4 packages: > OpenVG-Base - base development package > OpenVG-Tests - package to hold different tests > OpenVG-Demo - package to hold different demos > > OpenVG-Plugin - VMMaker package sources. Before installing it, > load the OpenVG-Base first. > > The platform source files is hosted at code.coogle and can be obtained via svn: > svn checkout http://openvg-squeak.googlecode.com/svn/trunk/ > > Platforms: > - currently plugin available only for win32 platform, sorry. If > there is a brave soul to port the platform source on different > platform , i can add him to developers :) > > To evaluate a plugin, install: > > OpenVG-Base, OpenVG-Tests , OpenVG-Demo packages > > next, download the squeak plugin from here: > > http://openvg-squeak.googlecode.com/files/OpenVGPlugin.dll > > now pick one of an OpenVG engine implementations: > > [1]http://www.amanithvg.com/download/ (a closed source , but VERY > fast engine.. and for evaluation only :( ) > it having a SRE and GLE versions. Use GLE version. > > [2]download & build own dll from http://sourceforge.net/projects/shivavg/ > or download built by me: > http://openvg-squeak.googlecode.com/files/OpenVGPlugin.dll > > There are also other OpenVG implementations available: > - GinkoVG (software renderer) > - Kompazz (seems like authors target it on unix platforms only) > > Now, after doing the above you are ready to run some code. > First, tell a plugin, which OpenVG engine to use: > > OpenVGAPI loadLibrary: 'yourlibname.dll' > > Next, init the context: > > OpenVGAPI initContext > > Next, run some test: > > VGUTests new display > > Next run a tiger demo: > > VGTigerDemo runDemo > > have fun! > > > P.S. at the moment, the OpenVG API coverage is not complete (no > VGImage yet). So, you can play with paths/paints only. > > > ------------------------------------------------------------------------ > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 8.5.392 / Virus Database: 270.13.39/2275 - Release Date: 08/01/09 09:38:00 > > |
In reply to this post by Igor Stasenko
Igor Stasenko wrote:
> Hello guys, > > this is a small project to enable a fast & standard 2D vector graphics > API for squeak - OpenVG. How does OpenVG compare to Cairo in terms of capabilities? How different are the resulting graphics on different platforms? Sounds like to good thing to have nevertheless :-) Would be interesting to integrate the OpenVG binding into the Rome Canvas hierarchy. Michael |
2009/8/2 Michael Rueger <[hidden email]>:
> Igor Stasenko wrote: >> >> Hello guys, >> >> this is a small project to enable a fast & standard 2D vector graphics >> API for squeak - OpenVG. > > How does OpenVG compare to Cairo in terms of capabilities? > How different are the resulting graphics on different platforms? > > Sounds like to good thing to have nevertheless :-) > Would be interesting to integrate the OpenVG binding into the Rome Canvas > hierarchy. > Google gives a link: http://lists.cairographics.org/archives/cairo/2008-January/012833.html > Michael > > -- Best regards, Igor Stasenko AKA sig. |
In reply to this post by Igor Stasenko
On Sun, Aug 2, 2009 at 3:09 AM, Igor Stasenko <[hidden email]> wrote: Hello guys, I got a "Syntax Error" trying to load OpenVG-Base. Gulik.
-- http://gulik.pbwiki.com/ |
Michael van der Gulik wrote:
> To evaluate a plugin, install: > > OpenVG-Base, OpenVG-Tests , OpenVG-Demo packages > > > I got a "Syntax Error" trying to load OpenVG-Base. I have no problems loading it into the latest 3.10.2-trunk. Cheers, - Andreas |
On Mon, Aug 3, 2009 at 11:31 AM, Andreas Raab <[hidden email]> wrote:
Okay; I've found it works if I load it using the Monticello tools, but not using the file listing. Gulik. -- http://gulik.pbwiki.com/ |
In reply to this post by Igor Stasenko
On Sun, Aug 2, 2009 at 3:09 AM, Igor Stasenko <[hidden email]> wrote: Hello guys, Hi Igor. You're using the same window as the Squeak display. How are you implementing this? Is it somehow using the same framebuffer (Form) as Squeak, or is it just reusing the window? I don't really know much about windows GUI programming. i.e. how difficult would it be to open the demo in a completely separate window, such as for example when you want to run Squeak headless with this demo in a separate window? Gulik. -- http://gulik.pbwiki.com/ |
2009/8/3 Michael van der Gulik <[hidden email]>:
> > > On Sun, Aug 2, 2009 at 3:09 AM, Igor Stasenko <[hidden email]> wrote: >> >> Hello guys, >> >> this is a small project to enable a fast & standard 2D vector graphics >> API for squeak - OpenVG. >> >> The squeak sources is hosted at: >> http://www.squeaksource.com/OpenVG >> <snip - details> > > Hi Igor. > > You're using the same window as the Squeak display. How are you implementing > this? Is it somehow using the same framebuffer (Form) as Squeak, or is it > just reusing the window? I don't really know much about windows GUI > programming. > OpenVG engine :) > i.e. how difficult would it be to open the demo in a completely separate > window, such as for example when you want to run Squeak headless with this > demo in a separate window? > nearly as same as difficult at it is now :) An accelerated rendering engine using an OpenGL, which having a single current context per thread bound to a particular window (Device context) at a given point of time. So, you can create a window, create an OpenGL context for it and draw there. Then create another window, create another context and draw there. But i'm not sure if OpenVG engines allow more than 1 context per application.. API doesn't having a notion of context , nor returns its handle.. So, it is supposed to be global. There also a software rendering implementations .. they don't need OpenGL to run.. But they are a way slower. I will plan to support both of them.. API can work with any.. Just need some additional routines to transfer products of rendering to Form(s)/Display. > Gulik. > > -- > http://gulik.pbwiki.com/ > -- Best regards, Igor Stasenko AKA sig. |
I added the missing parts of API - VGImage + sufrace access.
Now all OpenVG functions is accessible by OpenVG-Base package. The plugin already contains these primitives, so all you need is to update OpenVG-Base. -- Best regards, Igor Stasenko AKA sig. |
Free forum by Nabble | Edit this page |