Saturday, June 30, 2007

More programming.

Still programming curve editor UI. I might take a break from it and code something for nice image. No other news except that i begin to lose interest in blogging, which is noticeable as my blog entries get shorter and shorter.

Wednesday, June 27, 2007

Reading Master and Margarita

I'm re-reading Master and Margarita now. I did read it before but forgot everything so i have the pleasure to read it again like for first time :)
Programming: did some work on curve editor in standalone volumetrics UI.

Friday, June 22, 2007

Got stuck at UI programming.

Got stuck not sure how to go about implementing the curve editor (cubic hermite spline editor that is). No other news. I'm feeling kind of depressed now.

Thursday, June 21, 2007

A test render.




Screenshot from the editor, along with the test render. Concept of user interface: the scene is represented as tree of "operators", operator tree is displayed on the left, operator properties on the right. Operators have channels for connections between them; the Perlin noise operator's evaluation position and result are connected to Monofractal, which in turn is connected to clouds. There's some usability problem: it's possible to get noise connected directly to clouds, bypassing the Monofractal. I'm unsure how to go about this usability problem.
The most important lacking thing now is curve editor, it is necessary for getting clouds disappear at top and bottom of layer rather than get clipped by layer bounds.

Wednesday, June 20, 2007

Some technical blabla

This post is technical and is more of a note for myself rather than for audience
(though that applies to most of my posts)

I resolved that database problem.
How and what happened: During loading, there's some connections binding going on. When loading Monofractal it would first load PerlinNoise, and create ".inputs" folder in monofractal for binding of monofractal's inputs to the outputs of PerlinNoise. Then it would try loading saved .inputs folder, and fail to add it into database because .inputs folder already existed.

Implemented monofractal, photographed some bug

In implementation of monofractal I had some "i instead of j" mistake that did take quite some time to find because it was array index and in result program were writing outside of bounds of array, screwing up the heap (which makes program crash somewhere further along).
Test images i made so far sux so i won't upload them ;-).

Also i've discovered some strange problem in my database thing that works behind the scenes in my framework/user interface. Somehow saved files are not always loaded properly. It is going to take some time to sort out.

In other news, on 17th i found a fairy big, mean looking dead bug laying on the street. To be specific, it was exosceleton of some bloodsucking fly whose name i don't know. I photographed it today:Nice, eh?

Tuesday, June 19, 2007

Implemented Perlin Noise.


A test render, and user interface screenshot for that test render.
As you can see user interface is pretty basic. However it has undo and redo and parameter descriptions; also, there's whole "plugin compiler" thing behind the scenes, binding editable parameters to the internals, and binding the internal connections. In this example, the result of perlin noise is bound to v_density parameter of "Clouds" (so that the density of cloud is set by perlin noise), and perlin noise's Evaluation Pos. is bound to cloud's EvaluationPosition channel (so that the perlin noise is evaluated at position where "Clouds" ask it to be evaluated). "Clouds" themself are bound to Volumetrics, the core renderer.

For now, user interface doesn't have working "render" buttons or the like; scene file is saved and then rendered with CLI version. It gonna take lot of time until user interface becomes actually usable by normal users.