Blender  V3.3
Public Member Functions | Public Attributes | Friends | List of all members
Light Class Reference

#include <DNA_light_types.h>

Inheritance diagram for Light:
Node

Public Member Functions

 Light ()
 
void tag_update (Scene *scene)
 
bool has_contribution (Scene *scene)
 
- Public Member Functions inherited from Node
 Node (const NodeType *type, ustring name=ustring())
 
virtual ~Node ()=0
 
void set (const SocketType &input, bool value)
 
void set (const SocketType &input, int value)
 
void set (const SocketType &input, uint value)
 
void set (const SocketType &input, float value)
 
void set (const SocketType &input, float2 value)
 
void set (const SocketType &input, float3 value)
 
void set (const SocketType &input, const char *value)
 
void set (const SocketType &input, ustring value)
 
void set (const SocketType &input, const Transform &value)
 
void set (const SocketType &input, Node *value)
 
template<class ValueType , typename std::enable_if_t< std::is_enum_v< ValueType >> * = nullptr>
void set (const SocketType &input, const ValueType &value)
 
void set (const SocketType &input, array< bool > &value)
 
void set (const SocketType &input, array< int > &value)
 
void set (const SocketType &input, array< float > &value)
 
void set (const SocketType &input, array< float2 > &value)
 
void set (const SocketType &input, array< float3 > &value)
 
void set (const SocketType &input, array< ustring > &value)
 
void set (const SocketType &input, array< Transform > &value)
 
void set (const SocketType &input, array< Node * > &value)
 
bool get_bool (const SocketType &input) const
 
int get_int (const SocketType &input) const
 
uint get_uint (const SocketType &input) const
 
float get_float (const SocketType &input) const
 
float2 get_float2 (const SocketType &input) const
 
float3 get_float3 (const SocketType &input) const
 
ustring get_string (const SocketType &input) const
 
Transform get_transform (const SocketType &input) const
 
Nodeget_node (const SocketType &input) const
 
const array< bool > & get_bool_array (const SocketType &input) const
 
const array< int > & get_int_array (const SocketType &input) const
 
const array< float > & get_float_array (const SocketType &input) const
 
const array< float2 > & get_float2_array (const SocketType &input) const
 
const array< float3 > & get_float3_array (const SocketType &input) const
 
const array< ustring > & get_string_array (const SocketType &input) const
 
const array< Transform > & get_transform_array (const SocketType &input) const
 
const array< Node * > & get_node_array (const SocketType &input) const
 
bool has_default_value (const SocketType &input) const
 
void set_default_value (const SocketType &input)
 
bool equals_value (const Node &other, const SocketType &input) const
 
void copy_value (const SocketType &input, const Node &other, const SocketType &other_input)
 
void set_value (const SocketType &input, const Node &other, const SocketType &other_input)
 
bool equals (const Node &other) const
 
void hash (MD5Hash &md5)
 
size_t get_total_size_in_bytes () const
 
bool is_a (const NodeType *type)
 
bool socket_is_modified (const SocketType &input) const
 
bool is_modified () const
 
void tag_modified ()
 
void clear_modified ()
 
void print_modified_sockets () const
 
const NodeOwnerget_owner () const
 
void set_owner (const NodeOwner *owner_)
 
int reference_count () const
 
void reference ()
 
void dereference ()
 
void clear_reference_count ()
 

Public Attributes

ID id
 
struct AnimDataadt
 
short type
 
short flag
 
int mode
 
float r
 
float g
 
float b
 
float k
 
float shdwr
 
float shdwg
 
float shdwb
 
float shdwpad
 
float energy
 
float dist
 
float spotsize
 
float spotblend
 
float att1
 
float att2
 
float coeff_const
 
float coeff_lin
 
float coeff_quad
 
char _pad0 [4]
 
struct CurveMappingcurfalloff
 
short falloff_type
 
char _pad2 [2]
 
float clipsta
 
float clipend
 
float bias
 
float soft
 
float bleedbias
 
float bleedexp
 
short bufsize
 
short samp
 
short buffers
 
short filtertype
 
