scrawl
28fd492711
Don't use terrain LOD for the map camera
2017-03-14 19:27:56 +01:00
scrawl
e7a0878c10
Add CompositeMapRenderer info to the stats panel
2017-03-14 19:27:56 +01:00
scrawl
ec0b743123
Revert "Change ordering of LocalMap nodes to make sure they are traversed before the CompositeMapRenderer."
...
This reverts commit 7d72c70c93ee3c0cc3d00d37b22c339d0103cd19.
2017-03-14 19:27:56 +01:00
scrawl
c921620ef3
Compile the drawables of a composite map one by one to avoid frame drops for larger maps
2017-03-14 19:27:56 +01:00
scrawl
47ca8aeee5
Use the time elapsed instead of # compiled as limit
2017-03-14 19:27:56 +01:00
scrawl
8a6d909b22
Fix composite map being compiled twice
2017-03-14 19:27:56 +01:00
scrawl
683e625c6c
Rewrite CompositeMapRenderer to be based on Drawable and share the FBO
2017-03-14 19:27:56 +01:00
scrawl
4549196b31
Use the new way of terrain preloading in CellPreloader/Scene
2017-03-14 19:27:56 +01:00
scrawl
4baa795152
Add preloading implementation to QuadTreeWorld
2017-03-14 19:27:56 +01:00
scrawl
9db71e3f62
Recompute the LOD stitching when the view changes
2017-03-14 19:27:56 +01:00
scrawl
ef704db877
Fix reset of changed flag
2017-03-14 19:27:56 +01:00
scrawl
1c15686353
Remove non required use of WorkQueue
2017-03-14 19:27:56 +01:00
scrawl
19d516cbda
Use the QuadTreeWorld based on distant terrain setting now that it sort of works.
2017-03-14 19:27:56 +01:00
scrawl
433900fca5
Fix waiting on initial quad tree build
2017-03-14 19:27:56 +01:00
scrawl
4dbd224249
Hide the terrain in non-exterior cells
2017-03-14 19:27:56 +01:00
scrawl
2580de11a4
Refactor ownership of ViewDataMap
2017-03-14 19:27:56 +01:00
scrawl
5a3c645c89
Enable lazy compiling of composite maps
2017-03-14 19:27:56 +01:00
scrawl
99e18f0d68
Clear the ViewData on exit
2017-03-14 19:27:56 +01:00
scrawl
bb991850da
Add LOD stitches
2017-03-14 19:27:56 +01:00
scrawl
6bd286d924
Fix unnecessary resizing in ViewData
2017-03-14 19:27:56 +01:00
scrawl
8c151364df
Add special handling for CullVisitor to QuadTreeWorld.
...
- Cull only against bounding box, not bounding sphere, as this appears to perform better.
- Also traverse into non visible nodes to compute their LOD, this is to avoid nodes having to be loaded in when the player turns the view around, and will avoid unnecessary refs/unrefs of rendering data in the View. This should probably be turned off at some point for static cameras, such as the local maps.
2017-03-14 19:27:56 +01:00
scrawl
f19a88be9d
Reject QuadTreeNodes with invalid bounds
2017-03-14 19:27:56 +01:00
scrawl
7d004bf757
Preliminary rendering of QuadTreeWorld
2017-03-14 19:27:55 +01:00
scrawl
e36bdb490e
Add view data structure for efficient collection of LOD nodes to use for a given camera/intersection
2017-03-14 19:27:55 +01:00
scrawl
0efc54c749
Subdivide the composite maps
2017-03-14 19:27:55 +01:00
scrawl
c684860e3b
Change ordering of LocalMap nodes to make sure they are traversed before the CompositeMapRenderer.
2017-03-14 19:27:55 +01:00
scrawl
0756fc4ae6
Optimize getBlendmaps for the general case that most points are within the given cell
2017-03-14 19:27:55 +01:00
scrawl
81c9853fe9
Fix handling in getBlendmaps when the chunk is >1 ESM::Cell
2017-03-14 19:27:55 +01:00
scrawl
b384087e28
Fix handling in fillVertexBuffers when the chunk is >1 ESM::Cell
2017-03-14 19:27:55 +01:00
scrawl
819860081f
Remove custom bounding box
2017-03-14 19:27:55 +01:00
scrawl
ce8c4ad4f5
Add quad tree implementation (no rendering yet)
2017-03-14 19:27:55 +01:00
scrawl
2d549d088e
Get the world size from the ESM::Land store
2017-03-14 19:27:55 +01:00
scrawl
14225a42c6
Remove unused pointer to IncrementalCompileOperation
2017-03-14 19:27:55 +01:00
scrawl
c487df0abb
Move updateTextureFiltering and material into the base class
2017-03-14 19:27:55 +01:00
scrawl
5eff286c71
Use separate node mask and parent for CompositeMapRenderer to allow the loading screen to pre compile composite maps.
2017-03-14 19:27:55 +01:00
scrawl
7e4450da55
Change the renderOrder of composite maps to ensure they are updated before water reflections or other cameras that may be using it.
2017-03-14 19:27:55 +01:00
scrawl
b1d4bb5708
Add CompositeMapRenderer
...
Temporarily render all terrain using composite maps for testing purposes
2017-03-14 19:27:55 +01:00
scrawl
e323b2fa7b
Use the SceneManager's ShaderManager
2017-03-14 19:27:55 +01:00
scrawl
0fc465da59
Store the min/max height in LandData
2017-03-14 19:27:55 +01:00
scrawl
051c17a184
Make reportStats const
2017-03-14 19:27:55 +01:00
scrawl
5fb854036d
Use a forward declaration to avoid having to workaround Qt MOC
...
Don't think that guard was still needed, but a forward declaration is better anyways.
2017-03-14 19:27:55 +01:00
scrawl
80a0398f9d
Load LandData into the LandObject to avoid threading conflicts when the same data is being loaded by two threads
2017-03-14 19:27:55 +01:00
scrawl
20d30bb8d7
Move mDataLoaded into LandData
2017-03-14 19:27:55 +01:00
scrawl
16b5cadd9e
Fix order of operations w.r.t clearing cache
2017-03-14 19:27:55 +01:00
scrawl
2c68ed4fb4
Remove no longer required use of UnrefQueue as the new resource manager will naturally clear the cache from the worker thread
2017-03-14 19:27:55 +01:00
scrawl
35d53acc65
Factor out terrain chunk loading/caching into a new resource manager
2017-03-14 19:27:55 +01:00
scrawl
274690f790
Refactor BufferCache to allow caching buffers of different sizes
2017-03-14 19:27:55 +01:00
scrawl
9a3a64f0c4
Add resource manager for ESM::Land to allow data to be unloaded when no longer required
2017-03-14 19:27:55 +01:00
scrawl
b898315962
cellpreloader: abort all tasks first before waiting
2017-03-14 19:27:55 +01:00
scrawl
5f76317807
Wait for completion of CreateMapItem on exit to avoid potential threading issue
2017-03-14 19:27:55 +01:00