You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openmw/apps/opencs/view/render/lighting.hpp

39 lines
688 B
C++

#ifndef OPENCS_VIEW_LIGHTING_H
#define OPENCS_VIEW_LIGHTING_H
#include <osg/ref_ptr>
namespace osg
{
class Vec4f;
class LightSource;
class Group;
}
namespace CSVRender
{
class Lighting
{
public:
Lighting()
: mRootNode(nullptr)
{
}
virtual ~Lighting() = default;
virtual void activate(osg::Group* rootNode, bool isExterior) = 0;
virtual void deactivate() = 0;
virtual osg::Vec4f getAmbientColour(osg::Vec4f* defaultAmbient) = 0;
protected:
void updateDayNightMode(int index);
osg::ref_ptr<osg::LightSource> mLightSource;
osg::Group* mRootNode;
};
}
#endif