/********************************************************************/ /* Copyright (c) 2017 System fugen G.K. and Yuzi Mizuno */ /* All rights reserved. */ /********************************************************************/ #pragma once #ifndef _MGLIGHT_HH_ #define _MGLIGHT_HH_ #include "mgGL/GLAttrib.h" class MGOfstream; class MGIfstream; class MGMatrix; class MGSpotLight; class MGDirectionalLight; class MGPointLight; /** @file */ /** @addtogroup GLAttrib * @{ */ /// MGLight is an abstract base class for light sources. ///MGDirectionalLight,MGPointLight, or MGSpotLight are the inheritted classes. class MG_DLL_DECLR MGLight:public MGGLAttrib{ public: enum LIGHT_MODE{ UNDEFINED=MGGLAttrib::UNDEFINED, OFF=MGGLAttrib::DISABLED,///Disabled is used as OFF. ON=1 }; MG_DLL_DECLR friend std::ostream& operator<< (std::ostream&, const MGLight&); //////////Constructor/////////////// MGLight(); MGLight( float intensity, ///