Commit Graph

69 Commits

Author SHA1 Message Date
Andrei Kortunov 2d869ca9ff Fix node masks signed/unsigned mismatch 2021-04-20 10:52:51 +04:00
Andrei Kortunov 14cf0ce1dc Implement instanced groundcover 2021-01-26 22:29:41 +04:00
Andrei Kortunov 8ca3c3b123 Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
bzzt lost a hitlab login ce505a9bb3 crashfix + optimiziation
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
bzzt d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
bzzt ed20d869b4 waterculling for both terrain 2020-04-23 08:53:21 +02:00
Bret Curtis 8a8107e837 as it says; revert vismask and uncomplicate openmw 2020-04-20 20:57:38 +02:00
Andrei Kortunov 84979fa8b7 Move VisMask to components 2020-02-16 16:03:35 +04:00
elsid 4cd2ff9a3d
Avoid virtual call in TerrainGrid dtor
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:31:9: warning: Call to virtual function during destruction [clang-analyzer-optin.cplusplus.VirtualCall]
        unloadCell(mGrid.begin()->first.first, mGrid.begin()->first.second);
        ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:29:12: note: Assuming the condition is true
    while (!mGrid.empty())
           ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:29:5: note: Loop condition is true.  Entering loop body
    while (!mGrid.empty())
    ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:31:9: note: This destructor of an object of type '~TerrainGrid' has not returned when the virtual method was called
        unloadCell(mGrid.begin()->first.first, mGrid.begin()->first.second);
        ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:31:9: note: Call to virtual function during destruction
2019-11-17 18:50:11 +01:00
bzzt a730365ea1 Creanup Distant Terrain code
- Cull terrain in the stock osg::CullVisitor
- Do not compile composite maps for shadow camera
- Do not abuse userdata for composite maps
2019-06-05 19:09:57 +04:00
bzzt 63ab7345be Reuse traversal result for different traversal with same view point
Rename eyePoint to viewPoint to match OSG conventions (eyePoint is the camera position, viewPoint is for LOD handling)
2019-04-07 11:14:37 +04:00
Andrei Kortunov a6fd077537 Render nearby default cells if the Distant Terrain is disabled 2019-03-08 22:15:27 +04:00
bzzt 5bce3cbc68 Don't use MWRender namespace in common terrain components 2019-02-27 00:04:01 +03:00
Andrei Kortunov e06f0b797a Replace all NULLs to nullptr 2018-10-09 10:21:12 +04:00
Miloslav Číž 414e6caafe Make tb work with distant terrain 2018-06-14 13:14:38 +02:00
Miloslav Číž f18d57429e Move cell border management to World 2018-06-14 12:27:22 +02:00
Miloslav Číž 1b8d500c07 Make tb command work again 2018-06-14 12:01:09 +02:00
Miloslav Číž db8aaa74d6 Start cell border debug drawing 2018-06-13 01:48:31 +02:00
scrawl 6ccb6009ee Use the View-based preloading for TerrainGrid as well 2017-03-14 19:27:56 +01:00
scrawl bb991850da Add LOD stitches 2017-03-14 19:27:56 +01:00
scrawl 0efc54c749 Subdivide the composite maps 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 e323b2fa7b Use the SceneManager's ShaderManager 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 804f873649 terrain: factor out texture caching into a separate class 2017-03-14 19:27:55 +01:00
scrawl eef63a880a terrain: use a custom drawable for multi-pass render instead of osgFX::Effect
osgFX::Effect is awkward to use because of the lazy-definition of passes, no support for compileGLObjects, useless 'Technique' abstraction and having to define silly methods like 'effectAuthor()'

Handling the multi-pass rendering inside the Drawable also avoids redundant culling tests against the same bounding box for each pass.
2017-03-14 19:27:55 +01:00
scrawl 8f79fa3d72 Add resource statistics panel opened with F4 2017-02-22 14:28:45 +01:00
scrawl 157c11398d Add terrain parallax mapping 2016-03-22 21:46:15 +01:00
scrawl f898bf493f Don't use Geodes 2016-03-10 13:17:01 +01:00
scrawl 8f81df2bd3 Cleanup 2016-02-20 20:34:56 +01:00
scrawl 0db7163363 Add specular mapping for terrain 2016-02-20 19:55:08 +01:00
scrawl 6a0ac824bd Fix terrain error in OpenCS 2016-02-19 15:00:58 +01:00
scrawl ca0e1fe0e0 Set the osg::Material on the terrain root node 2016-02-19 01:45:28 +01:00
scrawl 6000e48bba Add terrain shaders and normal map support
Textures with _n filename suffix are automatically recognized as terrain normal maps.
2016-02-19 01:37:30 +01:00
scrawl e05d975020 Change the way that texture filtering settings are applied at runtime 2016-02-18 19:37:55 +01:00
scrawl 5824619a95 Clean up includes 2016-02-12 19:28:10 +01:00
scrawl 8b596dfcbe Remove support for OSG 3.2
Since commit e8662bea31, we're using OSG functionality that contains an unfixed crash bug in version 3.2. The bug is fixed in version 3.4 (OSG commit 6351e5020371b0b72b300088a5c6772f58379b84)
2016-02-12 14:46:45 +01:00
scrawl 5e876b1379 Add missing include 2016-02-10 15:34:06 +01:00
scrawl 98c5e072f2 Swap the terrain cache update order to make more sense 2016-02-09 21:17:10 +01:00
scrawl 0865cea211 Preload terrain 2016-02-09 21:16:11 +01:00
scrawl 8aba74e6ee Remove GridElement 2016-02-09 20:23:53 +01:00
scrawl d11c2864df Introduce UnrefQueue to handle the deleting of no longer needed objects in the background thread 2016-02-09 15:45:35 +01:00
scrawl c3ad4dad75 Fix applying of filter settings on terrain textures 2016-02-07 05:53:56 -08:00
scrawl 9e5225bb6f Do not unref a Texture's image data after applying it 2016-02-05 23:21:54 +01:00
scrawl 9e53e12c70 More renaming of TextureManager -> ImageManager 2016-02-05 23:10:27 +01:00
scrawl f99f403dda Rename TextureManager to ImageManager 2016-02-05 23:03:53 +01:00