17 INLINE PointLight::CData::
19 _specular_color(1.0f, 1.0f, 1.0f, 1.0f),
20 _attenuation(1.0f, 0.0f, 0.0f),
21 _max_distance(make_inf((PN_stdfloat)0)),
22 _point(0.0f, 0.0f, 0.0f)
29 INLINE PointLight::CData::
30 CData(
const PointLight::CData ©) :
31 _specular_color(copy._specular_color),
32 _attenuation(copy._attenuation),
33 _max_distance(copy._max_distance),
44 if (_has_specular_color) {
45 CDReader cdata(_cycler);
46 return cdata->_specular_color;
57 CDWriter cdata(_cycler);
58 _has_specular_color =
true;
59 cdata->_specular_color = color;
68 _has_specular_color =
false;
78 CDReader cdata(_cycler);
79 return cdata->_attenuation;
89 CDWriter cdata(_cycler);
90 cdata->_attenuation = attenuation;
99 CDReader cdata(_cycler);
100 return cdata->_max_distance;
109 CDWriter cdata(_cycler);
110 cdata->_max_distance = max_distance;
119 CDReader cdata(_cycler);
120 return cdata->_point;
128 CDWriter cdata(_cycler);
129 cdata->_point = point;