forked from bartvdbraak/blender
svn merge ^/trunk/blender -r40997:41005 (to integrate the MSVC build fixes over to bmesh)
This commit is contained in:
commit
0c151167e5
@ -63,6 +63,10 @@
|
||||
#include "BKE_sequencer.h"
|
||||
#include "BKE_scene.h"
|
||||
|
||||
// evil quiet NaN definition
|
||||
static const int NAN_INT = 0x7FC00000;
|
||||
#define NAN_FLT *((float*)(&NAN_INT))
|
||||
|
||||
#ifdef WITH_AUDASPACE
|
||||
// evil global ;-)
|
||||
static int sound_cfra;
|
||||
@ -630,7 +634,7 @@ float sound_sync_scene(struct Scene *scene)
|
||||
else
|
||||
return AUD_getPosition(scene->sound_scene_handle);
|
||||
}
|
||||
return .0f/.0f;
|
||||
return NAN_FLT;
|
||||
}
|
||||
|
||||
int sound_scene_playing(struct Scene *scene)
|
||||
@ -787,7 +791,7 @@ static void sound_start_play_scene(struct Scene *UNUSED(scene)) {}
|
||||
void sound_play_scene(struct Scene *UNUSED(scene)) {}
|
||||
void sound_stop_scene(struct Scene *UNUSED(scene)) {}
|
||||
void sound_seek_scene(struct Main *UNUSED(bmain), struct Scene *UNUSED(scene)) {}
|
||||
float sound_sync_scene(struct Scene *UNUSED(scene)) { return .0f/.0f; }
|
||||
float sound_sync_scene(struct Scene *UNUSED(scene)) { return NAN_FLT; }
|
||||
int sound_scene_playing(struct Scene *UNUSED(scene)) { return -1; }
|
||||
int sound_read_sound_buffer(struct bSound* UNUSED(sound), float* UNUSED(buffer), int UNUSED(length), float UNUSED(start), float UNUSED(end)) { return 0; }
|
||||
void sound_read_waveform(struct bSound* sound) { (void)sound; }
|
||||
|
@ -962,30 +962,32 @@ void AnimationImporter::translate_Animations ( COLLADAFW::Node * node ,
|
||||
for (unsigned int j = 0; j < matBinds.getCount(); j++) {
|
||||
const COLLADAFW::UniqueId & matuid = matBinds[j].getReferencedMaterial();
|
||||
const COLLADAFW::Effect *ef = (COLLADAFW::Effect *) (FW_object_map[matuid]);
|
||||
const COLLADAFW::CommonEffectPointerArray& commonEffects = ef->getCommonEffects();
|
||||
COLLADAFW::EffectCommon *efc = commonEffects[0];
|
||||
if((animType->material & MATERIAL_SHININESS) != 0){
|
||||
const COLLADAFW::FloatOrParam *shin = &(efc->getShininess());
|
||||
const COLLADAFW::UniqueId& listid = shin->getAnimationList();
|
||||
Assign_float_animations( listid, AnimCurves , "specular_hardness" );
|
||||
}
|
||||
if (ef != NULL) { /* can be NULL [#28909] */
|
||||
const COLLADAFW::CommonEffectPointerArray& commonEffects = ef->getCommonEffects();
|
||||
COLLADAFW::EffectCommon *efc = commonEffects[0];
|
||||
if((animType->material & MATERIAL_SHININESS) != 0){
|
||||
const COLLADAFW::FloatOrParam *shin = &(efc->getShininess());
|
||||
const COLLADAFW::UniqueId& listid = shin->getAnimationList();
|
||||
Assign_float_animations( listid, AnimCurves , "specular_hardness" );
|
||||
}
|
||||
|
||||
if((animType->material & MATERIAL_IOR) != 0){
|
||||
const COLLADAFW::FloatOrParam *ior = &(efc->getIndexOfRefraction());
|
||||
const COLLADAFW::UniqueId& listid = ior->getAnimationList();
|
||||
Assign_float_animations( listid, AnimCurves , "raytrace_transparency.ior" );
|
||||
}
|
||||
if((animType->material & MATERIAL_IOR) != 0){
|
||||
const COLLADAFW::FloatOrParam *ior = &(efc->getIndexOfRefraction());
|
||||
const COLLADAFW::UniqueId& listid = ior->getAnimationList();
|
||||
Assign_float_animations( listid, AnimCurves , "raytrace_transparency.ior" );
|
||||
}
|
||||
|
||||
if((animType->material & MATERIAL_SPEC_COLOR) != 0){
|
||||
const COLLADAFW::ColorOrTexture *cot = &(efc->getSpecular());
|
||||
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
||||
Assign_color_animations( listid, AnimCurves , "specular_color" );
|
||||
}
|
||||
if((animType->material & MATERIAL_SPEC_COLOR) != 0){
|
||||
const COLLADAFW::ColorOrTexture *cot = &(efc->getSpecular());
|
||||
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
||||
Assign_color_animations( listid, AnimCurves , "specular_color" );
|
||||
}
|
||||
|
||||
if((animType->material & MATERIAL_DIFF_COLOR) != 0){
|
||||
const COLLADAFW::ColorOrTexture *cot = &(efc->getDiffuse());
|
||||
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
||||
Assign_color_animations( listid, AnimCurves , "diffuse_color" );
|
||||
if((animType->material & MATERIAL_DIFF_COLOR) != 0){
|
||||
const COLLADAFW::ColorOrTexture *cot = &(efc->getDiffuse());
|
||||
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
||||
Assign_color_animations( listid, AnimCurves , "diffuse_color" );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1051,14 +1053,16 @@ AnimationImporter::AnimMix* AnimationImporter::get_animation_type ( const COLLAD
|
||||
for (unsigned int j = 0; j < matBinds.getCount(); j++) {
|
||||
const COLLADAFW::UniqueId & matuid = matBinds[j].getReferencedMaterial();
|
||||
const COLLADAFW::Effect *ef = (COLLADAFW::Effect *) (FW_object_map[matuid]);
|
||||
const COLLADAFW::CommonEffectPointerArray& commonEffects = ef->getCommonEffects();
|
||||
if(!commonEffects.empty()) {
|
||||
COLLADAFW::EffectCommon *efc = commonEffects[0];
|
||||
types->material = setAnimType(&(efc->getShininess()),(types->material), MATERIAL_SHININESS);
|
||||
types->material = setAnimType(&(efc->getSpecular().getColor()),(types->material), MATERIAL_SPEC_COLOR);
|
||||
types->material = setAnimType(&(efc->getDiffuse().getColor()),(types->material), MATERIAL_DIFF_COLOR);
|
||||
// types->material = setAnimType(&(efc->get()),(types->material), MATERIAL_TRANSPARENCY);
|
||||
types->material = setAnimType(&(efc->getIndexOfRefraction()),(types->material), MATERIAL_IOR);
|
||||
if (ef != NULL) { /* can be NULL [#28909] */
|
||||
const COLLADAFW::CommonEffectPointerArray& commonEffects = ef->getCommonEffects();
|
||||
if(!commonEffects.empty()) {
|
||||
COLLADAFW::EffectCommon *efc = commonEffects[0];
|
||||
types->material = setAnimType(&(efc->getShininess()),(types->material), MATERIAL_SHININESS);
|
||||
types->material = setAnimType(&(efc->getSpecular().getColor()),(types->material), MATERIAL_SPEC_COLOR);
|
||||
types->material = setAnimType(&(efc->getDiffuse().getColor()),(types->material), MATERIAL_DIFF_COLOR);
|
||||
// types->material = setAnimType(&(efc->get()),(types->material), MATERIAL_TRANSPARENCY);
|
||||
types->material = setAnimType(&(efc->getIndexOfRefraction()),(types->material), MATERIAL_IOR);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1067,10 +1071,10 @@ AnimationImporter::AnimMix* AnimationImporter::get_animation_type ( const COLLAD
|
||||
|
||||
int AnimationImporter::setAnimType ( const COLLADAFW::Animatable * prop , int types, int addition)
|
||||
{
|
||||
const COLLADAFW::UniqueId& listid = prop->getAnimationList();
|
||||
if (animlist_map.find(listid) != animlist_map.end())
|
||||
return types|addition;
|
||||
else return types;
|
||||
const COLLADAFW::UniqueId& listid = prop->getAnimationList();
|
||||
if (animlist_map.find(listid) != animlist_map.end())
|
||||
return types|addition;
|
||||
else return types;
|
||||
}
|
||||
|
||||
// Is not used anymore.
|
||||
|
@ -1,4 +1,4 @@
|
||||
#! /usr/bin/env python3.1
|
||||
#! /usr/bin/env python3
|
||||
|
||||
"""
|
||||
This script is used to help cleaning RNA api.
|
||||
|
@ -1,4 +1,4 @@
|
||||
#! /usr/bin/env python3.1
|
||||
#! /usr/bin/env python3
|
||||
|
||||
import sys
|
||||
|
||||
|
@ -33,7 +33,6 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#include "DNA_listBase.h"
|
||||
#include "DNA_screen_types.h"
|
||||
@ -47,6 +46,7 @@
|
||||
|
||||
#include "BLI_blenlib.h"
|
||||
#include "BLI_utildefines.h"
|
||||
#include "BLI_math.h"
|
||||
|
||||
#include "BKE_blender.h"
|
||||
#include "BKE_context.h"
|
||||
|
@ -1596,7 +1596,7 @@ void BL_CreatePhysicsObjectNew(KX_GameObject* gameobj,
|
||||
objprop.m_boundclass = KX_BOUNDPOLYTOPE;
|
||||
break;
|
||||
}
|
||||
// Object is not a mesh... fall through OB_BOUND_POLYH to
|
||||
// Object is not a mesh... fall through OB_BOUND_TRIANGLE_MESH to
|
||||
// OB_BOUND_SPHERE
|
||||
case OB_BOUND_TRIANGLE_MESH:
|
||||
if (blenderobject->type == OB_MESH)
|
||||
|
Loading…
Reference in New Issue
Block a user