White stuff

There’s one conceptual problem that Paulius told me the other day: imagine that you have a white sheet of paper and a black pencil. How would you draw an object that emits light? It’s puzzling at first, but surely it can be done :)

I’m facing with the same problem in our next demo: we have a white character in a white, brightly lit room. Even more, there will be some light emitting “stuff” in there. Now, how to render all this so that it’s not “washed out”, too bright and with no contrast?

I’m not happy with the way it looks right now, but we’re heading there.


Scene.org awards

Woohoo! My demogroup is nominated to scene.org awards 2004, in ‘breakthrough performance’! Pretty cool, considering that Syntonic Dentiforms, which we got nominated for, is my first ‘real’ attempt at making a demo… Well, there were other attempts before, but they were really lame and childish :)

I was pretty happy with my demo-related performance last year. Three demos in half a year (ok, one of them was crappy). Now it’s already half a year with no demos, and I already want to make one. Well, I’m already trying to make one, but so far there’s lots of higher priority stuff surrounding me.


Smooth shadows idea (not)

So, I had this smooth shadows idea recently. Turns out that it’s not an idea, Willem de Boer already has done a very similar thing (Smooth Penumbra Transitions with Shadow Maps). Now, the only way to have my idea back is to ‘optimize’ (i.e. hack/cheat) this method. Specifically, if we target projected shadows (not real shadowmaps), and can do some approximations, then we can get it working faster. I’ve done some experiments, right now it involves rendering to shadow map once, then Gaussian blurring it (two separable passes), then Poisson-blurring it. Works pretty fast :) I need to experiment some more and see if I can get anything.


Things to try

I want to implement automatic mesh unwrapper (for normalmapping, lightmapping or similar). Not that I need it much, just so, for it’s own purpose. The most recent thing I’ve read is Bounded Distortion Piecewise Mesh Parametrization; now I only need to find some time to actually do something. Ain’t an easy task!

The other thing to try is: take ATI’s NormalMapper and take a look at their octree implementation. Try replacing it with several regular grids, or tweak the octree. Fun project, also without any real purpose… (again, the reason I don’t do this is “no time” :))

Finally, I have one really stupid&simple soft-shadows idea for oldskool projected shadows. It’s something between Mitchell’s ‘Poisson Shadow Blur’ and Valient & de Boer’s ‘Fractional Disk Soft Shadows’ in ShaderX3. I think actually trying to implement it (instead of just an idea that came up while taking a bath) would be only several hours…

I must sound like a loser complaining about lack of time. The truth is, I could get that time probably, if I’d were more organized.


A bunch of hacks

And I though my own freetime projects were coded like a bunch of hacks, with no clear structure, with lots of code duplication etc… These are nothing compared to the code I now work with!