Blender  V3.3
DNA_light_types.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later
2  * Copyright 2001-2002 NaN Holding BV. All rights reserved. */
3 
8 #pragma once
9 
10 #include "DNA_ID.h"
11 #include "DNA_defs.h"
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 #ifndef MAX_MTEX
18 # define MAX_MTEX 18
19 #endif
20 
21 struct AnimData;
22 struct CurveMapping;
23 struct Ipo;
24 struct bNodeTree;
25 
26 typedef struct Light {
28 
29  ID id;
31  struct AnimData *adt;
32 
33  short type, flag;
34  int mode;
35 
36  float r, g, b, k;
38 
40 
42  float att1, att2;
44  char _pad0[4];
46  short falloff_type;
47  char _pad2[2];
48 
49  float clipsta, clipend;
50  float bias;
51  float soft; /* DEPRECATED kept for compatibility. */
52  float bleedbias; /* DEPRECATED kept for compatibility. */
53  float bleedexp; /* DEPRECATED kept for compatibility. */
56 
57  short area_shape;
59  float area_spread;
60 
61  float sun_angle;
62 
63  /* texact is for buttons */
65 
67  struct Ipo *ipo DNA_DEPRECATED;
69  char _pad6[4];
70 
71  /* Eevee */
74  float cascade_fade;
76 
77  float contact_dist;
78  float contact_bias;
79  float contact_spread; /* DEPRECATED kept for compatibility. */
81 
84 
85  /* preview */
87 
88  /* nodes */
91 
92 /* **************** LIGHT ********************* */
93 
94 /* flag */
95 #define LA_DS_EXPAND (1 << 0)
96 /* NOTE: this must have the same value as MA_DS_SHOW_TEXS,
97  * otherwise anim-editors will not read correctly
98  */
99 #define LA_DS_SHOW_TEXS (1 << 2)
100 
101 /* type */
102 #define LA_LOCAL 0
103 #define LA_SUN 1
104 #define LA_SPOT 2
105 /* #define LA_HEMI 3 */ /* not used anymore */
106 #define LA_AREA 4
107 
108 /* mode */
109 #define LA_SHADOW (1 << 0)
110 /* #define LA_HALO (1 << 1) */ /* not used anymore */
111 /* #define LA_LAYER (1 << 2) */ /* not used anymore */
112 /* #define LA_QUAD (1 << 3) */ /* not used anymore */
113 /* #define LA_NEG (1 << 4) */ /* not used anymore */
114 /* #define LA_ONLYSHADOW(1 << 5) */ /* not used anymore */
115 /* #define LA_SPHERE (1 << 6) */ /* not used anymore */
116 #define LA_SQUARE (1 << 7)
117 /* #define LA_TEXTURE (1 << 8) */ /* not used anymore */
118 /* #define LA_OSATEX (1 << 9) */ /* not used anymore */
119 /* #define LA_DEEP_SHADOW (1 << 10) */ /* not used anywhere */
120 /* #define LA_NO_DIFF (1 << 11) */ /* not used anywhere */
121 /* #define LA_NO_SPEC (1 << 12) */ /* not used anywhere */
122 /* #define LA_SHAD_RAY (1 << 13) */ /* not used anywhere - cleaned */
123 /* YAFRAY: light shadow-buffer flag, soft-light. */
124 /* Since it is used with LOCAL light, can't use LA_SHAD */
125 /* #define LA_YF_SOFT (1 << 14) */ /* not used anymore */
126 /* #define LA_LAYER_SHADOW (1 << 15) */ /* not used anymore */
127 /* #define LA_SHAD_TEX (1 << 16) */ /* not used anymore */
128 #define LA_SHOW_CONE (1 << 17)
129 /* #define LA_SHOW_SHADOW_BOX (1 << 18) */
130 #define LA_SHAD_CONTACT (1 << 19)
131 #define LA_CUSTOM_ATTENUATION (1 << 20)
132 
133 /* falloff_type */
134 #define LA_FALLOFF_CONSTANT 0
135 #define LA_FALLOFF_INVLINEAR 1
136 #define LA_FALLOFF_INVSQUARE 2
137 #define LA_FALLOFF_CURVE 3
138 #define LA_FALLOFF_SLIDERS 4
139 #define LA_FALLOFF_INVCOEFFICIENTS 5
140 
141 /* area shape */
142 #define LA_AREA_SQUARE 0
143 #define LA_AREA_RECT 1
144 /* #define LA_AREA_CUBE 2 */ /* UNUSED */
145 /* #define LA_AREA_BOX 3 */ /* UNUSED */
146 #define LA_AREA_DISK 4
147 #define LA_AREA_ELLIPSE 5
148 
149 #ifdef __cplusplus
150 }
151 #endif
ID and Library types, which are fundamental for sdna.
#define DNA_DEFINE_CXX_METHODS(class_name)
Definition: DNA_defs.h:64
Definition: DNA_ID.h:368
float coeff_const
float att2
float contact_thickness
float coeff_lin
float cascade_exponent
float sun_angle
float r
float contact_dist
float energy
short bufsize
float shdwpad
float att_dist
short texact
char bufflag
struct PreviewImage * preview
float coeff_quad
float dist
float clipend
float att1
short shadhalostep
float area_sizez
int cascade_count
char _pad2[2]
float area_spread
struct AnimData * adt
float spec_fac
short use_nodes
float contact_spread
float bleedbias
float bleedexp
char _pad0[4]
float soft
float area_sizey
char _pad6[4]
short samp
float shdwg
short area_shape
char buftype
float clipsta
float spotblend
float g
short falloff_type
float contact_bias
float spotsize
struct CurveMapping * curfalloff
struct bNodeTree * nodetree
float area_size
float cascade_max_dist
short filtertype
float k
float shdwr
float b
float shdwb
float cascade_fade
float volume_fac
short type
short pr_texture
float bias
float diff_fac
short buffers
short flag
struct Ipo *ipo DNA_DEPRECATED