40 #ifndef _GLS_LIGHT_SOURCE_H
41 #define _GLS_LIGHT_SOURCE_H
65 GLS_LIGHT_SOURCE_AMBIENT=GLS_LAST_INITIALIZER+1,
66 GLS_LIGHT_SOURCE_DIFFUSE,
67 GLS_LIGHT_SOURCE_SPECULAR,
68 GLS_LIGHT_SOURCE_SPOT_CUTOFF,
69 GLS_LIGHT_SOURCE_SPOT_EXPONENT,
70 GLS_LIGHT_SOURCE_CONSTANT_ATTENUATION,
71 GLS_LIGHT_SOURCE_LINEAR_ATTENUATION,
72 GLS_LIGHT_SOURCE_QUADRATIC_ATTENUATION,
73 GLS_LIGHT_SOURCE_LIGHT_TYPE
78 class GlsGloFileAttribute;
93 friend class GlsLightSourceEditor;
128 virtual GLS_EXPORT
void Draw(
void);
230 virtual GLS_EXPORT
void SetFromGloData(GlsGloFileAttribute &data);
234 virtual GLS_EXPORT
bool Hit(
float x,
float y,
float z,
float scale,
const Vector& directionVector,
Vector *collisionPoint);
237 virtual GLS_EXPORT
void SetValue(
int spec,va_list &args);
249 #define DEF_LIGHT_TYPE LIGHT_INFINITE
257 virtual GLS_EXPORT ~DistiAttributeLightTypeEnum();
void SetAmbient(const glsColor &color)
virtual void CopyProperties(DisplayObject *src)
virtual void SetupLight(unsigned int light_number, GlsMatrixType *alternateModelMatrix=NULL)
Definition: dynamic_array.h:63
Class to contain current OpenGL view, projection and draw matrices.
Definition: util.h:281
void SetSpecular(const glsColor &color)
float _spotCutoff
Definition: gls_light_source.h:103
float _quadraticAttenuation
Definition: gls_light_source.h:107
virtual void SetValue(int spec, va_list &args)
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
glsColor _specular
Definition: gls_light_source.h:101
float _constantAttenuation
Definition: gls_light_source.h:105
LightType_e _lightType
Definition: gls_light_source.h:102
The Color class: Implements a 4 component RGBA color.
A file for all GL Studio files to include.
The disti::DisplayObject class and global enumerations.
virtual void PreDraw(const OpenGLMatrices ¤t, Culler &culler)
Definition: disti_metadata.h:902
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
virtual DisplayObject * CloneObject(bool generateNames=false)
virtual void SetAvailableAttributes(unsigned int value)
glsColor _diffuse
Definition: gls_light_source.h:100
Definition: gls_light_source.h:253
GLS_LightSource_Initializers
Definition: gls_light_source.h:63
LightType_e
Definition: gls_light_source.h:54
float _linearAttenuation
Definition: gls_light_source.h:106
Definition: gls_color.h:54
virtual bool Hit(float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
glsColor _ambient
Definition: gls_light_source.h:99
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:104
Definition: disti_metadata.h:83
virtual ~GlsLightSource(void)
float QuadraticAttenuation()
Definition: gls_light_source.h:84
Definition: bmpimage.h:46
void SetDiffuse(const glsColor &color)