So here it is, the application and source code for GML Viscosity.
I finally took the time to clean up this project and make a public release. In the packages you will find binaries and source code for the application, so if you’re thinking of using it and come up with something nice, let me know. After the first release i have fixed some problems with memory access and crashes. I have also added a simple UI for easy pick of tags from the “data/tags” folder on your hard-drive.
What is it?
- GML Viscosity is an experiment. It is application used to draw GML tags on a viscous liquid rendered purely on the GPU side.
What does it do?
- It liquifies your tags, in a way you can hardly read them but still looks cool (thats graffiti).
- It is possible to load gml files from the disk or directly from the “lots of zeros”book database.
How can I interact?
- Not implemented on this version. This version selects and draw gml files randomly from the web or from a tags folder. For a smart person it should be easy to add mouse support. The code is also prepared to support multitouch so, it should be easy to implement TUIO and create your multitouch version.
- Use ‘r’ key to randomly fetch a new tag from the website and if available it will draw it on the screen.
- Use the GUI window to pick any tag from the folder “tags” inside data folder.
In the past few days i was playing with voronoi cells. in the meantime i had another idea i wanted to try: random recursive cell growth. So i started working on both pieces together and came up with what you’re about to see in the videos below.
The scene is rendered using a per-pixel phong lighting model + wrap lighting, a fast trick to approximate subsurface scattering. More information available in the GPU Gems book.
I have used lee byron‘s mesh library for the 2D voronoi mesh generation and loaded it up my framework to generate a 3D heightmap mesh. I’ve reduced the effect to almost zero here, just because i think it looks much better flat in this particular scene.
A few days ago i visited Mathieu Badimon’s website and i found myself playing with one effect he made for Five3D website. The trail effect.
It’s a pretty simple effect but he made it go further, he created it using his own 3d framework for Adobe Flash and has a particular thing that I like a lot. The drawing in perspective and that simple but incredible sweet pass over the top plane.
Well I had to give it a try and after fiddling around the web and talking to some people I’ve created a version of his effect. By all means, i release this code to the public with Mathieu’s authorization, even if its my code, it was his idea in the first place.
Note: There are two versions of this effect available. 1st uses Five3D, 2nd using only flash.
I’m working on a version that uses Sandy3D for rendering. It will soon be available, meanwhile you can download other versions and play around.
You can find a Sandy3D example of this effect here. What i do is just the same as the simple version. Draw into a sprite object and attach this to the material used in a plane polygon. Sandy converts vectordata into a bitmap, so things didnt came up as i expected.
I was browsing around, and i have noticed an effect implementing repulsive forces. i wanted to give it a try and i came up with this piece. made with a few hundreds of particles and two repulsive point forces. reacts to audio input. built with processing. you can watch or download it.