char bufflag
 
char buftype
 
short area_shape
 
float area_size
 
float area_sizey
 
float area_sizez
 
float area_spread
 
float sun_angle
 
short texact
 
short shadhalostep
 
struct Ipo *ipo DNA_DEPRECATED
 
short pr_texture
 
short use_nodes
 
char _pad6 [4]
 
float cascade_max_dist
 
float cascade_exponent
 
float cascade_fade
 
int cascade_count
 
float contact_dist
 
float contact_bias
 
float contact_spread
 
float contact_thickness
 
float diff_fac
 
float volume_fac
 
float spec_fac
 
float att_dist
 
struct PreviewImagepreview
 
struct bNodeTreenodetree
 
 NODE_DECLARE
 
- Public Attributes inherited from Node
ustring name
 
const NodeTypetype
 
InternalNode internal
 
LeafNode leaf
 

Friends

class LightManager
 

Additional Inherited Members

- Protected Member Functions inherited from Node
template<typename T >
void set_if_different (const SocketType &input, T value)
 
void set_if_different (const SocketType &input, Node *value)
 
template<typename T >
void set_if_different (const SocketType &input, array< T > &value)
 
void set_if_different (const SocketType &input, array< Node * > &value)
 
void dereference_all_used_nodes ()
 
- Static Protected Member Functions inherited from Node
template<typename T >
static Tget_socket_value (const Node *node, const SocketType &socket)
 
- Protected Attributes inherited from Node
const NodeOwnerowner
 
int ref_count {0}
 
SocketModifiedFlags socket_modified
 

Detailed Description

Definition at line 26 of file DNA_light_types.h.

Constructor & Destructor Documentation

◆ Light()

Light::Light ( )

Definition at line 142 of file scene/light.cpp.

References Node::dereference_all_used_nodes().

Member Function Documentation

◆ has_contribution()

bool Light::has_contribution ( Scene scene)

◆ tag_update()

void Light::tag_update ( Scene scene)

Friends And Related Function Documentation

◆ LightManager

friend class LightManager
friend

Definition at line 81 of file scene/light.h.

Member Data Documentation

◆ _pad0

char Light::_pad0[4]

Definition at line 44 of file DNA_light_types.h.

◆ _pad2

char Light::_pad2[2]

Definition at line 47 of file DNA_light_types.h.

◆ _pad6

char Light::_pad6[4]

Definition at line 69 of file DNA_light_types.h.

◆ adt

struct AnimData* Light::adt

Animation data (must be immediately after id for utilities to use it).

Definition at line 31 of file DNA_light_types.h.

Referenced by acf_dslight_setting_ptr(), bc_getSceneLightAction(), light_blend_read_data(), light_blend_write(), make_new_animlistelem(), outliner_add_id_contents(), and AnimationImporter::translate_Animations().

◆ area_shape

short Light::area_shape

◆ area_size

float Light::area_size

◆ area_sizey

float Light::area_sizey

◆ area_sizez

float Light::area_sizez

◆ area_spread

float Light::area_spread

Definition at line 59 of file DNA_light_types.h.

◆ att1

float Light::att1

Quad1 and Quad2 attenuation.

Definition at line 42 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ att2

float Light::att2

Definition at line 42 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ att_dist

float Light::att_dist

Definition at line 83 of file DNA_light_types.h.

Referenced by light_attenuation_radius_get(), and OVERLAY_light_cache_populate().

◆ b

float Light::b

◆ bias

float Light::bias

◆ bleedbias

float Light::bleedbias

Definition at line 52 of file DNA_light_types.h.

◆ bleedexp

float Light::bleedexp

Definition at line 53 of file DNA_light_types.h.

◆ buffers

short Light::buffers

Definition at line 54 of file DNA_light_types.h.

Referenced by blo_do_versions_pre250(), and DocumentImporter::writeLight().

◆ bufflag

char Light::bufflag

Definition at line 55 of file DNA_light_types.h.

◆ bufsize

short Light::bufsize

Definition at line 54 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ buftype

char Light::buftype

