Friday, 28 October 2011

Is it Oblivion?

For those who (maybe) are waiting for some news, here are two screenshots from latest build of our engine. Yes, you see it right - we got water and tall grass implemented, and whole terrain received some visual updates. Still a lot of work to do but I just wanted to let you know we're working and will be posting soon some interesting technical posts about our latest achievements :)

Update: New download link posted (see on the left), and new video!


  1. Hi, I'm doing something similar as you and I think I'm bumping into the same problem you are bumping here.

    Triplanar texturing is great, since it has great performance and combines perfectly with arbitrary environments. However, it becomes dull after a while: you have the same grass, the same rock all over the world and you have grass on unexpected places (for example, if you dig a cave, the ground will have grass; or even in your screenshot you have grass under water).

    I could divide the meshes into different parts and apply different textures to each, but how to make the texture transition seamless?

    Do you know of any technique to improve this?

  2. Hello there,
    Because we use procedurally generated, its look depends on how good we code terrain generating function (its not really fault of triplanar, triplanar allows us to have unstretched textures using world position as UV coords). Our world is in very early stage and we didn't really spend much time focusing on diversified look on the terrain, temperate biome has like 3 material types. Once we re-work our biome we'll have big zones each containing small, diversified biomes with different look so hopefully this will break world's monotony.

    Also, because we're using procedural material assignment, we don't have situations with grass in a cave (because our texturing is not dependent on slope or anything like that, but different layers of materials like soil, rock etc). So to get rid of grass in caves, I suggest using material assignment instead of slope-based texturing.

    Grass under water is caused by unfinished water biome, which should have different surface materials, so it picks usual surface material which is grass :) It will be fixed someday and proper gravel/mud/sand.

    As for texturing, we don't divide mesh based on texture - we apply all textures in one pass. We use technique of material interpolation based on barycentric coords, which allows us to blend different textures for each vertex. I will probably write a blog post about how to achieve this in near future so may be worth to check the blog :)

  3. This was a actually very good publish. In theory I??™d like to publish like this also - getting time and actual effort to make a good piece of writing??¦ but what can I say??¦ I procrastinate alot and by no means seem to obtain something done. sony blu ray disc player