Qt based 3D engine with geo-referenced entities
This used to be a very simple 3D engine that could show a 3D terrain and objects. But it has been pushed much further and is now a general purpose engine.
Open .pro file in Qt Creator and build without shadow build option.
- Global terrain with automatic level of detail. Can be generated from real earth elevation data or procedurally and can be populated with vegetation.
- Geo-referenced objects, with parent-child relationship
- Q3D file format, with a python script to export from Blender
- Scenes are setup in a XML file or at runtime
- Basic animation classes
- Frame rate drops too fast when scene goes up in complexity. Probably too much overhead on object/material setup.
- Tile seams : for now, seams between terrain tiles are visible. Should create small patches on edges to match tiles.
- Z-fighting : should use an adaptive z-buffer depth to avoid this.
- Loading : sometimes tiles simply don't show up.
- Vegetation rendering : vegetation objects (and all alpha containing objects) should be rendered last to avoid alpha problems.
- Vegetation spawning : still some bug in this algorithm.
- Skinning : nothing done yet.
- Frustum : sometimes objects disappear because they are not considered inside the viewing frustum (although we know they are).
- PBR rendering : allow scripting of PBR methods for realistic shading.
- Shaders: there are some artefacts due to bad looping when using perlin noise.