Archive for the 'Art' Category

Back to the shading language

Still, Bwain| No Comments »

Had a relatively long diversion, but it was spent on worthwhile features. PLUS, I got some work out. I got this pic fully rendered and sent to the printers. Tomorrow morning, I’ll pick up a glossy, archival 64×34″ print. Psyched.

img3.png

The last thing I was working on with the for-loops was fleshing out the equality predicates ‘&&’ and ‘||’. The first implementation had the obvious bool-op-bool definitions, but that doesn’t allow for int-op-int, float-op-float, int-op-bool, etc. They have to handle int, float, double, and bool on each side, so that makes 16 combinations each for ‘&&’ and ‘||’.

I figure if I get a full implementation of for and if-then-else, that’ll be enough to tackle the Ultrafractal emulation and start some real rendering.

The for-loop is almost fully working. Its hard to come up with obscure expression cases that will break it. Another thing I completely forgot are % operators. (int,float,double) % int, float % float, double % double.

Worked through a lot of bugs with the %, && and || operators. for-loops almost done. Should do some experimenting with non-varying boolean expressions, and possibly look into implementing break/continue.

New work comissioned

Still| No Comments »

Helen Nishi needs some work for her store, Kites and Feathers. Its opening soon, too soon for me to get something out for her opening. But I got a chance to see the store, looked at some spaces. I’ll be making two pieces. One 6×4, another 10×5 (feet). I’ll see if I can just re-render/crop something existing, or if I should come up with something new….HMMM….

imgRs.jpg

Something along these lines perhaps. Doing an 18000×9000 render of this now.


Space Invaders

Anim| 1 Comment »

Thinking of ways to combine old-school imagery with new. What more expressive archetype than the space invaders characters?? Ancient glyphs representing the FIRST time we saw computers as entertainment in the back of some old bar in the 80s? Click on the image to start the player. You can download the full rez version here.


First print display

Still| No Comments »

I FINALLY got around to printing up a piece and my friend was nice enough to have it displayed in his bedroom. Cecil and Helen from soccermom have this over their bed. Click on it to see a higher rez version.

cecil_sm.jpg

Also have some .avi animations in 2k and ntsc resolutions. Requires divx to view. I should convert them to quicktimes or something with a more common codec. Windows users can use windows media, but mac users may have to download and use the divx viewer.

This project was an experiment with Pickover’s epsilon cross method. Basically, we count how many iterations it takes to arrive within a small distance to the real or imaginary axes. We can rotate the axes, offset the rotation with respect to the iteration number, do some spatial and temporal antialiasing, etc. This leaves us with the final result you see here. I coded this up in Vex COPS using Houdini. The goal will be to able to do this using shading language in spa.

Animated Stalks

Anim| No Comments »

This is an implementation of Clifford Pickover’s ‘Epsilon Cross’ method. Each time your point iterates, if it falls within a cross shape, it either gets colored white or black. I added a bunch of effects on top such as supersampling in space and time, finding ways to autodetect how large the projected pixel was. A 1k version can be found here.

Anim 1.0

Anim| No Comments »

The *first* fractal animation done with Spa. All the operators are tile based. It was fun to get working, but the next obvious step will be to get the SIMD engine working. This is for two reasons:

  1. SIMD scales better with complexity
  2. Need the ability to do different things like flow control, if/else statements, and ‘other’. What I learned from using VOPs in Houdini, is that control structures don’t translate well into connected graphs. Or maybe it does, but even with VOPs, you still need a working shading language to have the scene graph translated into. For doing complex things like orbit traps, and other arbitrary escape time functions, the shading language is the way to go.

The idea for the first example came to me after I realized that the mandel/julia split of the escape time iteration is really just a 2D slice of a 4D equation. By arbitrarily rotating a 2D slice through 4D space of the mandel plane, or the julia plane, you could get a continuous rotation between a mandelbrot set, and a julia set. The results are a lot less spectacular than the explanation, but it did lead me to some interesting research into arbitrary 4D rotations, the SO(4) group. This link shows the formulation for arbitrary rotations in R4, very similar to quaternion rotations in R3.I just set a few keyframes and got the resulting animation. Like I said the idea was much greater than the final result.

This example was more fun. I keyed a camera zoom to start, but then got a chance to test the per-pixel expressions, some periodic coordinate warping, and some noise.

The coloring algorithms are very simple, but this was more of an exercise in getting some basic animation and expression features working. It was a huge personal success, and it lead me directly into implementing the SIMD virtual machine.


Copyright © 2010 Luna-Canis | Created by miloIIIIVII
Top | Sidebar | Sitemap | Disclaimer | Network