Changeset 3280 for code/trunk/src/orxonox/objects/worldentities/Light.cc
- Timestamp:
- Jul 12, 2009, 11:58:01 PM (15 years ago)
- Location:
- code/trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/trunk
- Property svn:mergeinfo changed
/code/branches/core4 (added) merged: 3235-3237,3245-3250,3253-3254,3260-3261,3265,3270
- Property svn:mergeinfo changed
-
code/trunk/src/orxonox/objects/worldentities/Light.cc
r3205 r3280 33 33 #include <boost/static_assert.hpp> 34 34 35 #include "util/String .h"35 #include "util/StringUtils.h" 36 36 #include "util/Exception.h" 37 37 #include "core/CoreIncludes.h" … … 45 45 46 46 // Be sure we don't do bad conversions 47 BOOST_STATIC_ASSERT((int)Ogre::Light::LT_POINT == (int)Light:: LT_POINT);48 BOOST_STATIC_ASSERT((int)Ogre::Light::LT_DIRECTIONAL == (int)Light:: LT_DIRECTIONAL);49 BOOST_STATIC_ASSERT((int)Ogre::Light::LT_SPOTLIGHT == (int)Light:: LT_SPOTLIGHT);47 BOOST_STATIC_ASSERT((int)Ogre::Light::LT_POINT == (int)Light::Point); 48 BOOST_STATIC_ASSERT((int)Ogre::Light::LT_DIRECTIONAL == (int)Light::Directional); 49 BOOST_STATIC_ASSERT((int)Ogre::Light::LT_SPOTLIGHT == (int)Light::Spotlight); 50 50 51 51 Light::Light(BaseObject* creator) : StaticEntity(creator) … … 56 56 this->diffuse_ = ColourValue::White; 57 57 this->specular_ = ColourValue::White; 58 this->type_ = Light:: LT_POINT;58 this->type_ = Light::Point; 59 59 this->attenuation_ = Vector4(100000, 1, 0, 0); 60 60 this->spotlightRange_ = Vector3(40.0f, 30.0f, 1.0f); … … 106 106 void Light::registerVariables() 107 107 { 108 registerVariable((int&)this->type_, variableDirection::toclient, new NetworkCallback<Light>(this, &Light::updateType));109 registerVariable(this->diffuse_, variableDirection::toclient, new NetworkCallback<Light>(this, &Light::updateDiffuseColour));110 registerVariable(this->specular_, variableDirection::toclient, new NetworkCallback<Light>(this, &Light::updateSpecularColour));111 registerVariable(this->attenuation_, variableDirection::toclient, new NetworkCallback<Light>(this, &Light::updateAttenuation));112 registerVariable(this->spotlightRange_, variableDirection::toclient, new NetworkCallback<Light>(this, &Light::updateSpotlightRange));108 registerVariable((int&)this->type_, VariableDirection::ToClient, new NetworkCallback<Light>(this, &Light::updateType)); 109 registerVariable(this->diffuse_, VariableDirection::ToClient, new NetworkCallback<Light>(this, &Light::updateDiffuseColour)); 110 registerVariable(this->specular_, VariableDirection::ToClient, new NetworkCallback<Light>(this, &Light::updateSpecularColour)); 111 registerVariable(this->attenuation_, VariableDirection::ToClient, new NetworkCallback<Light>(this, &Light::updateAttenuation)); 112 registerVariable(this->spotlightRange_, VariableDirection::ToClient, new NetworkCallback<Light>(this, &Light::updateSpotlightRange)); 113 113 } 114 114 … … 127 127 void Light::updateAttenuation() 128 128 { 129 if (this->light_ && this->type_ != Light:: LT_DIRECTIONAL)129 if (this->light_ && this->type_ != Light::Directional) 130 130 this->light_->setAttenuation(this->attenuation_.x, this->attenuation_.y, this->attenuation_.z, this->attenuation_.w); 131 131 } … … 133 133 void Light::updateSpotlightRange() 134 134 { 135 if (this->light_ && this->type_ == Light:: LT_SPOTLIGHT)135 if (this->light_ && this->type_ == Light::Spotlight) 136 136 this->light_->setSpotlightRange(Degree(this->spotlightRange_.x), Degree(this->spotlightRange_.y), this->spotlightRange_.z); 137 137 } … … 140 140 { 141 141 if (type == "point") 142 this->setType(Light:: LT_POINT);142 this->setType(Light::Point); 143 143 else if (type == "directional") 144 this->setType(Light:: LT_DIRECTIONAL);144 this->setType(Light::Directional); 145 145 else if (type == "spotlight") 146 this->setType(Light:: LT_SPOTLIGHT);146 this->setType(Light::Spotlight); 147 147 else 148 this->setType(Light:: LT_POINT);148 this->setType(Light::Point); 149 149 } 150 150 … … 153 153 switch (this->type_) 154 154 { 155 case Light:: LT_DIRECTIONAL:155 case Light::Directional: 156 156 return "directional"; 157 case Light:: LT_SPOTLIGHT:157 case Light::Spotlight: 158 158 return "spotlight"; 159 case Light:: LT_POINT:159 case Light::Point: 160 160 default: 161 161 return "point"; … … 169 169 this->light_->setType(static_cast<Ogre::Light::LightTypes>(this->type_)); 170 170 171 if (this->type_ != Light:: LT_DIRECTIONAL)171 if (this->type_ != Light::Directional) 172 172 this->updateAttenuation(); 173 if (this->type_ == Light:: LT_SPOTLIGHT)173 if (this->type_ == Light::Spotlight) 174 174 this->updateSpotlightRange(); 175 175 }
Note: See TracChangeset
for help on using the changeset viewer.