Commit Graph

62 Commits

Author SHA1 Message Date
glassmancody.info 09e03fde2e refactor and fix wobbly shores 2021-08-04 17:49:57 -07:00
glassmancody.info cad0b151cb enable shaders path and dehardcode depth formats 2021-08-04 17:39:11 -07:00
glassmancody.info 70fac33940 initial reverse-z depth implementation 2021-08-04 17:39:11 -07:00
CedricMocquillon d11a6bd92c Share state 2021-05-18 17:57:47 +02:00
glassmancody.info 16856d45c5 Lighting Patch
Fixes build errors with older OSG builds and some issues with 'shared' layout.
Bring back ambient in inventory through lightmodel instead of sun ambient, mirrors scene ambient/sunlight relationship.
Forces shaders when certain lighting methods are enabled and finalize settings.
Correctly override sun for localmap.
2021-04-16 11:55:40 -07:00
glassmancody.info 43ac32921c Rewrite, support different lighting methods 2021-04-13 11:09:19 -07:00
glassmancody.info dda735c54a initial commit 2021-04-13 11:06:16 -07:00
AnyOldName3 9be258d260 Make it possible to reinstate FFP state easily 2021-02-19 19:59:48 +00:00
AnyOldName3 4f510d85ba Merge remote-tracking branch 'upstream/master' into alpha-meddling 2021-02-14 22:42:55 +00:00
Andrei Kortunov 14cf0ce1dc Implement instanced groundcover 2021-01-26 22:29:41 +04:00
AnyOldName3 b6e92c9c6d Use ShaderVisitor to skip translucent framebuffer specific stuff 2021-01-20 23:37:19 +00:00
Andrei Kortunov f175beb304 Define template ref classes in components 2021-01-13 14:25:21 +04:00
AnyOldName3 8f4b856b44 Initial A2C implementation 2020-12-26 22:45:53 +00:00
Nelsson Huotari 55dcc6582a Don't duplicate getFileExtension, use OpenMW's namespaces 2020-11-28 15:03:10 +02:00
Alexei Dobrohotov b523574090 Remove shader visitor settings manager dependency 2020-11-09 13:59:59 +03:00
Andrei Kortunov 660df19ff7 Allow to assign custom shaders to nodes 2020-10-25 18:22:16 +04:00
elsid 40ad87bc4d
Replace OpenThreads by std types 2020-06-25 22:16:09 +02:00
bzzt d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
Capostrophic 0cdc46dfd6 Move forcePPL and clamp to global shader defines (bug #4869) 2019-03-05 23:36:08 +03:00
scrawl 136ef1f738 Fix incomplete settings in recreateShaders() 2017-10-15 17:24:23 +02:00
Chris Robinson 021627bdf8 Mark some functions with override
Fixes some Clang warnings about overriding a virtual function without the
override keyword.
2017-09-18 01:51:11 -07:00
scrawl 4fba157d3b Implement releaseGLObjects for cached resources 2017-08-26 19:29:12 +00:00
Kyle Cooley b62cb0e2a4 Clear out GPU texture/stateset cache 2017-08-20 19:55:16 -04:00
Ewan Higgs 38a2de3c51 convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis 2017-06-09 16:49:25 +02:00
scrawl 051c17a184 Make reportStats const 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 4e0011bfc8 Improve NPC loading performance by caching the cleaned objectRoot 2017-03-01 03:00:49 +01:00
scrawl 75677f03e7 Remove SceneManager::notifyAttached 2017-02-24 02:58:41 +01:00
scrawl d75a3fd0fb Add SharedStateManager to the stats panel 2017-02-23 23:28:49 +01:00
scrawl 8f79fa3d72 Add resource statistics panel opened with F4 2017-02-22 14:28:45 +01:00
scrawl 57b585570a Preload magic effect visuals of the player's selected weapon/spell 2017-02-15 21:01:25 +01:00
scrawl b4a6b6387b Create own instance of osgDB::SharedStateManager so we control when to call prune()
prune() is now called in the background thread, just like the resource cache update.

Seems to improve performance by ~0.3 ms/frame
2017-02-03 03:27:12 +01:00
scrawl 157c11398d Add terrain parallax mapping 2016-03-22 21:46:15 +01:00
scrawl f01e8a6950 Add specular mapping for objects 2016-02-20 19:55:08 +01:00
scrawl 5cf2441b10 ShaderVisitor: support automatic recognition of normal maps based on file pattern
Introduce new settings 'auto use object normal maps', 'auto use terrain normal maps', 'normal map pattern'
2016-02-20 18:00:43 +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 268594dcf1 Recreate shader in NpcAnimation::setAlpha 2016-02-18 22:48:53 +01:00
scrawl a73512afb7 Add shader settings to settings.cfg 2016-02-18 19:38:34 +01:00
scrawl a9ad1b09e2 Introduce ShaderManager & ShaderVisitor
Actual shaders still to be written.
2016-02-18 19:37:56 +01:00
scrawl e05d975020 Change the way that texture filtering settings are applied at runtime 2016-02-18 19:37:55 +01:00
scrawl e28dc3e72f Preload instances in SceneManager 2016-02-09 18:35:26 +01:00
scrawl 49ecac4ced Add a mutex lock around the SharedStateManager 2016-02-07 07:37:35 -08:00
scrawl df57d4bfba Use a common base class for resource managers
Implement updateCache to delete unreferenced cached objects when they have not been referenced for a while.
2016-02-06 17:22:17 +01:00
scrawl ea1efaac0c Use the osgDB::ObjectCache in SceneManager, cleanup 2016-02-06 00:15:12 +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
scrawl 6ac688c0e2 Change the way that texture filtering setting changes are applied at runtime to not require keeping a reference to textures
The references would be difficult to clean up because there may or may not be another reference to the texture in the osgDB::SharedStateManager.
2016-02-05 21:03:11 +01:00
scrawl 5b972ee777 Move texture filtering settings to SceneManager
Practical benefits:

- Filter settings are now applied to native OSG format models. These models do not use TextureManager::getTexture2D since the model itself specifies a Texture.
- The GUI render manager will be able to use its own separate textures, making it easier to turn off filtering for them.
2016-02-05 21:03:10 +01:00
scrawl 64424e7262 Move keyframe loading out of SceneManager to new KeyframeManager 2015-12-13 15:31:07 +01:00
scrawl 3d12b2ca9d Add NifFileManager to avoid duplicate parsing of the NIFFile in SceneManager and BulletShapeManager. 2015-12-02 14:59:32 +01:00