46 minutes ago, Valakor said:
-
Render the rocks decal into your terrain clipmaps. You'll see this decal in the terrain for as far away as your clipmaps support, but obviously with no geometric detail added.
-
At close-ish distances, render the geometry of the rocks that matches the decal using a technique that purely derives its material properties from the clipmaps underneath it.
-
Profit! Your nearby terrain gains both geometry + texture detail, and further-away terrain gains texture detail, all without having to increase the resolution of your heightmap.
Yeah, but i'm still not happy with that. In fact the problem comes up more with recent highly detailed games than with older ones. The more details we add, the more likely remaining issues become illusion breakers.
The problem is, if you add decals, maybe even with POM so they peak correctly through the height map, the intersections with the terrain pop out. Different texture or geometry resolution, just one of them and it breaks. Also, detailed rocks or houses changing their LODs at other distances than the terrain is not really an advantage i think. Although overall the added details are great, those techniques reveal kind of dirty tricks.
So what i would suggest is to abandon height maps in general. I see no more need for them. Instead of messing with hackery to allow things like caves or overhangs, why not just a general solution to handle LOD with all static world geometry? I see that's not easy, and we loose things like instancing rocks, easily sharing their textures, etc., but streaming is necessary anyways with open world.
However, i see i'm daydreaming - pretty much a long time goal with many problems to solve. E.g. likely foliage can never be handled with a uniform world geometry approach, but rocks and most architecture should be possible.
Another option would be to blur the final image to hide decal discontinuities. I would be happy with that. CG is much too sharp for me, but many or even most people desire crisp images. (It's interesting how movies get this right when they mix CG and real footage and everybody agrees with that, but if we release a game that's a bit blurry, people are angry about that.)
I also wonder if anybody ever tried to smooth dithered transparency with temporal AA? This would be a real fix for such issues if it works.