Commit Graph

209 Commits (b847914d6f15ad7b11dc23f59e8a5e52e406f0d3)

Author SHA1 Message Date
Allofich 42402976e3 Fixes for building in MSVC 8 years ago
Bret Curtis f0b21cca22 use own inline hash_combine function 8 years ago
Bret Curtis 154d7cffa2 replace and purge boost::function 8 years ago
Bret Curtis 07f75e1104 replace boost::shared_ptr in extern and components 8 years ago
Ewan Higgs 38a2de3c51 convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis 8 years ago
scrawl 8d84869432 Fix commit 8f71b65d38 (don't overwrite the previous user data)
This resulted in a crash/corruption because the KeyframeController, for performance reasons, does not check that the expected user data is there and of correct type.

(Fixes #3829)
8 years ago
scrawl 8f71b65d38 sceneutil/attach: inherit the UserDataContainer to avoid the resource cache from being cleared incorrectly 8 years ago
scrawl 3d58ba7301 Fix boolean test 8 years ago
scrawl 34130fc5cc Fix handling in LightListCallback when the node is not a Group 8 years ago
scrawl b78a9f89af Refactor LightListCallback to allow for integration in custom Drawables. 8 years ago
scrawl 13a6070629 Remove warning spam in skeleton.cpp
If the root bone is missing, that is caused by all bones being missing which will have been logged already.
8 years ago
scrawl c1b1d502ee Fix up commit 330e5fefd1 8 years ago
scrawl 4051018862 optimizer: fix FlattenStaticTransformsVisitor not respecting the is permissible callback 8 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.
8 years ago
scrawl 706ac45c76 Fix missing particles caused by shallow copy of ParticleSystemController 8 years ago
scrawl 5caf53b6a3 optimizer: avoid reordering nodes
Fixes an osgParticle cloning issue.

(Fixes #3773)
8 years ago
scrawl a95773beef Fix unnecessary copy of ParticleSystem in SceneUtil::CopyOp 8 years ago
scrawl 48e0f098ff Add missing copy of callbacks when a Transform is replaced by Group
(Fixes #3770)
8 years ago
scrawl 330e5fefd1 optimizer: consider a Group with more than one child redundant as well
While there could be some value in this hierarchy (i.e. improved culling), we don't know if this is being used sensibly; and using a 'flat' hierarchy helps other optimizations.
8 years ago
scrawl e4c12e5e56 optimizer: don't merge Geometry that has transparency sorting enabled 8 years ago
scrawl ebfd845eae optimizer: run MERGE_GEOMETRY after removing redundant nodes 8 years ago
scrawl 43f31d6e54 optimizer: fix MERGE_GEOMETRY to work with Geometries not attached to a Geode 8 years ago
scrawl f2a323238f optimizer: merge groups as part of REMOVE_REDUNDANT_NODES 8 years ago
scrawl af716d4b61 optimizer: remove hardcoded condition in RemoveRedundantNodesVisitor 8 years ago
scrawl 698738c649 optimizer: use asXYZ() instead of dynamic_cast 8 years ago
scrawl f7cb4bd245 optimizer: remove some cruft 8 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.
8 years ago
scrawl 305cccd263 Don't print Geometry data (vertices, triangles, etc.) in showscenegraph 8 years ago
scrawl c231b06320 Remove boneOffset node after using it 8 years ago
scrawl 8f79fa3d72 Add resource statistics panel opened with F4 8 years ago
scrawl 4aa40d16bc Increase the importance of light radius when sorting lights (Bug #2759) 8 years ago
scrawl 67e4a7e37b Change some osg::clone's to direct copy constructor to avoid dynamic_cast overhead 8 years ago
scrawl 839928e210 Fix light data being reset for the wrong light 8 years ago
scrawl a46593fa74 Add PreloadItem::abort() to avoid no longer required cells from blocking the work thread 8 years ago
scrawl c00532d82d Add LightStateCache to avoid redundantly setting the same gl_Light
Normally, osg::State would do this for us (via lastAppliedAttribute), but since we're using a custom StateAttribute to apply all lights at once, we have to track ourselves.

Further reduction of GL calls in a typical scene by ~2%
8 years ago
scrawl 4d4dc1b9c1 Add specialized DisableLight state attribute for more efficient undoing of light state
Seems to reduce # of GL calls by 10-15% in a typical scene.
8 years ago
scrawl a1069dce3c Change UnrefQueue to accept osg::Referenced instead of osg::Object 8 years ago
scrawl 33e654f94d Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls 8 years ago
scrawl 767eba941f Speed up finding of attachment node by using the cached nodeMap 8 years ago
scrawl a76d693627 Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal() 8 years ago
scrawl 30b101b175 Fix build error in OSG_USE_FLOAT_MATRIX=OFF mode due to a double implicit conversion to double (pun doubly intended) 8 years ago
scrawl 84a92e665c Improve performance in RigGeometry by optimizing for the most common case of identity geomToSkelMatrix 8 years ago
scrawl 53e4db8a8f Add dummy serializer for CameraRelativeTransform to allow serializing content of Sky Root 8 years ago
scrawl 34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 8 years ago
scrawl eae35af13d Check if the bounding box changed before calling dirtyBound() 8 years ago
scrawl cca75499ee Clear the Skeleton's bone cache when a node is added/removed (Fixes #3663) 8 years ago
scrawl c0faeea938 RigGeometry check if mesh has normals (Fixes #3667) 8 years ago
MiroslavR 11565b5966 Make actors with non-portable lights in inventory glow (Closes #2042, #3338) 8 years ago
scrawl 513e1da8a3 Remove unneeded casts 8 years ago
Aesylwinn 5753f52b47 Move water mesh + simple state generation to components library. 9 years ago