A light object represents a set of properties of a light source. More...
Typedefs | |
| typedef Eo | Evas_3D_Light |
| Light object handle. More... | |
Functions | |
| EOAPI void | evas_3d_light_directional_set (Eina_Bool directional) |
| Set the directional flag of the given light. More... | |
| EOAPI Eina_Bool | evas_3d_light_directional_get (void) |
| Get the directional flag of the given light. More... | |
| EOAPI void | evas_3d_light_spot_exponent_set (Evas_Real exponent) |
| Set the spot exponent of the given light. More... | |
| EOAPI Evas_Real | evas_3d_light_spot_exponent_get (void) |
| Get the spot exponent of the given light. More... | |
| EOAPI void | evas_3d_light_spot_cutoff_set (Evas_Real cutoff) |
| Set the spot cutoff angle of the given light. More... | |
| EOAPI Evas_Real | evas_3d_light_spot_cutoff_get (void) |
| Get the spot cutoff angle of the given light. More... | |
| EOAPI void | evas_3d_light_attenuation_enable_set (Eina_Bool enable) |
| Set the attenuation enable flag of the given light. More... | |
| EOAPI Eina_Bool | evas_3d_light_attenuation_enable_get (void) |
| Get the attenuation enable flag of the given light. More... | |
| EOAPI void | evas_3d_light_ambient_set (Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) |
| Set the ambient color of the given light. More... | |
| EOAPI void | evas_3d_light_ambient_get (Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) |
| Get the ambient color of the given light. More... | |
| EOAPI void | evas_3d_light_diffuse_set (Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) |
| Set the diffuse color of the given light. More... | |
| EOAPI void | evas_3d_light_diffuse_get (Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) |
| Get the diffuse color of the given light. More... | |
| EOAPI void | evas_3d_light_specular_set (Evas_Real r, Evas_Real g, Evas_Real b, Evas_Real a) |
| Set the specular color of the given light. More... | |
| EOAPI void | evas_3d_light_specular_get (Evas_Real *r, Evas_Real *g, Evas_Real *b, Evas_Real *a) |
| Get the specular color of the given light. More... | |
| EOAPI void | evas_3d_light_attenuation_set (Evas_Real constant, Evas_Real linear, Evas_Real quadratic) |
| Set the attenuation of the given light. More... | |
| EOAPI void | evas_3d_light_attenuation_get (Evas_Real *constant, Evas_Real *linear, Evas_Real *quadratic) |
| Get the attenuation of the given light. More... | |
| EOAPI void | evas_3d_light_projection_matrix_set (const Evas_Real *matrix) |
| Set the projection matrix of the given light source. More... | |
| EOAPI void | evas_3d_light_projection_matrix_get (Evas_Real *matrix) |
| Get the projection matrix of the given light source. More... | |
| EOAPI void | evas_3d_light_projection_perspective_set (Evas_Real fovy, Evas_Real aspect, Evas_Real dnear, Evas_Real dfar) |
| Set the projection matrix of the given light source with perspective projection. More... | |
| EOAPI void | evas_3d_light_projection_frustum_set (Evas_Real left, Evas_Real right, Evas_Real bottom, Evas_Real top, Evas_Real dnear, Evas_Real dfar) |
| Set the projection matrix of the given light source with frustum projection. More... | |
| EOAPI void | evas_3d_light_projection_ortho_set (Evas_Real left, Evas_Real right, Evas_Real bottom, Evas_Real top, Evas_Real dnear, Evas_Real dfar) |
| Set the projection matrix of the given light source with orthogonal projection. More... | |
| void | eo_cxx::evas_3d_light::ambient_set (Evas_Real r_, Evas_Real g_, Evas_Real b_, Evas_Real a_) const |
| Set the ambient color of the given light. More... | |
| void | eo_cxx::evas_3d_light::ambient_get (Evas_Real *r_, Evas_Real *g_, Evas_Real *b_, Evas_Real *a_) const |
| Get the ambient color of the given light. More... | |
| void | eo_cxx::evas_3d_light::diffuse_set (Evas_Real r_, Evas_Real g_, Evas_Real b_, Evas_Real a_) const |
| Set the diffuse color of the given light. More... | |
| void | eo_cxx::evas_3d_light::diffuse_get (Evas_Real *r_, Evas_Real *g_, Evas_Real *b_, Evas_Real *a_) const |
| Get the diffuse color of the given light. More... | |
| void | eo_cxx::evas_3d_light::specular_set (Evas_Real r_, Evas_Real g_, Evas_Real b_, Evas_Real a_) const |
| Set the specular color of the given light. More... | |
| void | eo_cxx::evas_3d_light::specular_get (Evas_Real *r_, Evas_Real *g_, Evas_Real *b_, Evas_Real *a_) const |
| Get the specular color of the given light. More... | |
| void | eo_cxx::evas_3d_light::attenuation_set (Evas_Real constant_, Evas_Real linear_, Evas_Real quadratic_) const |
| Set the attenuation of the given light. More... | |
| void | eo_cxx::evas_3d_light::attenuation_get (Evas_Real *constant_, Evas_Real *linear_, Evas_Real *quadratic_) const |
| Get the attenuation of the given light. More... | |
| void | eo_cxx::evas_3d_light::projection_matrix_set (const Evas_Real *matrix_) const |
| Set the projection matrix of the given light source. More... | |
| void | eo_cxx::evas_3d_light::projection_matrix_get (Evas_Real *matrix_) const |
| Get the projection matrix of the given light source. More... | |
| void | eo_cxx::evas_3d_light::projection_perspective_set (Evas_Real fovy_, Evas_Real aspect_, Evas_Real dnear_, Evas_Real dfar_) const |
| Set the projection matrix of the given light source with perspective projection. More... | |
| void | eo_cxx::evas_3d_light::projection_frustum_set (Evas_Real left_, Evas_Real right_, Evas_Real bottom_, Evas_Real top_, Evas_Real dnear_, Evas_Real dfar_) const |
| Set the projection matrix of the given light source with frustum projection. More... | |
| void | eo_cxx::evas_3d_light::projection_ortho_set (Evas_Real left_, Evas_Real right_, Evas_Real bottom_, Evas_Real top_, Evas_Real dnear_, Evas_Real dfar_) const |
| Set the projection matrix of the given light source with orthogonal projection. More... | |
| bool | eo_cxx::evas_3d_light::directional_get () const |
| Get the directional flag of the given light. More... | |
| void | eo_cxx::evas_3d_light::directional_set (bool directional_) const |
| Set the directional flag of the given light. More... | |
| Evas_Real | eo_cxx::evas_3d_light::spot_exponent_get () const |
| Get the spot exponent of the given light. More... | |
| void | eo_cxx::evas_3d_light::spot_exponent_set (Evas_Real exponent_) const |
| Set the spot exponent of the given light. More... | |
| Evas_Real | eo_cxx::evas_3d_light::spot_cutoff_get () const |
| Get the spot cutoff angle of the given light. More... | |
| void | eo_cxx::evas_3d_light::spot_cutoff_set (Evas_Real cutoff_) const |
| Set the spot cutoff angle of the given light. More... | |
| bool | eo_cxx::evas_3d_light::attenuation_enable_get () const |
| Get the attenuation enable flag of the given light. More... | |
| void | eo_cxx::evas_3d_light::attenuation_enable_set (bool enable_) const |
| Set the attenuation enable flag of the given light. More... | |
| void | evas_3d_light::ambient_set (Evas_Real r_, Evas_Real g_, Evas_Real b_, Evas_Real a_) const |
| Set the ambient color of the given light. More... | |
| void | evas_3d_light::ambient_get (Evas_Real *r_, Evas_Real *g_, Evas_Real *b_, Evas_Real *a_) const |
| Get the ambient color of the given light. More... | |
| void | evas_3d_light::diffuse_set (Evas_Real r_, Evas_Real g_, Evas_Real b_, Evas_Real a_) const |
| Set the diffuse color of the given light. More... | |
| void | evas_3d_light::diffuse_get (Evas_Real *r_, Evas_Real *g_, Evas_Real *b_, Evas_Real *a_) const |
| Get the diffuse color of the given light. More... | |
| void | evas_3d_light::specular_set (Evas_Real r_, Evas_Real g_, Evas_Real b_, Evas_Real a_) const |
| Set the specular color of the given light. More... | |
| void | evas_3d_light::specular_get (Evas_Real *r_, Evas_Real *g_, Evas_Real *b_, Evas_Real *a_) const |
| Get the specular color of the given light. More... | |
| void | evas_3d_light::attenuation_set (Evas_Real constant_, Evas_Real linear_, Evas_Real quadratic_) const |
| Set the attenuation of the given light. More... | |
| void | evas_3d_light::attenuation_get (Evas_Real *constant_, Evas_Real *linear_, Evas_Real *quadratic_) const |
| Get the attenuation of the given light. More... | |
| void | evas_3d_light::projection_matrix_set (const Evas_Real *matrix_) const |
| Set the projection matrix of the given light source. More... | |
| void | evas_3d_light::projection_matrix_get (Evas_Real *matrix_) const |
| Get the projection matrix of the given light source. More... | |
| void | evas_3d_light::projection_perspective_set (Evas_Real fovy_, Evas_Real aspect_, Evas_Real dnear_, Evas_Real dfar_) const |
| Set the projection matrix of the given light source with perspective projection. More... | |
| void | evas_3d_light::projection_frustum_set (Evas_Real left_, Evas_Real right_, Evas_Real bottom_, Evas_Real top_, Evas_Real dnear_, Evas_Real dfar_) const |
| Set the projection matrix of the given light source with frustum projection. More... | |
| void | evas_3d_light::projection_ortho_set (Evas_Real left_, Evas_Real right_, Evas_Real bottom_, Evas_Real top_, Evas_Real dnear_, Evas_Real dfar_) const |
| Set the projection matrix of the given light source with orthogonal projection. More... | |
| bool | evas_3d_light::directional_get () const |
| Get the directional flag of the given light. More... | |
| void | evas_3d_light::directional_set (bool directional_) const |
| Set the directional flag of the given light. More... | |
| Evas_Real | evas_3d_light::spot_exponent_get () const |
| Get the spot exponent of the given light. More... | |
| void | evas_3d_light::spot_exponent_set (Evas_Real exponent_) const |
| Set the spot exponent of the given light. More... | |
| Evas_Real | evas_3d_light::spot_cutoff_get () const |
| Get the spot cutoff angle of the given light. More... | |
| void | evas_3d_light::spot_cutoff_set (Evas_Real cutoff_) const |
| Set the spot cutoff angle of the given light. More... | |
| bool | evas_3d_light::attenuation_enable_get () const |
| Get the attenuation enable flag of the given light. More... | |
| void | evas_3d_light::attenuation_enable_set (bool enable_) const |
| Set the attenuation enable flag of the given light. More... | |
A light object represents a set of properties of a light source.
Evas 3D provides standard reflection model that of ambient, diffuse and specular reflection model. Also, Evas 3D support 3 types of light model, directional, point and spot light. Light position and direction is determined by the node containing the light.
Light object handle.
| EOAPI void evas_3d_light_directional_set | ( | Eina_Bool | directional | ) |
Set the directional flag of the given light.
Directional light is a type of light which is infinitely far away with no attenuation. The light direction is determined by the containing node's forward vector (negative Z-axis).
By default, directional is not enabled.
| [in] | directional | Whether the light is directional (EINA_TRUE), or not (EINA_FALSE). |
Referenced by eo_cxx::evas_3d_light::directional_set(), and evas_3d_light::directional_set().
| EOAPI Eina_Bool evas_3d_light_directional_get | ( | void | ) |
Get the directional flag of the given light.
Referenced by eo_cxx::evas_3d_light::directional_get(), and evas_3d_light::directional_get().
| EOAPI void evas_3d_light_spot_exponent_set | ( | Evas_Real | exponent | ) |
Set the spot exponent of the given light.
Higher spot exponent means intensity at the center of the cone is relatively stronger. Zero exponent means the light intensity is evenly distibuted. The spot exponent has no effect when the light is not spot light (spot cutoff angle is less than 180 degree).
Default spot exponent is 0.
| [in] | exponent | Spot exponent value.. |
Referenced by eo_cxx::evas_3d_light::spot_exponent_set(), and evas_3d_light::spot_exponent_set().
| EOAPI Evas_Real evas_3d_light_spot_exponent_get | ( | void | ) |
Get the spot exponent of the given light.
Referenced by eo_cxx::evas_3d_light::spot_exponent_get(), and evas_3d_light::spot_exponent_get().
| EOAPI void evas_3d_light_spot_cutoff_set | ( | Evas_Real | cutoff | ) |
Set the spot cutoff angle of the given light.
Only angle less than 180 degree will make it spot light, so that other spot light attribute will take effect.
Default spot cutoff angle is 180.
| [in] | cutoff | Cutoff angle in degree.. |
Referenced by eo_cxx::evas_3d_light::spot_cutoff_set(), and evas_3d_light::spot_cutoff_set().
| EOAPI Evas_Real evas_3d_light_spot_cutoff_get | ( | void | ) |
Get the spot cutoff angle of the given light.
Referenced by eo_cxx::evas_3d_light::spot_cutoff_get(), and evas_3d_light::spot_cutoff_get().
| EOAPI void evas_3d_light_attenuation_enable_set | ( | Eina_Bool | enable | ) |
Set the attenuation enable flag of the given light.
By default, light attenuation is not enabled.
| [in] | enable | Whether to enable attenuation (EINA_TRUE), or not (EINA_FALSE).. |
Referenced by eo_cxx::evas_3d_light::attenuation_enable_set(), and evas_3d_light::attenuation_enable_set().
| EOAPI Eina_Bool evas_3d_light_attenuation_enable_get | ( | void | ) |
Get the attenuation enable flag of the given light.
Referenced by eo_cxx::evas_3d_light::attenuation_enable_get(), and evas_3d_light::attenuation_enable_get().
Set the ambient color of the given light.
Default ambient color is (0.0, 0.0, 0.0, 1.0).
| [in] | r | Red component of the ambient color between [0.0, 1.0]. |
| [in] | g | Green component of the ambient color between [0.0, 1.0]. |
| [in] | b | Blue component of the ambient color between [0.0, 1.0]. |
| [in] | a | Alpha component of the ambient color between [0.0, 1.0]. |
Referenced by eo_cxx::evas_3d_light::ambient_set(), and evas_3d_light::ambient_set().
Get the ambient color of the given light.
| [out] | r | Red component of the ambient color between [0.0, 1.0]. |
| [out] | g | Green component of the ambient color between [0.0, 1.0]. |
| [out] | b | Blue component of the ambient color between [0.0, 1.0]. |
| [out] | a | Alpha component of the ambient color between [0.0, 1.0]. |
Referenced by eo_cxx::evas_3d_light::ambient_get(), and evas_3d_light::ambient_get().
Set the diffuse color of the given light.
Default diffuse color is (1.0, 1.0, 1.0, 1.0).
| [in] | r | Red component of the diffuse color between [0.0, 1.0]. |
| [in] | g | Green component of the diffuse color between [0.0, 1.0]. |
| [in] | b | Blue component of the diffuse color between [0.0, 1.0]. |
| [in] | a | Alpha component of the diffuse color between [0.0, 1.0]. |
Referenced by eo_cxx::evas_3d_light::diffuse_set(), and evas_3d_light::diffuse_set().
Get the diffuse color of the given light.
| [out] | r | Red component of the diffuse color between [0.0, 1.0]. |
| [out] | g | Green component of the diffuse color between [0.0, 1.0]. |
| [out] | b | Blue component of the diffuse color between [0.0, 1.0]. |
| [out] | a | Alpha component of the diffuse color between [0.0, 1.0]. |
Referenced by eo_cxx::evas_3d_light::diffuse_get(), and evas_3d_light::diffuse_get().
Set the specular color of the given light.
Default specular color is (1.0, 1.0, 1.0, 1.0).
| [in] | r | Red component of the specular color between [0.0, 1.0]. |
| [in] | g | Green component of the specular color between [0.0, 1.0]. |
| [in] | b | Blue component of the specular color between [0.0, 1.0]. |
| [in] | a | Alpha component of the specular color between [0.0, 1.0]. |
Referenced by eo_cxx::evas_3d_light::specular_set(), and evas_3d_light::specular_set().
| EOAPI void evas_3d_light_specular_get | ( | Evas_Real * | r, |
| Evas_Real * | g, | ||
| Evas_Real * | b, | ||
| Evas_Real * | a | ||
| ) |
Get the specular color of the given light.
| [out] | r | Red component of the specular color between [0.0, 1.0]. |
| [out] | g | Green component of the specular color between [0.0, 1.0]. |
| [out] | b | Blue component of the specular color between [0.0, 1.0]. |
| [out] | a | Alpha component of the specular color between [0.0, 1.0]. |
Referenced by eo_cxx::evas_3d_light::specular_get(), and evas_3d_light::specular_get().
| EOAPI void evas_3d_light_attenuation_set | ( | Evas_Real | constant, |
| Evas_Real | linear, | ||
| Evas_Real | quadratic | ||
| ) |
Set the attenuation of the given light.
Light attenuation has no effect with directional light. And the attenuation should be enabled first to take effect. The attenuation factor is calculated as follows.
atten = 1.0 / constant + linear * distance + quadratic * distance * distance
Default attenuation is constant = 1.0, linear = 0.0, quadratic = 0.0.
| [in] | constant | Constant attenuation term.. |
| [in] | linear | Linear attenuation term.. |
| [in] | quadratic | Quadratic attenuation term.. |
Referenced by eo_cxx::evas_3d_light::attenuation_set(), and evas_3d_light::attenuation_set().
| EOAPI void evas_3d_light_attenuation_get | ( | Evas_Real * | constant, |
| Evas_Real * | linear, | ||
| Evas_Real * | quadratic | ||
| ) |
Get the attenuation of the given light.
| [out] | constant | Constant attenuation term.. |
| [out] | linear | Linear attenuation term.. |
| [out] | quadratic | Quadratic attenuation term.. |
Referenced by eo_cxx::evas_3d_light::attenuation_get(), and evas_3d_light::attenuation_get().
| EOAPI void evas_3d_light_projection_matrix_set | ( | const Evas_Real * | matrix | ) |
Set the projection matrix of the given light source.
| light | The given light source. |
| matrix | Pointer to the array of 16 Evas_Real values in column major order. |
Default projection matrix is identity matrix.
| [in] | matrix | Projection Matrix |
Referenced by eo_cxx::evas_3d_light::projection_matrix_set(), and evas_3d_light::projection_matrix_set().
| EOAPI void evas_3d_light_projection_matrix_get | ( | Evas_Real * | matrix | ) |
Get the projection matrix of the given light source.
| light | The given light source. |
| matrix | Pointer to receive the 16 Evas_Real values in column major order. |
| [out] | matrix | Projection Matrix |
Referenced by eo_cxx::evas_3d_light::projection_matrix_get(), and evas_3d_light::projection_matrix_get().
| EOAPI void evas_3d_light_projection_perspective_set | ( | Evas_Real | fovy, |
| Evas_Real | aspect, | ||
| Evas_Real | dnear, | ||
| Evas_Real | dfar | ||
| ) |
Set the projection matrix of the given light source with perspective projection.
| light | The given light source. |
| fovy | Field of view angle in Y direction. |
| aspect | Aspect ratio. |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
| [in] | fovy | Field of view angle in Y direction. |
| [in] | aspect | Aspect ratio. |
| [in] | dnear | Distance to near clipping plane. |
| [in] | dfar | Distance to far clipping plane. |
Referenced by eo_cxx::evas_3d_light::projection_perspective_set(), and evas_3d_light::projection_perspective_set().
| EOAPI void evas_3d_light_projection_frustum_set | ( | Evas_Real | left, |
| Evas_Real | right, | ||
| Evas_Real | bottom, | ||
| Evas_Real | top, | ||
| Evas_Real | dnear, | ||
| Evas_Real | dfar | ||
| ) |
Set the projection matrix of the given light source with frustum projection.
| [in] | left | Left X coordinate of the near clipping plane. |
| [in] | right | Right X coordinate of the near clipping plane.. |
| [in] | bottom | Bottom Y coordinate of the near clipping plane. |
| [in] | top | Top Y coordinate of the near clipping plane |
| [in] | dnear | Distance to near clipping plane. |
| [in] | dfar | Distance to far clipping plane. |
Referenced by eo_cxx::evas_3d_light::projection_frustum_set(), and evas_3d_light::projection_frustum_set().
| EOAPI void evas_3d_light_projection_ortho_set | ( | Evas_Real | left, |
| Evas_Real | right, | ||
| Evas_Real | bottom, | ||
| Evas_Real | top, | ||
| Evas_Real | dnear, | ||
| Evas_Real | dfar | ||
| ) |
Set the projection matrix of the given light source with orthogonal projection.
| [in] | left | Left X coordinate of the near clipping plane. |
| [in] | right | Right X coordinate of the near clipping plane.. |
| [in] | bottom | Bottom Y coordinate of the near clipping plane. |
| [in] | top | Top Y coordinate of the near clipping plane |
| [in] | dnear | Distance to near clipping plane. |
| [in] | dfar | Distance to far clipping plane. |
Referenced by eo_cxx::evas_3d_light::projection_ortho_set(), and evas_3d_light::projection_ortho_set().
|
inline |
Set the ambient color of the given light.
Default ambient color is (0.0, 0.0, 0.0, 1.0).
| r | Red component of the ambient color between [0.0, 1.0]. |
| g | Green component of the ambient color between [0.0, 1.0]. |
| b | Blue component of the ambient color between [0.0, 1.0]. |
| a | Alpha component of the ambient color between [0.0, 1.0]. |
References evas_3d_light_ambient_set().
|
inline |
Get the ambient color of the given light.
| [out] | r | Red component of the ambient color between [0.0, 1.0]. |
| [out] | g | Green component of the ambient color between [0.0, 1.0]. |
| [out] | b | Blue component of the ambient color between [0.0, 1.0]. |
| [out] | a | Alpha component of the ambient color between [0.0, 1.0]. |
References evas_3d_light_ambient_get().
|
inline |
Set the diffuse color of the given light.
Default diffuse color is (1.0, 1.0, 1.0, 1.0).
| r | Red component of the diffuse color between [0.0, 1.0]. |
| g | Green component of the diffuse color between [0.0, 1.0]. |
| b | Blue component of the diffuse color between [0.0, 1.0]. |
| a | Alpha component of the diffuse color between [0.0, 1.0]. |
References evas_3d_light_diffuse_set().
|
inline |
Get the diffuse color of the given light.
| [out] | r | Red component of the diffuse color between [0.0, 1.0]. |
| [out] | g | Green component of the diffuse color between [0.0, 1.0]. |
| [out] | b | Blue component of the diffuse color between [0.0, 1.0]. |
| [out] | a | Alpha component of the diffuse color between [0.0, 1.0]. |
References evas_3d_light_diffuse_get().
|
inline |
Set the specular color of the given light.
Default specular color is (1.0, 1.0, 1.0, 1.0).
| r | Red component of the specular color between [0.0, 1.0]. |
| g | Green component of the specular color between [0.0, 1.0]. |
| b | Blue component of the specular color between [0.0, 1.0]. |
| a | Alpha component of the specular color between [0.0, 1.0]. |
References evas_3d_light_specular_set().
|
inline |
Get the specular color of the given light.
| [out] | r | Red component of the specular color between [0.0, 1.0]. |
| [out] | g | Green component of the specular color between [0.0, 1.0]. |
| [out] | b | Blue component of the specular color between [0.0, 1.0]. |
| [out] | a | Alpha component of the specular color between [0.0, 1.0]. |
References evas_3d_light_specular_get().
|
inline |
Set the attenuation of the given light.
Light attenuation has no effect with directional light. And the attenuation should be enabled first to take effect. The attenuation factor is calculated as follows.
atten = 1.0 / constant + linear * distance + quadratic * distance * distance
Default attenuation is constant = 1.0, linear = 0.0, quadratic = 0.0.
| constant | Constant attenuation term.. |
| linear | Linear attenuation term.. |
| quadratic | Quadratic attenuation term.. |
References evas_3d_light_attenuation_set().
|
inline |
Get the attenuation of the given light.
| [out] | constant | Constant attenuation term.. |
| [out] | linear | Linear attenuation term.. |
| [out] | quadratic | Quadratic attenuation term.. |
References evas_3d_light_attenuation_get().
|
inline |
Set the projection matrix of the given light source.
| light | The given light source. |
| matrix | Pointer to the array of 16 Evas_Real values in column major order. |
Default projection matrix is identity matrix.
| matrix | Projection Matrix |
References evas_3d_light_projection_matrix_set().
|
inline |
Get the projection matrix of the given light source.
| light | The given light source. |
| matrix | Pointer to receive the 16 Evas_Real values in column major order. |
| [out] | matrix | Projection Matrix |
References evas_3d_light_projection_matrix_get().
|
inline |
Set the projection matrix of the given light source with perspective projection.
| light | The given light source. |
| fovy | Field of view angle in Y direction. |
| aspect | Aspect ratio. |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
| fovy | Field of view angle in Y direction. |
| aspect | Aspect ratio. |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
References evas_3d_light_projection_perspective_set().
|
inline |
Set the projection matrix of the given light source with frustum projection.
| left | Left X coordinate of the near clipping plane. |
| right | Right X coordinate of the near clipping plane.. |
| bottom | Bottom Y coordinate of the near clipping plane. |
| top | Top Y coordinate of the near clipping plane |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
References evas_3d_light_projection_frustum_set().
|
inline |
Set the projection matrix of the given light source with orthogonal projection.
| left | Left X coordinate of the near clipping plane. |
| right | Right X coordinate of the near clipping plane.. |
| bottom | Bottom Y coordinate of the near clipping plane. |
| top | Top Y coordinate of the near clipping plane |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
References evas_3d_light_projection_ortho_set().
|
inline |
Get the directional flag of the given light.
| directional | Whether the light is directional (EINA_TRUE), or not (EINA_FALSE). |
References evas_3d_light_directional_get().
|
inline |
Set the directional flag of the given light.
Directional light is a type of light which is infinitely far away with no attenuation. The light direction is determined by the containing node's forward vector (negative Z-axis).
By default, directional is not enabled.
| directional | Whether the light is directional (EINA_TRUE), or not (EINA_FALSE). |
References evas_3d_light_directional_set().
|
inline |
Get the spot exponent of the given light.
| exponent | Spot exponent value.. |
References evas_3d_light_spot_exponent_get().
|
inline |
Set the spot exponent of the given light.
Higher spot exponent means intensity at the center of the cone is relatively stronger. Zero exponent means the light intensity is evenly distibuted. The spot exponent has no effect when the light is not spot light (spot cutoff angle is less than 180 degree).
Default spot exponent is 0.
| exponent | Spot exponent value.. |
References evas_3d_light_spot_exponent_set().
|
inline |
Get the spot cutoff angle of the given light.
| cutoff | Cutoff angle in degree.. |
References evas_3d_light_spot_cutoff_get().
|
inline |
Set the spot cutoff angle of the given light.
Only angle less than 180 degree will make it spot light, so that other spot light attribute will take effect.
Default spot cutoff angle is 180.
| cutoff | Cutoff angle in degree.. |
References evas_3d_light_spot_cutoff_set().
|
inline |
Get the attenuation enable flag of the given light.
| enable | Whether to enable attenuation (EINA_TRUE), or not (EINA_FALSE).. |
References evas_3d_light_attenuation_enable_get().
|
inline |
Set the attenuation enable flag of the given light.
By default, light attenuation is not enabled.
| enable | Whether to enable attenuation (EINA_TRUE), or not (EINA_FALSE).. |
References evas_3d_light_attenuation_enable_set().
|
inline |
Set the ambient color of the given light.
Default ambient color is (0.0, 0.0, 0.0, 1.0).
| r | Red component of the ambient color between [0.0, 1.0]. |
| g | Green component of the ambient color between [0.0, 1.0]. |
| b | Blue component of the ambient color between [0.0, 1.0]. |
| a | Alpha component of the ambient color between [0.0, 1.0]. |
References evas_3d_light_ambient_set().
|
inline |
Get the ambient color of the given light.
| [out] | r | Red component of the ambient color between [0.0, 1.0]. |
| [out] | g | Green component of the ambient color between [0.0, 1.0]. |
| [out] | b | Blue component of the ambient color between [0.0, 1.0]. |
| [out] | a | Alpha component of the ambient color between [0.0, 1.0]. |
References evas_3d_light_ambient_get().
|
inline |
Set the diffuse color of the given light.
Default diffuse color is (1.0, 1.0, 1.0, 1.0).
| r | Red component of the diffuse color between [0.0, 1.0]. |
| g | Green component of the diffuse color between [0.0, 1.0]. |
| b | Blue component of the diffuse color between [0.0, 1.0]. |
| a | Alpha component of the diffuse color between [0.0, 1.0]. |
References evas_3d_light_diffuse_set().
|
inline |
Get the diffuse color of the given light.
| [out] | r | Red component of the diffuse color between [0.0, 1.0]. |
| [out] | g | Green component of the diffuse color between [0.0, 1.0]. |
| [out] | b | Blue component of the diffuse color between [0.0, 1.0]. |
| [out] | a | Alpha component of the diffuse color between [0.0, 1.0]. |
References evas_3d_light_diffuse_get().
|
inline |
Set the specular color of the given light.
Default specular color is (1.0, 1.0, 1.0, 1.0).
| r | Red component of the specular color between [0.0, 1.0]. |
| g | Green component of the specular color between [0.0, 1.0]. |
| b | Blue component of the specular color between [0.0, 1.0]. |
| a | Alpha component of the specular color between [0.0, 1.0]. |
References evas_3d_light_specular_set().
|
inline |
Get the specular color of the given light.
| [out] | r | Red component of the specular color between [0.0, 1.0]. |
| [out] | g | Green component of the specular color between [0.0, 1.0]. |
| [out] | b | Blue component of the specular color between [0.0, 1.0]. |
| [out] | a | Alpha component of the specular color between [0.0, 1.0]. |
References evas_3d_light_specular_get().
|
inline |
Set the attenuation of the given light.
Light attenuation has no effect with directional light. And the attenuation should be enabled first to take effect. The attenuation factor is calculated as follows.
atten = 1.0 / constant + linear * distance + quadratic * distance * distance
Default attenuation is constant = 1.0, linear = 0.0, quadratic = 0.0.
| constant | Constant attenuation term.. |
| linear | Linear attenuation term.. |
| quadratic | Quadratic attenuation term.. |
References evas_3d_light_attenuation_set().
|
inline |
Get the attenuation of the given light.
| [out] | constant | Constant attenuation term.. |
| [out] | linear | Linear attenuation term.. |
| [out] | quadratic | Quadratic attenuation term.. |
References evas_3d_light_attenuation_get().
|
inline |
Set the projection matrix of the given light source.
| light | The given light source. |
| matrix | Pointer to the array of 16 Evas_Real values in column major order. |
Default projection matrix is identity matrix.
| matrix | Projection Matrix |
References evas_3d_light_projection_matrix_set().
|
inline |
Get the projection matrix of the given light source.
| light | The given light source. |
| matrix | Pointer to receive the 16 Evas_Real values in column major order. |
| [out] | matrix | Projection Matrix |
References evas_3d_light_projection_matrix_get().
|
inline |
Set the projection matrix of the given light source with perspective projection.
| light | The given light source. |
| fovy | Field of view angle in Y direction. |
| aspect | Aspect ratio. |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
| fovy | Field of view angle in Y direction. |
| aspect | Aspect ratio. |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
References evas_3d_light_projection_perspective_set().
|
inline |
Set the projection matrix of the given light source with frustum projection.
| left | Left X coordinate of the near clipping plane. |
| right | Right X coordinate of the near clipping plane.. |
| bottom | Bottom Y coordinate of the near clipping plane. |
| top | Top Y coordinate of the near clipping plane |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
References evas_3d_light_projection_frustum_set().
|
inline |
Set the projection matrix of the given light source with orthogonal projection.
| left | Left X coordinate of the near clipping plane. |
| right | Right X coordinate of the near clipping plane.. |
| bottom | Bottom Y coordinate of the near clipping plane. |
| top | Top Y coordinate of the near clipping plane |
| dnear | Distance to near clipping plane. |
| dfar | Distance to far clipping plane. |
References evas_3d_light_projection_ortho_set().
|
inline |
Get the directional flag of the given light.
| directional | Whether the light is directional (EINA_TRUE), or not (EINA_FALSE). |
References evas_3d_light_directional_get().
|
inline |
Set the directional flag of the given light.
Directional light is a type of light which is infinitely far away with no attenuation. The light direction is determined by the containing node's forward vector (negative Z-axis).
By default, directional is not enabled.
| directional | Whether the light is directional (EINA_TRUE), or not (EINA_FALSE). |
References evas_3d_light_directional_set().
|
inline |
Get the spot exponent of the given light.
| exponent | Spot exponent value.. |
References evas_3d_light_spot_exponent_get().
|
inline |
Set the spot exponent of the given light.
Higher spot exponent means intensity at the center of the cone is relatively stronger. Zero exponent means the light intensity is evenly distibuted. The spot exponent has no effect when the light is not spot light (spot cutoff angle is less than 180 degree).
Default spot exponent is 0.
| exponent | Spot exponent value.. |
References evas_3d_light_spot_exponent_set().
|
inline |
Get the spot cutoff angle of the given light.
| cutoff | Cutoff angle in degree.. |
References evas_3d_light_spot_cutoff_get().
|
inline |
Set the spot cutoff angle of the given light.
Only angle less than 180 degree will make it spot light, so that other spot light attribute will take effect.
Default spot cutoff angle is 180.
| cutoff | Cutoff angle in degree.. |
References evas_3d_light_spot_cutoff_set().
|
inline |
Get the attenuation enable flag of the given light.
| enable | Whether to enable attenuation (EINA_TRUE), or not (EINA_FALSE).. |
References evas_3d_light_attenuation_enable_get().
|
inline |
Set the attenuation enable flag of the given light.
By default, light attenuation is not enabled.
| enable | Whether to enable attenuation (EINA_TRUE), or not (EINA_FALSE).. |
References evas_3d_light_attenuation_enable_set().