Commit Graph

26 Commits (d4d46fc60256177968c96e9653ced2f83652338e)

Author SHA1 Message Date
scrawl b78a9f89af Refactor LightListCallback to allow for integration in custom Drawables. 8 years ago
scrawl 67e4a7e37b Change some osg::clone's to direct copy constructor to avoid dynamic_cast overhead 8 years ago
scrawl 34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 8 years ago
MiroslavR 11565b5966 Make actors with non-portable lights in inventory glow (Closes #2042, #3338) 8 years ago
scrawl aec8c38461 Move observer_ptr include where it belongs 9 years ago
scrawl 438b30d6f0 Move configureLight to a separate file 9 years ago
scrawl e39f49a88f OSG extensions namespace fixes 9 years ago
scrawl c442af09c5 Write more documentation for the lighting system 9 years ago
scrawl 8e9571d155 Double buffer the light StateAttributes and StateSets
Fixes a race condition where the position of a light could jump a frame ahead.
9 years ago
scrawl 1b77428c59 Use const reference, thanks ace13 9 years ago
scrawl fc7456e0a1 Explicitely opt for float matrices in performance critical places 9 years ago
scrawl 35459f20d5 Refactor lighting mask 9 years ago
scrawl bd8332d2b0 Remove default copyop argument for nodecallback copy constructors
Works around a compiler warning with OSG 3.4:

warning: base class 'class osg::Callback' should be explicitly initialized in the copy constructor [-Wextra]

With no default argument for osg::CopyOp&, the compiler no longer sees the function as a real copy constructor and stops warning about the missing virtual initializations.

We don't care about this warning because there is nothing interesting to initialize in the osg::NodeCallback base anyway.

A proper fix for the warning would require to inserting OSG_VERSION conditional compiling all over the place, that is as long as we are still supporting OSG 3.2.
9 years ago
scrawl 0210b87ffc Revert "Fix LightSource crash"
This reverts commit f336c6db87.

Root cause should be fixed in next commit.
9 years ago
scrawl c996702b56 Fix some uninitialised variables found by static analysis 9 years ago
scrawl c23609e22b Cache the light list in LightListCallback
When multiple cameras are rendering, the later cameras can reuse the light lists from the first camera.
9 years ago
scrawl f336c6db87 Fix LightSource crash 9 years ago
scrawl 49df6b7450 LightManager: fix incorrect view matrix for RELATIVE_RF cameras 9 years ago
scrawl 8552a9d82c Add multiple camera support to LightManager 9 years ago
scrawl 18f4eaa8dc Preliminary handling for overflowing light lists 10 years ago
scrawl 1d198a5592 Keep the light list StateSet cache for more than one frame 10 years ago
scrawl 5a7f2a4f1f Restore light attenuation settings 10 years ago
scrawl 3dcb167066 Map rendering 10 years ago
scrawl 61aaf0cf70 Attach light lists to the object base nodes instead of each renderable
Apparently that is how Ogre worked (on the SceneNode) so let's roll with it for now. Have not tested yet what MW does.
10 years ago
scrawl c92592493e OpenMW: create a window and render the starting cell(s) 10 years ago
scrawl 591a35b8d7 *very* early version of the LightManager 10 years ago