AutoLoD Terrain / LoD quad tree terrain

Hello, as i found, babylonjs provides almost everything for development a game. I still missing one big guy.

  • Babylonjs uses Ground/heightMap
    Also has Dynamic Terrain extension

  • Still i have no idea how to create a large terrain (Not infinite) with AutoLod.
    Could it be possible to use Dynamic Terrain AutoLOD system for our ground with heightMap? Just making a terrain that is not infinite, just as normal ground with AutoLOD support?

Example: LOD Quad Tree Terrain Engine - PLAYCANVAS
Playcanvas provide perfect example here.

  • It would be very good if babylonjs provide quadtree autolod for groundmesh or QuadGround fce?

Thanks for view.

Hello I will remove your feature request from the repo as it was NOT discussed here before :wink:

The goal of the repo issue list is to track committed features :slight_smile:

The playcanvas demo just kills my browser (I was literally not able to see it)

Let me ping some folks who can be interested by the discussion (@jerome, @MackeyK24. @JohnK for instance)

Infinite Terrain with Ring LOD and t-Junction Transitions – PrymeDesign Needs some work but will get you going that way. I know its infinite like you asked for it not to be. But infinite is just another step, take that step out and you will have a set area.

@Pryme8 Thank you, I will take a look at it.

@Deltakosh Thanks for response, Playcanvas demo is working well for me at 60 FPS (chrome)
It is an example, i have no idea how they did it. I would be really happy to see AutoLOD for groundMesh

As shown in example, the playcanvas is using (Not sure if not also reducing subdivisions) LOD for textures, reducing distant textures to be lower resolution.

Yo @Pryme8

I need to talk to you more in depth about LOD for terrains. I am currently working on terrain exporting from unity. I segment large terrains into square chunks so I can assign multiple mesh collides to each small chunk instead of one large mesh. I guess I end up with the added benefit of the camera frustum not rendering the terrain it can see… like behind the camera.

Now the mesh pieces are already pretty low in polys and if I were to lower the mesh pieces … it ends up with holes in the terrain… how are you lowering the polys for your LOD terrains ???

Look up t-junctions @MackeyK24

What are T junctions… I tried google but only your article comes up… and it doesn’t say what is t junctions and what that has to do with mesh LOD ???



Actually looks like T-Junctions are not really used anymore…

@Pryme8 @MackeyK24 @Saqirm anyone is working on this? I’m implementing an water/ocean shader (to be released soon) and would like to have an “infinite plane” for oceans. the “Infinite Terrain with Ring LOD and t-Junction Transitions – PrymeDesign” is pretty much what I’d need.

Is anyone already working on this and would like to share efforts?

@Pryme8 anything you’d recommend to turn your PG into standalone code? It could be merged with BJS in the end.

It would need to be reworked. Ummm, and the normal calcs are screwy right now.

Id recommend using that as a system model, pull the mesh generation out of it and start from there from scratch.

Plus it looks like T junctions are a thing of the past, Id honestly invest time in a more modern method.

Read that PDF on “ADAPTIVE LEVEL OF DETAIL FOR LARGE TERRAIN VISUALIZATION”

Its the 3rd one I posted. That looks like the ticket.

@brunobg I’m not currently working on this.

You can use Infinite terrain for your water, Inifinite Terrain extension also support autoLOD and can use WaterMaterial.

@Saqirm What is the infinite terrain extension? Do you mean the dynamic terrain extension?

Yes, Dynamic terrain extension.