I’m having some issues with tiling on my own much less impressive terrain. I was thinking of making the detail / tiled texture fade with distance so at least the tiles will be less apparent on far terrain. (So just let the low detail colour map show instead). Would still have problems with near terrain though
I’ve heard of other ways like placing another noise texture over the detail ones to break up tiling a bit - but not sure if that’ll work in anger.
Thanks, of course I’ll share the code The reason why there are no builds yet are simple: I don’t want to upload 230MB every time I make a change … I of course could use a version controll system but that’s a bit oversized.
If you ported it to glsl, It would be really neat if you could share it (maybe in the original thread?), as many user could not run the cg sample …
Tell me please: how are you currently defining the terrain map? Is it entirely random, or can it take a heightmap? Do you yet have a tool for creating terrains (or support for one), or plans for developing one in the future?
I’ll admit that I’d love to use a terrain system like this at some stage!
The terrain is defined by a heightmap and multiple other maps … I’ll make a short list of used assets here:
Terrain:
heightmap.png - 4096 x 4096 grayscale (16 bit)
normals.png - 4096 x 4096 rgb (16bit -> will get scaled to 8 bit when I have some time)
texturemap.png - 4096 x 4096 rgba (16 bit , see normals)
----
~ 130 MB
Materials:
5 Different materials (grass, rock, snow, gravel, sand), each:
- name.dds 2048 x 2048 (DXT1)
- name_N.dds 2048 x 2048 (DXT1)
- To implement: name_H.png (parallax occlusion) 1024 x 1024 (DXT1)
----
~ 90 MB
I use World Machine 2 to generate the terrain, normals and texturemap, it’s an awesome tool used by many big studios (DICE, Unigine, etc.). It’s a bit difficult to get a start, but when you have done that, you have an awesome list of tools to create, filter and sculpt your terrain (fully procedural! that’s what I like as a programmer).
One can download world machine from http://www.world-machine.com/. I’ve attached my project file, if one is interested in it. (Please don’t hate me for not attaching the build result, but 8GB are just too much! You’ll have to build it on your own … )
When the terrain is final, I’ll of course share the source. The problem yet is the size of the assets, the code is a mess (without comments), and It requires a C++ module which is only compiled for windows (& Panda3D Dev-Build) yet. I had no time to make it work on linux yet.
There’s an editor in work, but it will be more a game editor than a terrain editor, and is by way not finished. terrain v2.zip (5.89 KB)
I would be very interested to see if I can turn this into a plugin so that it works with my editor for the community, so I’ll be waiting for the source with much anticipation
Well, the source is not that big problem, as I’ve cleaned it up now. I’ll upload the assets and source to dropbox this afternoon I think … but the real problem is, it requires a c++ extension (for the quadtree, because of performance).
I will include the visual c++ project and the bat files to compile interrogate, and also 2 precompiled versions (one for windows, latest panda sdk, and one for windows, latest panda dev build). If you are on linux, you will have to build the plugin yourself, or use another method to generate the heightfield.
I have also a python version of the quadtree, but it is not so performant with 4096x4096 heightmaps, you would have to switch to a 2048x2048 heightmap or so … but as fallback it might be worth a try.
I’ve uploaded a dev-build now. To be able to use it, you have to build the quadtree-module for your system (except you use windows with the latest panda3d dev-build, then you can leave it as is). You can get the source for the module here: https://www.dropbox.com/sh/evs9ak22nhbqqrm/UXn1ycMl7D