Definition at line 55 of file DNA_light_types.h.

◆ cascade_count

int Light::cascade_count

Definition at line 75 of file DNA_light_types.h.

Referenced by EEVEE_shadows_cascade_add().

◆ cascade_exponent

float Light::cascade_exponent

Definition at line 73 of file DNA_light_types.h.

Referenced by EEVEE_shadows_cascade_add().

◆ cascade_fade

float Light::cascade_fade

Definition at line 74 of file DNA_light_types.h.

Referenced by EEVEE_shadows_cascade_add().

◆ cascade_max_dist

float Light::cascade_max_dist

Definition at line 72 of file DNA_light_types.h.

Referenced by EEVEE_shadows_cascade_add().

◆ clipend

float Light::clipend

Definition at line 49 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ clipsta

float Light::clipsta

◆ coeff_const

float Light::coeff_const

Definition at line 43 of file DNA_light_types.h.

◆ coeff_lin

float Light::coeff_lin

Definition at line 43 of file DNA_light_types.h.

◆ coeff_quad

float Light::coeff_quad

Definition at line 43 of file DNA_light_types.h.

◆ contact_bias

float Light::contact_bias

Definition at line 78 of file DNA_light_types.h.

Referenced by eevee_contact_shadow_setup().

◆ contact_dist

float Light::contact_dist

Definition at line 77 of file DNA_light_types.h.

Referenced by eevee_contact_shadow_setup().

◆ contact_spread

float Light::contact_spread

Definition at line 79 of file DNA_light_types.h.

◆ contact_thickness

float Light::contact_thickness

Definition at line 80 of file DNA_light_types.h.

Referenced by eevee_contact_shadow_setup().

◆ curfalloff

struct CurveMapping* Light::curfalloff

◆ diff_fac

float Light::diff_fac

Definition at line 82 of file DNA_light_types.h.

Referenced by eevee_light_setup().

◆ dist

float Light::dist

◆ DNA_DEPRECATED

struct Ipo* ipo Light::DNA_DEPRECATED

Old animation system, deprecated for 2.5.

Definition at line 67 of file DNA_light_types.h.

◆ energy

float Light::energy

◆ falloff_type

short Light::falloff_type

◆ filtertype

short Light::filtertype

Definition at line 54 of file DNA_light_types.h.

◆ flag

short Light::flag

Definition at line 33 of file DNA_light_types.h.

Referenced by acf_dslight_setting_ptr(), and DocumentImporter::writeLight().

◆ g

float Light::g

◆ id

ID Light::id

◆ k

float Light::k

Definition at line 36 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ mode

int Light::mode

◆ NODE_DECLARE

Light::NODE_DECLARE

Definition at line 31 of file scene/light.h.

◆ nodetree

struct bNodeTree* Light::nodetree

◆ pr_texture

short Light::pr_texture

Definition at line 68 of file DNA_light_types.h.

◆ preview

struct PreviewImage* Light::preview

◆ r

float Light::r

◆ samp

short Light::samp

Definition at line 54 of file DNA_light_types.h.

◆ shadhalostep

short Light::shadhalostep

Definition at line 64 of file DNA_light_types.h.

◆ shdwb

float Light::shdwb

Definition at line 37 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ shdwg

float Light::shdwg

Definition at line 37 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ shdwpad

float Light::shdwpad

Definition at line 37 of file DNA_light_types.h.

◆ shdwr

float Light::shdwr

Definition at line 37 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ soft

float Light::soft

Definition at line 51 of file DNA_light_types.h.

Referenced by DocumentImporter::writeLight().

◆ spec_fac

float Light::spec_fac

◆ spotblend

float Light::spotblend

◆ spotsize

float Light::spotsize

◆ sun_angle

float Light::sun_angle

◆ texact

short Light::texact

Definition at line 64 of file DNA_light_types.h.

◆ type

short Light::type

◆ use_nodes

short Light::use_nodes

◆ volume_fac

float Light::volume_fac

Definition at line 82 of file DNA_light_types.h.

Referenced by eevee_light_setup().


The documentation for this class was generated from the following files: