Friday, 15 August 2008

Baby Steps

No big changes, but:
  • Hex floor generation cleaned up
  • Block-edge normals much less broken
  • Mipmap brokenness caused by discontinuous texture coordinates fixed
  • Shadow res bumped up (shadows are currently a huge rendering bottleneck, hence terrible frame rate)
  • Shadow acne removed with a teeny epsilon
The mipmap fixes have also introduced a LoD bias, but I quite like the way it looks. Textures do repeat too much at this scale though, and there's little to break up the tiling. Will be looking at potential fixes for this soon.

My big low-res chasm-filling geometry seems to have wandered off as well, not sure why. Eh, it'll come back when it's hungry...


Enne Walker said...

Re: shadow acne. It looks like all your meshes are closed. Is there a reason you didn't solve that problem culling front faces during the shadow rendering pass?

It's looking really great, by the way, and it's great to see things starting to come together. Please keep posting pictures and your progress!

(Also, secretly, I'm kind of jealous that you're working on something like this. It's something I've always wanted to do, but I just don't have the art skill to make it happen.)

Snut said...

I should probably try it again, but variance shadow maps have tended not to respond well to front-face culling in my experience. I'm using a 16-bit/channel render target, and part of the algorithm suffers from a smidgen of numerical instability. Adding a little bias tends to work very well, but it also slightly lightens shadows very close to their casting geometry, which in turn tends to make shadowed back faces with normal maps look odd and suffer from additional problems.

But that said, this application is rather different to those I've used VSM with in the past, so I will definitely try it again. Thanks for the reminder, and glad you like the work in progress shots. It's nice to look back and see that there has been progress, even if it's slow!

You could always do something similar with vector art or along those lines, to be honest that'd be a far more sensible plan than mine. Especially as my ability to model stuff is minimal and it takes ages even to create a formless tentacle-blob. The code is fun though...

Jotaf said...

Great looking game, I've been following it for quite some time :)

About the models, since you mentioned vector art, there's always the possibility of following rogue-like games in their abstract representation. A good way to achieve this without using plain letters would be with obfuscated models -- for example, the anemone monster you showed, rendered in pure black. This leaves something up for the imagination. I can imagine quite a lot of programmed effects that would differentiate such monsters into different kinds: different sizes, wobbly animation with perlin noise using different parameters, slightly brigther pulsating particle effects or falling smoke-like particles. Maybe the player character could be a shoadow-man too. Just an idea to depart from standard graphics and move a bit more towards rogue-like graphics. :)

Snut said...

I very much like the idea of using more abstract representations! Only thing is, I'm hoping to improve my negligible modelling and texturing skills with this project...

Still, a great idea for another game, or possibly alternate sensory data for this one. It seems that this would be very good for representing telepathy, for example, even in a game which has more conventional graphics for areas in LoS. Hmm.

Another nice possibility would be using it on lower-spec hardware. I've been puzzling for a long time how to cope with scaling down the graphics, and this might be a much better approach than simply disabling big chunks of shiny.