diff options
Diffstat (limited to 'source/gameengine/Converter')
-rw-r--r-- | source/gameengine/Converter/BL_ActionActuator.cpp | 8 | ||||
-rw-r--r-- | source/gameengine/Converter/BL_ArmatureObject.cpp | 4 | ||||
-rw-r--r-- | source/gameengine/Converter/BL_BlenderDataConversion.cpp | 16 | ||||
-rw-r--r-- | source/gameengine/Converter/BL_ShapeActionActuator.cpp | 6 | ||||
-rw-r--r-- | source/gameengine/Converter/BL_ShapeDeformer.cpp | 10 | ||||
-rw-r--r-- | source/gameengine/Converter/CMakeLists.txt | 1 | ||||
-rw-r--r-- | source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp | 4 | ||||
-rw-r--r-- | source/gameengine/Converter/KX_BlenderSceneConverter.cpp | 102 | ||||
-rw-r--r-- | source/gameengine/Converter/KX_ConvertProperties.cpp | 96 | ||||
-rw-r--r-- | source/gameengine/Converter/KX_ConvertSensors.cpp | 15 | ||||
-rw-r--r-- | source/gameengine/Converter/Makefile | 3 | ||||
-rw-r--r-- | source/gameengine/Converter/SConscript | 5 |
12 files changed, 143 insertions, 127 deletions
diff --git a/source/gameengine/Converter/BL_ActionActuator.cpp b/source/gameengine/Converter/BL_ActionActuator.cpp index 22c6c95b158..ce555fc1aeb 100644 --- a/source/gameengine/Converter/BL_ActionActuator.cpp +++ b/source/gameengine/Converter/BL_ActionActuator.cpp @@ -43,6 +43,7 @@ #include "BKE_action.h" #include "DNA_action_types.h" #include "DNA_armature_types.h" +#include "DNA_scene_types.h" #include "MEM_guardedalloc.h" #include "BLI_blenlib.h" #include "BLI_arithb.h" @@ -50,7 +51,6 @@ #include "BKE_utildefines.h" #include "FloatValue.h" #include "PyObjectPlus.h" -#include "blendef.h" #ifdef HAVE_CONFIG_H #include <config.h> @@ -371,7 +371,7 @@ bool BL_ActionActuator::Update(double curtime, bool frame) obj->GetPose(&m_pose); /* Override the necessary channels with ones from the action */ - extract_pose_from_action(m_pose, m_action, m_localtime); + // XXX extract_pose_from_action(m_pose, m_action, m_localtime); /* Perform the user override (if any) */ if (m_userpose){ @@ -391,7 +391,7 @@ bool BL_ActionActuator::Update(double curtime, bool frame) /* Find percentages */ newweight = (m_blendframe/(float)m_blendin); - blend_poses(m_pose, m_blendpose, 1.0 - newweight, ACTSTRIPMODE_BLEND); + // XXX blend_poses(m_pose, m_blendpose, 1.0 - newweight, ACTSTRIPMODE_BLEND); /* Increment current blending percentage */ m_blendframe = (curtime - m_blendstart)*KX_KetsjiEngine::GetAnimFrameRate(); @@ -1079,4 +1079,4 @@ int BL_ActionActuator::_setattr(const char *attr, PyObject* value) { if (ret >= 0) return ret; return SCA_IActuator::_setattr(attr, value); -}
\ No newline at end of file +} diff --git a/source/gameengine/Converter/BL_ArmatureObject.cpp b/source/gameengine/Converter/BL_ArmatureObject.cpp index d2001212f7d..071cd50c506 100644 --- a/source/gameengine/Converter/BL_ArmatureObject.cpp +++ b/source/gameengine/Converter/BL_ArmatureObject.cpp @@ -58,7 +58,7 @@ BL_ArmatureObject::BL_ArmatureObject( m_activePriority(999), m_lastapplyframe(0.0) { - m_armature = get_armature(m_objArma); + m_armature = (bArmature *)armature->data; /* we make a copy of blender object's pose, and then always swap it with * the original pose before calling into blender functions, to deal with @@ -98,7 +98,7 @@ void BL_ArmatureObject::ApplyPose() m_objArma->pose = m_pose; if(m_lastapplyframe != m_lastframe) { - where_is_pose(m_objArma); + where_is_pose(NULL, m_objArma); // XXX m_lastapplyframe = m_lastframe; } } diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp index d74243b0eb0..da74fa49cba 100644 --- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp +++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp @@ -178,8 +178,8 @@ extern "C" { #ifdef __cplusplus extern "C" { #endif -#include "BSE_headerbuttons.h" -void update_for_newframe(); +//XXX #include "BSE_headerbuttons.h" +//XXX void update_for_newframe(); //void scene_update_for_newframe(struct Scene *sce, unsigned int lay); //#include "BKE_ipo.h" //void do_all_data_ipos(void); @@ -1713,7 +1713,7 @@ struct parentChildLink { }; #include "DNA_constraint_types.h" -#include "BIF_editconstraint.h" +//XXX #include "BIF_editconstraint.h" bPoseChannel *get_active_posechannel2 (Object *ob) { @@ -1930,7 +1930,7 @@ void BL_ConvertBlenderObjects(struct Main* maggie, if (converter->addInitFromFrame){//rcruiz float eulxyzPrev[3]; blenderscene->r.cfra=blenderscene->r.sfra-1; - update_for_newframe(); + //XXX update_for_newframe(); MT_Vector3 tmp=pos-MT_Point3(blenderobject->loc[0]+blenderobject->dloc[0], blenderobject->loc[1]+blenderobject->dloc[1], blenderobject->loc[2]+blenderobject->dloc[2] @@ -1948,7 +1948,7 @@ void BL_ConvertBlenderObjects(struct Main* maggie, tmp.scale(fps, fps, fps); iniang.push_back(tmp); blenderscene->r.cfra=blenderscene->r.sfra; - update_for_newframe(); + //XXX update_for_newframe(); } gameobj->NodeSetLocalPosition(pos); @@ -2124,7 +2124,7 @@ void BL_ConvertBlenderObjects(struct Main* maggie, if (converter->addInitFromFrame){//rcruiz float eulxyzPrev[3]; blenderscene->r.cfra=blenderscene->r.sfra-1; - update_for_newframe(); + //XXX update_for_newframe(); MT_Vector3 tmp=pos-MT_Point3(blenderobject->loc[0]+blenderobject->dloc[0], blenderobject->loc[1]+blenderobject->dloc[1], blenderobject->loc[2]+blenderobject->dloc[2] @@ -2142,7 +2142,7 @@ void BL_ConvertBlenderObjects(struct Main* maggie, tmp.scale(fps, fps, fps); iniang.push_back(tmp); blenderscene->r.cfra=blenderscene->r.sfra; - update_for_newframe(); + //XXX update_for_newframe(); } gameobj->NodeSetLocalPosition(pos); @@ -2346,7 +2346,7 @@ void BL_ConvertBlenderObjects(struct Main* maggie, case PARBONE: { // parent this to a bone - Bone *parent_bone = get_named_bone(get_armature(blenderchild->parent), blenderchild->parsubstr); + Bone *parent_bone = get_named_bone( (bArmature *)(blenderchild->parent)->data, blenderchild->parsubstr); if(parent_bone) { KX_BoneParentRelation *bone_parent_relation = KX_BoneParentRelation::New(parent_bone); diff --git a/source/gameengine/Converter/BL_ShapeActionActuator.cpp b/source/gameengine/Converter/BL_ShapeActionActuator.cpp index 2e02ee9b941..f4e3e7e0ae8 100644 --- a/source/gameengine/Converter/BL_ShapeActionActuator.cpp +++ b/source/gameengine/Converter/BL_ShapeActionActuator.cpp @@ -40,6 +40,7 @@ #include "STR_HashedString.h" #include "DNA_nla_types.h" #include "DNA_action_types.h" +#include "DNA_scene_types.h" #include "BKE_action.h" #include "DNA_armature_types.h" #include "MEM_guardedalloc.h" @@ -49,7 +50,6 @@ #include "BKE_utildefines.h" #include "FloatValue.h" #include "PyObjectPlus.h" -#include "blendef.h" #ifdef HAVE_CONFIG_H #include <config.h> @@ -379,9 +379,9 @@ bool BL_ShapeActionActuator::Update(double curtime, bool frame) m_blendstart = curtime; } // only interested in shape channel - extract_ipochannels_from_action(&tchanbase, &key->id, m_action, "Shape", m_localtime); + // XXX extract_ipochannels_from_action(&tchanbase, &key->id, m_action, "Shape", m_localtime); - if (!execute_ipochannels(&tchanbase)) { + if (0) { // XXX !execute_ipochannels(&tchanbase)) { // no update, this is possible if action does not match the keys, stop the action keepgoing = false; } diff --git a/source/gameengine/Converter/BL_ShapeDeformer.cpp b/source/gameengine/Converter/BL_ShapeDeformer.cpp index fc6498579ad..8be612503bc 100644 --- a/source/gameengine/Converter/BL_ShapeDeformer.cpp +++ b/source/gameengine/Converter/BL_ShapeDeformer.cpp @@ -116,11 +116,11 @@ bool BL_ShapeDeformer::ExecuteShapeDrivers(void) for (it=m_shapeDrivers.begin(); it!=m_shapeDrivers.end(); it++) { // no need to set a specific time: this curve has a driver - IpoCurve *icu = *it; - calc_icu(icu, 1.0f); - poin = get_ipo_poin((ID*)m_bmesh->key, icu, &type); - if (poin) - write_ipo_poin(poin, type, icu->curval); + // XXX IpoCurve *icu = *it; + //calc_icu(icu, 1.0f); + //poin = get_ipo_poin((ID*)m_bmesh->key, icu, &type); + //if (poin) + // write_ipo_poin(poin, type, icu->curval); } ForceUpdate(); diff --git a/source/gameengine/Converter/CMakeLists.txt b/source/gameengine/Converter/CMakeLists.txt index 217bdb30907..a5219b9e759 100644 --- a/source/gameengine/Converter/CMakeLists.txt +++ b/source/gameengine/Converter/CMakeLists.txt @@ -46,6 +46,7 @@ SET(INC ../../../source/gameengine/Ketsji/KXNetwork ../../../source/blender/blenlib ../../../source/blender/blenkernel + ../../../source/blender/windowmanager ../../../source/blender ../../../source/blender/include ../../../source/blender/makesdna diff --git a/source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp b/source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp index 4d79febb7b4..17bb3dedd36 100644 --- a/source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp +++ b/source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp @@ -36,7 +36,7 @@ extern "C" { static const int BL_MAX_CHANNELS = 32; float BL_ScalarInterpolator::GetValue(float currentTime) const { - return IPO_GetFloatValue(m_blender_ipo, m_channel, currentTime); + return 0; // XXX IPO_GetFloatValue(m_blender_ipo, m_channel, currentTime); } @@ -44,7 +44,7 @@ float BL_ScalarInterpolator::GetValue(float currentTime) const { BL_InterpolatorList::BL_InterpolatorList(struct Ipo *ipo) { IPO_Channel channels[BL_MAX_CHANNELS]; - int num_channels = IPO_GetChannels(ipo, channels); + int num_channels = 0; // XXX IPO_GetChannels(ipo, channels); int i; diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp index 97a0819147c..7daca6c32fe 100644 --- a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp +++ b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp @@ -83,8 +83,8 @@ extern "C" #include "DNA_curve_types.h" #include "BLI_blenlib.h" #include "MEM_guardedalloc.h" -#include "BSE_editipo.h" -#include "BSE_editipo_types.h" +//XXX #include "BSE_editipo.h" +//XXX #include "BSE_editipo_types.h" #include "DNA_ipo_types.h" #include "BKE_global.h" #include "DNA_space_types.h" @@ -643,6 +643,7 @@ void KX_BlenderSceneConverter::localDel_ipoCurve ( IpoCurve * icu ,struct SpaceI return; int i; +#if 0 //XXX EditIpo *ei= (EditIpo *)sipo->editipo; if (!ei) return; @@ -653,15 +654,16 @@ void KX_BlenderSceneConverter::localDel_ipoCurve ( IpoCurve * icu ,struct SpaceI return; } } +#endif } //quick hack extern "C" { Ipo *add_ipo( char *name, int idcode ); - char *getIpoCurveName( IpoCurve * icu ); - struct IpoCurve *verify_ipocurve(struct ID *, short, char *, char *, char *, int, short); - void testhandles_ipocurve(struct IpoCurve *icu); + //XXX char *getIpoCurveName( IpoCurve * icu ); + //XXX struct IpoCurve *verify_ipocurve(struct ID *, short, char *, char *, char *, int); + //XXX void testhandles_ipocurve(struct IpoCurve *icu); void insert_vert_icu(struct IpoCurve *, float, float, short); void Mat3ToEul(float tmat[][3], float *eul); } @@ -671,11 +673,11 @@ IpoCurve* findIpoCurve(IpoCurve* first, const char* searchName) IpoCurve* icu1; for( icu1 = first; icu1; icu1 = icu1->next ) { - char* curveName = getIpoCurveName( icu1 ); + /*XXX char* curveName = getIpoCurveName( icu1 ); if( !strcmp( curveName, searchName) ) { return icu1; - } + }*/ } return 0; } @@ -749,7 +751,7 @@ void KX_BlenderSceneConverter::ResetPhysicsObjectsAnimationIpo(bool clearIpo) } } } else - { ipo = add_ipo(blenderObject->id.name+2, ID_OB); + { ipo = NULL; // XXX add_ipo(blenderObject->id.name+2, ID_OB); blenderObject->ipo = ipo; } @@ -872,28 +874,28 @@ void KX_BlenderSceneConverter::WritePhysicsObjectToAnimationIpo(int frameNumber) //create the curves, if not existing IpoCurve *icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocX"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_X, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_X); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocY"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Y, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Y); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocZ"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Z, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Z); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotX"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_X, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_X); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotY"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Y, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Y); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotZ"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Z, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Z); @@ -903,58 +905,58 @@ void KX_BlenderSceneConverter::WritePhysicsObjectToAnimationIpo(int frameNumber) if (icu1) { float curVal = position.x(); - insert_vert_icu(icu1, frameNumber, curVal, 0); + //XXX insert_vert_icu(icu1, frameNumber, curVal, 0); #ifdef TEST_HANDLES_GAME2IPO - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); #endif } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocY"); if (icu1) { float curVal = position.y(); - insert_vert_icu(icu1, frameNumber, curVal, 0); + //XXX insert_vert_icu(icu1, frameNumber, curVal, 0); #ifdef TEST_HANDLES_GAME2IPO - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); #endif } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocZ"); if (icu1) { float curVal = position.z(); - insert_vert_icu(icu1, frameNumber, curVal, 0); + //XXX insert_vert_icu(icu1, frameNumber, curVal, 0); #ifdef TEST_HANDLES_GAME2IPO - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); #endif } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotX"); if (icu1) { float curVal = eulerAngles[0]; - insert_vert_icu(icu1, frameNumber, curVal, 0); + //XXX insert_vert_icu(icu1, frameNumber, curVal, 0); #ifdef TEST_HANDLES_GAME2IPO - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); #endif } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotY"); if (icu1) { float curVal = eulerAngles[1]; - insert_vert_icu(icu1, frameNumber, curVal, 0); + //XXX insert_vert_icu(icu1, frameNumber, curVal, 0); #ifdef TEST_HANDLES_GAME2IPO - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); #endif } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotZ"); if (icu1) { float curVal = eulerAngles[2]; - insert_vert_icu(icu1, frameNumber, curVal, 0); + //XXX insert_vert_icu(icu1, frameNumber, curVal, 0); #ifdef TEST_HANDLES_GAME2IPO - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); #endif } @@ -1028,28 +1030,28 @@ void KX_BlenderSceneConverter::TestHandlesPhysicsObjectToAnimationIpo() //create the curves, if not existing IpoCurve *icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocX"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_X, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_X); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocY"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Y, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Y); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocZ"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Z, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_LOC_Z); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotX"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_X, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_X); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotY"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Y, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Y); icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotZ"); - if (!icu1) - icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Z, 1); + //XXX if (!icu1) + //XXX icu1 = verify_ipocurve(&blenderObject->id, ipo->blocktype, NULL, NULL, NULL, OB_ROT_Z); @@ -1058,32 +1060,32 @@ void KX_BlenderSceneConverter::TestHandlesPhysicsObjectToAnimationIpo() icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocX"); if (icu1) { - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocY"); if (icu1) { - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"LocZ"); if (icu1) { - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotX"); if (icu1) { - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotY"); if (icu1) { - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); } icu1 = findIpoCurve((IpoCurve *)ipo->curve.first,"RotZ"); if (icu1) { - testhandles_ipocurve(icu1); + //XXX testhandles_ipocurve(icu1); } } diff --git a/source/gameengine/Converter/KX_ConvertProperties.cpp b/source/gameengine/Converter/KX_ConvertProperties.cpp index dfbc6f0c48d..53769dc30a1 100644 --- a/source/gameengine/Converter/KX_ConvertProperties.cpp +++ b/source/gameengine/Converter/KX_ConvertProperties.cpp @@ -66,58 +66,58 @@ void BL_ConvertProperties(Object* object,KX_GameObject* gameobj,SCA_TimeEventMan show_debug_info = bool (prop->flag & PROP_DEBUG); switch(prop->type) { - case PROP_BOOL: - { - propval = new CBoolValue((bool)(prop->data != 0)); - gameobj->SetProperty(prop->name,propval); - //promp->poin= &prop->data; - break; - } - case PROP_INT: - { - propval = new CIntValue((int)prop->data); - gameobj->SetProperty(prop->name,propval); - break; - } - case PROP_FLOAT: - { - //prop->poin= &prop->data; - float floatprop = *((float*)&prop->data); - propval = new CFloatValue(floatprop); - gameobj->SetProperty(prop->name,propval); - } - break; - case PROP_STRING: - { - //prop->poin= callocN(MAX_PROPSTRING, "property string"); - propval = new CStringValue((char*)prop->poin,""); - gameobj->SetProperty(prop->name,propval); + case GPROP_BOOL: + { + propval = new CBoolValue((bool)(prop->data != 0)); + gameobj->SetProperty(prop->name,propval); + //promp->poin= &prop->data; + break; + } + case GPROP_INT: + { + propval = new CIntValue((int)prop->data); + gameobj->SetProperty(prop->name,propval); + break; + } + case GPROP_FLOAT: + { + //prop->poin= &prop->data; + float floatprop = *((float*)&prop->data); + propval = new CFloatValue(floatprop); + gameobj->SetProperty(prop->name,propval); + } break; - } - case PROP_TIME: - { - float floatprop = *((float*)&prop->data); - - CValue* timeval = new CFloatValue(floatprop); - // set a subproperty called 'timer' so that - // we can register the replica of this property - // at the time a game object is replicated (AddObjectActuator triggers this) - CValue *bval = new CBoolValue(true); - timeval->SetProperty("timer",bval); - bval->Release(); - if (isInActiveLayer) + case GPROP_STRING: { - timemgr->AddTimeProperty(timeval); + //prop->poin= callocN(MAX_PROPSTRING, "property string"); + propval = new CStringValue((char*)prop->poin,""); + gameobj->SetProperty(prop->name,propval); + break; } - - propval = timeval; - gameobj->SetProperty(prop->name,timeval); + case GPROP_TIME: + { + float floatprop = *((float*)&prop->data); - } - default: - { - // todo make an assert etc. - } + CValue* timeval = new CFloatValue(floatprop); + // set a subproperty called 'timer' so that + // we can register the replica of this property + // at the time a game object is replicated (AddObjectActuator triggers this) + CValue *bval = new CBoolValue(true); + timeval->SetProperty("timer",bval); + bval->Release(); + if (isInActiveLayer) + { + timemgr->AddTimeProperty(timeval); + } + + propval = timeval; + gameobj->SetProperty(prop->name,timeval); + + } + default: + { + // todo make an assert etc. + } } if (propval) diff --git a/source/gameengine/Converter/KX_ConvertSensors.cpp b/source/gameengine/Converter/KX_ConvertSensors.cpp index c9b51807767..c91197b72a6 100644 --- a/source/gameengine/Converter/KX_ConvertSensors.cpp +++ b/source/gameengine/Converter/KX_ConvertSensors.cpp @@ -36,6 +36,7 @@ #pragma warning (disable : 4786) #endif //WIN32 +#include "wm_event_types.h" #include "KX_BlenderSceneConverter.h" #include "KX_ConvertSensors.h" @@ -119,10 +120,11 @@ void BL_ConvertSensors(struct Object* blenderobject, gReverseKeyTranslateTable[TIMER0 ] = SCA_IInputDevice::KX_TIMER0; gReverseKeyTranslateTable[TIMER1 ] = SCA_IInputDevice::KX_TIMER1; gReverseKeyTranslateTable[TIMER2 ] = SCA_IInputDevice::KX_TIMER2; - gReverseKeyTranslateTable[TIMER3 ] = SCA_IInputDevice::KX_TIMER3; // SYSTEM +#if 0 + /* **** XXX **** */ gReverseKeyTranslateTable[KEYBD ] = SCA_IInputDevice::KX_KEYBD; gReverseKeyTranslateTable[RAWKEYBD ] = SCA_IInputDevice::KX_RAWKEYBD; gReverseKeyTranslateTable[REDRAW ] = SCA_IInputDevice::KX_REDRAW; @@ -133,7 +135,8 @@ void BL_ConvertSensors(struct Object* blenderobject, gReverseKeyTranslateTable[WINCLOSE ] = SCA_IInputDevice::KX_WINCLOSE; gReverseKeyTranslateTable[WINQUIT ] = SCA_IInputDevice::KX_WINQUIT; gReverseKeyTranslateTable[Q_FIRSTTIME ] = SCA_IInputDevice::KX_Q_FIRSTTIME; - + /* **** XXX **** */ +#endif // standard keyboard gReverseKeyTranslateTable[AKEY ] = SCA_IInputDevice::KX_AKEY; @@ -143,7 +146,15 @@ void BL_ConvertSensors(struct Object* blenderobject, gReverseKeyTranslateTable[EKEY ] = SCA_IInputDevice::KX_EKEY; gReverseKeyTranslateTable[FKEY ] = SCA_IInputDevice::KX_FKEY; gReverseKeyTranslateTable[GKEY ] = SCA_IInputDevice::KX_GKEY; +//XXX clean up +#ifdef WIN32 +#define HKEY 'h' +#endif gReverseKeyTranslateTable[HKEY ] = SCA_IInputDevice::KX_HKEY; +//XXX clean up +#ifdef WIN32 +#undef HKEY +#endif gReverseKeyTranslateTable[IKEY ] = SCA_IInputDevice::KX_IKEY; gReverseKeyTranslateTable[JKEY ] = SCA_IInputDevice::KX_JKEY; gReverseKeyTranslateTable[KKEY ] = SCA_IInputDevice::KX_KKEY; diff --git a/source/gameengine/Converter/Makefile b/source/gameengine/Converter/Makefile index 4dd63e428bd..938994e8b62 100644 --- a/source/gameengine/Converter/Makefile +++ b/source/gameengine/Converter/Makefile @@ -45,9 +45,10 @@ CPPFLAGS += -I$(NAN_BULLET2)/include CPPFLAGS += -I../../blender # these two needed because of blenkernel +CPPFLAGS += -I../../blender/windowmanager CPPFLAGS += -I../../blender/imbuf CPPFLAGS += -I../../blender/makesdna -CPPFLAGS += -I../../blender/include +CPPFLAGS += -I../../blender/editors/include CPPFLAGS += -I../../blender/blenlib CPPFLAGS += -I../../blender/blenkernel CPPFLAGS += -I../../blender/render/extern/include diff --git a/source/gameengine/Converter/SConscript b/source/gameengine/Converter/SConscript index 361dca58005..98b7c71bad2 100644 --- a/source/gameengine/Converter/SConscript +++ b/source/gameengine/Converter/SConscript @@ -11,13 +11,14 @@ incs += ' #intern/SoundSystem/dummy #intern/SoundSystem/intern #source/gameengin incs += ' #source/gameengine/BlenderRoutines #source/blender/imbuf' incs += ' #intern/moto/include #source/gameengine/Ketsji #source/gameengine/Ketsji/KXNetwork' incs += ' #source/blender/blenlib #source/blender/blenkernel #source/blender' -incs += ' #source/blender/include #source/blender/makesdna #source/gameengine/Rasterizer' +incs += ' #source/blender/editors/include #source/blender/makesdna #source/gameengine/Rasterizer' incs += ' #source/gameengine/Rasterizer/RAS_OpenGLRasterizer #source/gameengine/GameLogic' incs += ' #source/gameengine/Expressions #source/gameengine/Network #source/gameengine/SceneGraph' incs += ' #source/gameengine/Physics/common #source/gameengine/Physics/Bullet #source/gameengine/Physics/BlOde' incs += ' #source/gameengine/Physics/Dummy' incs += ' #source/gameengine/Network/LoopBackNetwork' incs += ' #source/blender/misc #source/blender/blenloader #source/blender/gpu' +incs += ' #source/blender/windowmanager' if env['WITH_BF_SOLID']: incs += ' #source/gameengine/Physics/Sumo #source/gameengine/Physics/Sumo/Fuzzics/include' @@ -27,4 +28,4 @@ if env['WITH_BF_SOLID']: incs += ' ' + env['BF_PYTHON_INC'] incs += ' ' + env['BF_BULLET_INC'] -env.BlenderLib ( 'bf_converter', sources, Split(incs), defs, libtype=['game','player'], priority=[5,70] ) +env.BlenderLib ( 'bf_converter', sources, Split(incs), defs, libtype=['core','player'], priority=[305,50] ) |