Zylann / godot_heightmap_module

Heightmap module for Godot Engine 3.0 [NO LONGER_MAINTAINED]
Other
64 stars 9 forks source link

Resources about other terrain systems #15

Open Zylann opened 6 years ago

Zylann commented 6 years ago

I'm making this thread to reference useful info about other terrain systems. May not always be doable in Godot 3.0 (GLES3) while keeping the tool simple, but it's a good source of inspiration:

Just Cause 2: https://www.gamasutra.com/view/feature/192007/sponsored_the_world_of_just_cause_.php Megaterrain, 32km across, layer types, streaming from CD, geomorphing, clipmaps

Witcher 3: http://www.gdcvault.com/play/1020197/Landscape-Creation-and-Rendering-in Megaterrain, more than 16km across, two splat layers (background and overlay), clipmaps, many twists, avoids discard to make holes

Lumix Engine: https://github.com/nem0/LumixEngine Classic heightmap, one splat layer using texture arrays, satellite map for far away terrain, uses CLOD

Texture blending trick: https://www.gamasutra.com/blogs/AndreyMishkinis/20130716/196339/Advanced_Terrain_Texture_Splatting.php Use alpha as depth to blend detail textures, looks similar to Witcher 3 overlay technique --> Implemented in the 3.x plugin

Farcry 5 terrain system: https://drive.google.com/file/d/1H6ouhi96pLg8WDlwXSGHFupPyZDv2MF6/view 10x10km, similar to what the module does, but also implements streaming to handle such a large size and most of it happens on GPU instead. The more I see those techniques the more I think Godot should support compute + scriptable rendering pipeline, it's frustrating :p Also outputs NaNs in vertex positions to create holes instead of fragment discard! Uses ID+weight splatmaps, and optimize amount of texture fetches and do displacement decals by using... virtual textures?? Also use the heightmap to bend tree roots and stuff placed on the ground

ISylvox commented 6 years ago

Another reference: https://github.com/JTippetts/U3DTerrainEditor

Uradamus commented 6 years ago

Here is a pretty neat terrain implementation that can smoothly transition from a ground close up to a space view of an entire planet! http://proland.inrialpes.fr/ http://www-evasion.imag.fr/Membres/Eric.Bruneton/

Here is a demo video showing off some of the features. This YouTube channel has a number of other videos showing off the individual systems more closely, so it is worth checking those out as well: https://www.youtube.com/watch?v=uvskrieOWPw