Browse Source

add ambient light type, allow collada to load it

Gargaj 11 years ago
parent
commit
d333e08343
3 changed files with 6 additions and 5 deletions
  1. 0 1
      code/ColladaHelper.h
  2. 0 4
      code/ColladaLoader.cpp
  3. 6 0
      include/assimp/light.h

+ 0 - 1
code/ColladaHelper.h

@@ -118,7 +118,6 @@ struct Camera
 	float mZNear, mZFar;
 };
 
-#define aiLightSource_AMBIENT 0xdeaddead
 #define ASSIMP_COLLADA_LIGHT_ANGLE_NOT_SET 1e9f
 
 /** A collada light source. */

+ 0 - 4
code/ColladaLoader.cpp

@@ -308,10 +308,6 @@ void ColladaLoader::BuildLightsForNode( const ColladaParser& pParser, const Coll
 			continue;
 		}
 		const Collada::Light* srcLight = &srcLightIt->second;
-		if (srcLight->mType == aiLightSource_AMBIENT) {
-			DefaultLogger::get()->error("Collada: Skipping ambient light for the moment");
-			continue;
-		}
 		
 		// now fill our ai data structure
 		aiLight* out = new aiLight();

+ 6 - 0
include/assimp/light.h

@@ -75,6 +75,12 @@ enum aiLightSourceType
 	//! sport arenas.
 	aiLightSource_SPOT          = 0x3,
 
+	//! The generic light level of the world, including the bounces
+	//! of all other lightsources.
+	//! This light type doesn't have a valid position, direction, or
+	//! other properties, just a color. 
+	aiLightSource_AMBIENT       = 0x4,
+
 
 	/** This value is not used. It is just there to force the
 	 *  compiler to map this enum to a 32 Bit integer.