V

Avatar



Grazing Jellies

Grazing Jellies is an augmented reality project i had the pleasure to work in. I made team with Neil Mendonza and Hudson-Powell, commissioned by the Abandon Normal Devices festival. Grazing Jellies takes place in a forest, a realtime portal into a colorful dream-like world of jelly creatures. The creatures were created to react to movement of the ambient/people and can also be called by making noise, When nothing is going on they wander around the world and hunt for food. My work on this project was mostly about the jellies generation/animation/rendering.

At first, there was the idea to use metaballs for the creatures, we wanted to give this jelly surfaces some wobbling/round forms. After some testing we decided not to, as i did not see any advantage specially in performace,  so we went with a more “traditional” method.  The creatures were generated from 2 steps. The body and the head.

The body: Create a skeleton line and generate a deforming cylindrical body from the line. After some time and tweaking the body right. After just had to start playing with values to get the animation going. Some trig + using creature’s motion parameters worked just fine, we got it right, but, there was still a problem, the creature’s heads. The head: Well i tried different methods, interpolating the body’s end with some spherical shape wish ease on, but it did not work out. The head textures just didn’t look good, “pinched” as Jody said several times.  We ended up creating the head as a second step, building an hemisphere and then “attaching”  it to the body’s end. Good news is later on, it came handy, as it made things alot easier to map the head’s texture. Some things just come handy sometimes. I had to tweak a bit to get the head and body animation get along, but in the end it turned out to look pretty good.

As for the lighting side, a kind of “ambient light” + phong lighting + cubemap reflections made it to the final version.

This is an awesome project and i really enjoyed working with the team. As said before this should not be a closed project, it was projected to live and change so it can fit other ambients, so expect to see more from the *mighty* Grazing Jellies.

Some videos on the development blog.

Full article on the festival @ Wired.





JavaCL, the new OpenCL4Java

I have noticed that OpenCL4Java is on version 1.4beta by now and that my examples were crashing when running on a GPU device. Today i took the time to do something about it. I have downloaded the new version and have updated the examples to run with 1.4beta. Everything seems to work just fine now, if you have a different opinion, please do let me know.

Download: http://victamin.googlecode.com/files/JavaCL_1_4b.zip

Have fun!





(hmm) Greebles

Since Star Wars(tm) (so i’ve read), texture-based techniques have been used to improve the detail on planar and easily curved surfaces. The one i’m talking about here is called Greebles. Apply an heightmap texture on a surface and on a per-pixel basis, geometry is generated acoording to the pixel’s intensity. By doing it you get more detailed surfaces without having to model every little part by yourself, making things more interesting, realistic and much more appealing.

To achieve this i’ve picked Vertex Texture Fetch. It allows you to access texture data on the vertex shader. Pass a texture to the vertex shader and offset the surface vertices by the pixel’s intensity. To improve the looks, bump-mapping with multiple lights have been used. Everything presented here is generated on the GPU, even the objects. Runs nicely on a Nvidia 8200M. Lots of  space for improvement.

greebles_0001332greebles_0004509greebles_0004451greebles_0004315greebles_0004301greebles_0004050greebles_0001137greebles_0000360





Taxesss from Nothing

So here it is, new demo is out! It’s called Taxesss from Nothing and it was released at Mainparty this year. This demo started as an idea from my good friend and work colleague, ps, who usually watches my experiments in first hand. After watching some of the stuff you can see in my vimeo account, he came out with this piece for a grindcore jazz track from The Lost Gorbachevs. After handing him all the sources, he started building the demo while i was working on my own idea. Well, it turns out Taxesss is out and has been quite well accepted by the alternative parties, and my own project is still waiting to come out.. Hope you enjoy this piece.

You can download the demos from scene.org.

Mac OSX | Windows





(hmm) 3d stereoscopic view

I have played with 3d stereoscopic in the past but never got to make someting good. This is still not the time sorry, but… i think its worth the post and the time. So what do we have here ?

The technique used is called ‘off-axis frustum’ a.k.a the “right way”, courtesy of Paul Bourke. If you want to read more about it you should pay a visit to his website.

2 images are rendered from 2 different point of views, creating two images with some little differences between them. The off-axis frustum means the point of view might not lie on the perpendicular line to the ‘view-area’.  These 2 images are then sent to a simple shader that takes the R channel from the left-eye buffer, the GB channels from the right-eye buffer and then mixes it into a single stereo image. This is the color glasses compositing method, but it sure is possible to just send both images down the two adapters of your videocard and get the same 3d feeling (with colors) using an Head-Mounted Display or a multi-projector system of some kind.

Source code available here.

You will need ‘Vitamin’ library. Just copy it to processing’s libraries folder as usual, and then run the project.