Commit Graph

86 Commits (a083439139b883b260605fac90d6304ea293effa)

Author SHA1 Message Date
Andrei Kortunov 1f4dd3b393 Make partial binary search case insensitive, as it supposed to be (bug #4558) 6 years ago
scrawl a5adc5b018 Add NPC base skeleton files to the optimizer blacklist (Fixes #4159) 7 years ago
scrawl 136ef1f738 Fix incomplete settings in recreateShaders() 7 years ago
scrawl 4fba157d3b Implement releaseGLObjects for cached resources 7 years ago
Kyle Cooley 979b0d7211 Code cleanup and more cache clearing 7 years ago
Kyle Cooley 679a284735 Use scoped lock instead of directly locking/unlocking mutex 7 years ago
Kyle Cooley b62cb0e2a4 Clear out GPU texture/stateset cache 7 years ago
scrawl be940656db Add '0' as an alias for 'OFF' for OPENMW_OPTIMIZE 7 years ago
scrawl 813af876f6 Use a partial binary search in isReservedName (Fixes #3835) 7 years ago
scrawl 051c17a184 Make reportStats const 7 years ago
scrawl 35d53acc65 Factor out terrain chunk loading/caching into a new resource manager 7 years ago
scrawl 9d72d9f0c9 Change order of operations in SceneManager::updateCache to allow deleting of StateSets that just got unreferenced by the scene 7 years ago
scrawl 5866f0f80b Add OPENMW_OPTIMIZE env variable to help debugging optimizer-related issues
Example:

OPENMW_OPTIMIZE=OFF
OPENMW_OPTIMIZE="~FLATTEN_STATIC_TRANSFORMS"
7 years ago
scrawl 29556a1802 More consistent wording of errors/warnings
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.

An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.

The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.

Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
7 years ago
scrawl 4e0011bfc8 Improve NPC loading performance by caching the cleaned objectRoot 7 years ago
scrawl 585524805f Add 'tri ' variant of part filters to optimizer ignore list 7 years ago
scrawl 75677f03e7 Remove SceneManager::notifyAttached 7 years ago
scrawl 3df7a8c4d8 Avoid FLATTEN_STATIC_TRANSFORMS optimization for non-Geometry drawables 7 years ago
scrawl ebfd845eae optimizer: run MERGE_GEOMETRY after removing redundant nodes 7 years ago
scrawl e33829d493 Add fork of osgUtil::Optimizer with backported fixes that have not been released yet
Remove optimizers that won't be used.
7 years ago
scrawl 5e2335f250 Use the osgUtil::Optimizer post loading in the SceneManager 7 years ago
scrawl d75a3fd0fb Add SharedStateManager to the stats panel 7 years ago
scrawl 8f79fa3d72 Add resource statistics panel opened with F4 7 years ago
scrawl 3693f05ef5 Transform world-space particle systems in update callback so that animations are accounted for 7 years ago
scrawl 57b585570a Preload magic effect visuals of the player's selected weapon/spell 7 years ago
scrawl c95868969b Early out for scene graphs with no update callbacks in SceneManager::notifyAttached 7 years ago
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
7 years ago
scrawl e90941a8b3 Wrap the scene template reference in another object for const correctness and to avoid it from being serialized with the osgDB serializer 7 years ago
scrawl 6f31b3d79f Add parallax mapping for objects 8 years ago
scrawl 157c11398d Add terrain parallax mapping 8 years ago
scrawl 24ae9f4ac1 Remove no longer needed apply(Geode&) in SetFilterSettingsVisitor and NodeToShapeVisitor
In OSG 3.4 (which is now a requirement), Drawables are normal Nodes attached in the scene graph. Geode is still provided for backwards compatibility, but does not need to be specially handled here because it now functions just like a normal Group node.
8 years ago
scrawl e8caafa190 Remove no longer needed applyEffect(osgFX::Effect&) in SetFilterSettingsVisitor
No longer needed because terrain texture filtering is now updated manually in TerrainGrid::updateTextureFiltering.
8 years ago
scrawl 8bd16e4d5a Don't compute the world matrix multiple times 8 years ago
scrawl 8e826eefe6 Add missing initialization 8 years ago
scrawl cdefee3e64 Add call to MultiObjectCache::releaseGLObjects 8 years ago
scrawl 4ca6e91292 Fix in-code default settings so that we don't attempt to use shaders in OpenCS 8 years ago
scrawl f01e8a6950 Add specular mapping for objects 8 years ago
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'
8 years ago
scrawl 6000e48bba Add terrain shaders and normal map support
Textures with _n filename suffix are automatically recognized as terrain normal maps.
8 years ago
scrawl 268594dcf1 Recreate shader in NpcAnimation::setAlpha 8 years ago
scrawl a73512afb7 Add shader settings to settings.cfg 8 years ago
scrawl a9ad1b09e2 Introduce ShaderManager & ShaderVisitor
Actual shaders still to be written.
8 years ago
scrawl e05d975020 Change the way that texture filtering settings are applied at runtime 8 years ago
scrawl c4d38bb42d Fix clang analyzer warnings 8 years ago
scrawl 5824619a95 Clean up includes 8 years ago
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)
8 years ago
scrawl 9f729667fb Remove debug output 8 years ago
scrawl e28dc3e72f Preload instances in SceneManager 8 years ago
scrawl c8054424c9 Preload items equipped by NPCs 8 years ago
scrawl 41233fc8e5 Keep a reference to the original scene template for as long as the instance is used 8 years ago