Monthly Archive for June, 2008

Fixed gaps

I finally fixed the annoying ‘gaps’ in the terrain that occur between detail levels. Behold this picture proving it:

Next up: frustum culling.

WebTerm

Tonight I dusted off my old web toolkit (that I have passed on to the company I used to work for) to see if it still worked. Turns out it did, so I played with the command prompt widget I came up with a while back, and embedded it into the main form. It looks quite neat.

If I can be bothered, tomorrow I will do some work on getting it to actually act like a full terminal, so you can run useful things like nethack and vim :)

Textures 2

I spent a little while playing with the texture shaders and scaling, and it looks a bit better now. For reference, the world is 500×500km at the moment. Yes, km :) . If that wasn’t enough, the size of the final world will be 6x that - I’m only using one face of the cube that deforms into a sphere at the moment.

Look carefully at the second to last picture below - it has a little white dot in the middle. That’s a 1m3 cube - so, about the size of a (short) player. That should give a sense of scale.

There’s still a bunch of things that need attention, obviously. My TODO list for the terrain renderer currently looks like this:

  • Fix terrain gaps (again!).
  • Add continuous ‘blending’ to the height, so new LOD levels don’t ‘pop’ in and look ugly.
  • Make it not look hideous from orbit. Probably just need to fix the artifacts where the water hits the land and it’ll look OK.
  • More textures / texture detail / texture variation. This will not play nicely with my minimum hardware requirement of an Nvidia 5200FX though (ie: my work machine).
  • Frustrum culling to improve the FPS.

Other than that, I’m quite pleased. It’s come a long way from a couple months back, considering I only hack on this as a break from more important work :) .

Textures

Since my last post I’ve intergrated the new perlin noise system into the graphical renderer, and it works very nicely, fixing a lot of my problems :)

This evening I implemented (very basic) texture splatting in a GLSL pixel shader. The textures themselves are some random files I had sitting around, and aren’t exactly scaled right, so it still looks a bit odd. A lot of it is working now, however - some slightly better texture choices and scales and it should look pretty good :)

I also fixed the gaps in between texture patches, although I suspect their texture coordinates aren’t working quite right yet…