/home/karthik/blog

Kompazz: Some more screenshots of KompazzVG

Posted in kompazz, kompazzvg, Linux, Mobile Frameworks, openmoko by Karthik Murugesan on June 10, 2008

Its quite a long time since have provided any updates about KompazzVG. Hope the following screenshots of some test applications running on KompazzVG details the progress of KompazzVG.

1. Clock

2. Subway Map

3. Lion

4. Tiger with Scissoring

5. Line Stroking

6. Simple Path Stress Test

7. Compositing

8. Flowers

8. Image Wrapping (Perspective Transform)

9. Radial Gradient




10. Linear Gradient

11.Image Pattern

12. Image Pattern 2

13. Blending

Kompazz: Some Screenshots of KompazzVG

Posted in kompazz, kompazzvg, openmoko by Karthik Murugesan on April 15, 2008

Some screenshots of KompazzVG running various test cases related to paths and gradients from shivaVG. All the test cases run properly with almost no changes.

My thanks again to ShivaVG project for those test cases.

Linear Gradient

Radial Gradient

Dash

VGU Primitives

Tiger

Kompazz – Status Update

Posted in kompazz, kompazzvg, Linux, openmoko by Karthik Murugesan on April 7, 2008

As planned, I completed the coding of Alpha Masking, Scissoring, vgImage last week but delayed the eglsurface for evas implementation because I am not going to use it currently.

This week, the focus will be on testing and will try to execute most of the test cases/samples openly available from other openvg implementations like PowerVR SDK, Hybrid, shivaVG etc. Additionally, I will write some test cases on needed basis.

Kompazz – Status Update

Posted in kompazz, kompazzvg, Linux, PND by Karthik Murugesan on March 31, 2008

Last week I was mostly working on the kompazzvg implementation and here is the short status update.

  • vgContext, vgPath implementations almost complete. Need to write more test cases.
  • Completed solid and gradient paint in vgPaint. Yet to implement the pattern paint. Need to write more test cases.
  • Completed all affine matrix transformations. Need to write more test cases.
  • Completed the basic EGL implementation that can support only eglCreatePixmapSurface.

This week, I am planning to complete Alpha masking, Scissoring, vgImage and egl surface for Evas.

KompazzVG and ShivaVG

Posted in kompazzvg, Linux, openmoko, Uncategorized by Karthik Murugesan on March 25, 2008

Since I am not an OpenVG/graphics expert, I needed some reference OpenVG Implementation to validate my implementation and compare the rendering quality. I didnt consider the OpenVG RI because its a windows based implementation and I expect the rendering quality to be bad (just an instinct).

Other than the RI, ShivaVG is one complete good quality open source implementation which I found interesting because it uses OpenGL as the base rendering engine and also has a good amount of OpenVG test code.

Here’s the SVG tiger rendered using KompazzVG and ShivaVG. Thanks to Irvin of ShivaVG for his test code.

kompazzvg.pngshivavg.png

PS: Note that KompazzVG and ShivaVG implementations take different approaches.

KompazzVG – An Open source OpenVG implementation

Posted in kompazz, kompazzvg, Linux, navigation by Karthik Murugesan on March 25, 2008

For my Kompazz project, I was looking for an open source 2D graphics rendering engine that can render high quality vector graphics images and can support both software and hardware based rendering. But after googling for quite a long time, I found, Cairo and AGG are the only implementations that can cater my requirements.

While Cairo can support both hardware and software based rendering, Cairo’s software renderer performance is really very bad. While the AGG’s software renderer can provide a decent performance, AGG doesnt support any hardware based rendering.

Since the initial versions of the Kompazz will only use the software based renderers, I decided to go with AGG but I wanted the flexibility of using hardware based renderer later. So instead using AGG directly, I have decided to create a new project KompazzVG, which will be an opensource OpenVG implementation based on AGG. Currently KompazzVG will not be a complete implementation of OpenVG and I will implement only the features/APIs required for my Kompazz project.

As usual, I am open for any suggestions/contributions.