40 #ifndef _GLS_LIGHT_SOURCE_H
41 #define _GLS_LIGHT_SOURCE_H
64 GLS_LIGHT_SOURCE_AMBIENT = GLS_LAST_INITIALIZER + 1,
65 GLS_LIGHT_SOURCE_DIFFUSE,
66 GLS_LIGHT_SOURCE_SPECULAR,
67 GLS_LIGHT_SOURCE_SPOT_CUTOFF,
68 GLS_LIGHT_SOURCE_SPOT_EXPONENT,
69 GLS_LIGHT_SOURCE_CONSTANT_ATTENUATION,
70 GLS_LIGHT_SOURCE_LINEAR_ATTENUATION,
71 GLS_LIGHT_SOURCE_QUADRATIC_ATTENUATION,
72 GLS_LIGHT_SOURCE_LIGHT_TYPE
77 class GlsGloFileAttribute;
92 friend class GlsLightSourceEditor;
125 virtual GLS_EXPORT
void Draw(
void );
231 virtual GLS_EXPORT
bool Hit(
float x,
float y,
float z,
float scale,
const Vector& directionVector,
Vector* collisionPoint );
234 virtual GLS_EXPORT
void SetValue(
int spec, va_list& args );
245 #define DEF_LIGHT_TYPE LIGHT_INFINITE
253 virtual GLS_EXPORT ~DistiAttributeLightTypeEnum();
void SetSpecular(const GlsColor &color)
void SetAmbient(const GlsColor &color)
virtual void CopyProperties(DisplayObject *src)
virtual void SetupLight(unsigned int light_number, GlsMatrixType *alternateModelMatrix=NULL)
Definition: dynamic_array.h:62
Class to contain current OpenGL view, projection and draw matrices.
Definition: util.h:301
float _spotCutoff
Definition: gls_light_source.h:101
GlsColor _diffuse
Definition: gls_light_source.h:98
float _quadraticAttenuation
Definition: gls_light_source.h:105
virtual void SetValue(int spec, va_list &args)
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
float _constantAttenuation
Definition: gls_light_source.h:103
LightType_e _lightType
Definition: gls_light_source.h:100
The Color class: Implements a 4 component RGBA color.
A file for all GL Studio files to include.
Definition: gls_glo_file.h:982
The disti::DisplayObject class and global enumerations.
virtual void PreDraw(const OpenGLMatrices ¤t, Culler &culler)
Definition: disti_metadata.h:852
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
virtual DisplayObject * CloneObject(bool generateNames=false)
GlsColor _specular
Definition: gls_light_source.h:99
virtual void SetAvailableAttributes(unsigned int value)
Definition: gls_light_source.h:249
GLS_LightSource_Initializers
Definition: gls_light_source.h:62
LightType_e
Definition: gls_light_source.h:53
Definition: gls_color.h:53
float _linearAttenuation
Definition: gls_light_source.h:104
void SetDiffuse(const GlsColor &color)
GlsColor _ambient
Definition: gls_light_source.h:97
virtual bool Hit(float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
float LinearAttenuation()
float ConstantAttenuation()
Macros and helper code to determine what subset of C++11/14/17 is available.
float _spotExponent
Definition: gls_light_source.h:102
Definition: disti_metadata.h:84
virtual ~GlsLightSource(void)
float QuadraticAttenuation()
Definition: gls_light_source.h:83
Definition: bmpimage.h:46