Hi!

Yes, you are right that mtbWrapper is the type iMeshWrapper!

Well, moving mtbWrapper by MovePosition and SetPosition of the iMovable 
of mtbWrapper both work with all of the mesh objects as children.
But in that case I unfortunately loose the functionality that the 
collider actor represents.

I don't catch the meaning of why it didn't work with moving the collider 
actor.

Any idea?



Amir Taaki wrote:
> Hi,
>
> I'm fairly unfamiliar with this stuff :) But what type is mtbWrapper? I 
> assume 
> its iMeshWrapper- try using the movable to move it. If this doesn't work then 
> try comment the for loop
>
> for(int i=0 ; i<43 ; i++){      // runs through the array
>
> and
>
> this->mtbChildren[i]->QuerySceneNode()->SetParent(this->mtbWrapper->QuerySceneNode());
>
> If you're able to move mtbWrapper, the re-enable the for loop. Tell me the 
> results here. Possibly I'm missing something that someone else may be able to 
> point out though.
>
> On Wednesday 31 January 2007 16:10, Thomas Teufel wrote:
>   
>> Ok, this time with a bit more program code :)
>>
>> First about the object files:
>> Yes, I scaled the objects but again .. all of them in the same way with
>> this tags in each of the .spr files of the objects.
>>     <hardmove>
>>         <matrix>
>>             <scale x="0.14" y="0.14" z="0.14" />
>>         </matrix>
>>     </hardmove>
>>
>> Additionally each of the .spr files has the tags <zuse /> and
>> <priority>object</priority>.
>> The rest is just the normal stuff.
>>
>>
>> Now about the program code:
>>
>> The following part is for loading the meshes:
>>     csString object_export_path = csString("/lib/thdata/");
>>
>>     iBase* parentResult;
>>
>>     if(!csp_loader->Load(object_export_path + this->parent_object_file +
>> ".spr", parentResult))
>>         csApplicationFramework::ReportError("Error couldn't load object:
>> " + this->parent_object_file + "!");
>>
>>     csRef<iMeshFactoryWrapper> parent_factory =
>> scfQueryInterface<iMeshFactoryWrapper>(parentResult);
>>     if(parent_factory){
>>         this->mtbWrapper = csp_engine->CreateMeshWrapper(parent_factory,
>> this->parent_object_file, thTrack->room, csVector3 (0, 23, 0));
>>
>>         this->parentState =
>> SCF_QUERY_INTERFACE(this->mtbWrapper->GetMeshObject(), iSprite3DState);
>>         this->parentState->SetAction("stand", false);
>>     }
>>
>>     for(int i=0 ; i<43 ; i++){      // runs through the array
>> "object_files" which contains the .spr filenames
>>         iBase* result;
>>
>>         csString obj_filepath = csString(object_export_path +
>> this->object_files[i] +".spr");     // generates the VFS path of the
>> .spr file
>>
>>         if(!csp_loader->Load(obj_filepath, result))
>>             csApplicationFramework::ReportError("Error couldn't load
>> object: "+obj_filepath+"!");
>>
>>         csRef<iMeshFactoryWrapper> ff =
>> scfQueryInterface<iMeshFactoryWrapper>(result);
>>         if(ff){
>>             this->mtbChildren[i] = csp_engine->CreateMeshWrapper(ff,
>> this->object_files[i], thTrack->room, csVector3 (0, 0, 0));
>>             this->spstate[i] = SCF_QUERY_INTERFACE
>> (this->mtbChildren[i]->GetMeshObject(), iSprite3DState);
>>             this->spstate[i]->SetAction("stand", false);
>>         }
>>
>>
>> this->mtbChildren[i]->QuerySceneNode()->SetParent(this->mtbWrapper->QuerySc
>> eneNode()); // sets the just loaded mesh as a child of this->mtbWrapper
>>     }
>>
>>
>> Setting up the collision detection system:
>>     this->csp_cdsys = csQueryRegistry<iCollideSystem>(GetObjectRegistry());
>>     if(!this->csp_cdsys) return ReportError("Failed to locate CD system!");
>>
>>     csColliderHelper::InitializeCollisionWrappers(this->csp_cdsys,
>> this->csp_engine);
>>
>>     this->collider_actor.SetCollideSystem(this->csp_cdsys);
>>     this->collider_actor.SetEngine(this->csp_engine);
>>
>>     csVector3 legs(0.2f, 0.3f, 0.2f);
>>     csVector3 body(0.2f, 1.2f, 0.2f);
>>     csVector3 shift(0.0f, -0.4f, 0.0f);
>>     this->collider_actor.InitializeColliders(this->mtbWrapper, legs,
>> body, shift);
>>
>>
>> Moving the "parent mesh":
>>     this->collider_actor.Move(elapsed_time / 1000.0f, 1.0f, pos,
>> csVector3(0));
>>
>>
>> As mentioned before, loading the mesh objects works fine.
>> They are also displayed by the engine.
>>
>> Just those six meshes make it somehow impossible to move the
>> "collider_actor".
>>
>>
>> I hope I didn't forget something.
>>
>> Thanks a million for your help!
>>
>> Jorrit Tyberghein wrote:
>>     
>>> Are you scaling the meshes in any way? Is there anything you're doing
>>> special? Care to show us a bit more relevant code? i.e. all code where
>>> you setup the collider actors and the meshes?
>>>
>>> Greetings,
>>>
>>> On 1/31/07, Thomas Teufel <[EMAIL PROTECTED]> wrote:
>>>       
>>>> Those sprites are moved with Crystal Space C++ code by a collider actor.
>>>>
>>>> Here a more exact description:
>>>>     I just move one iMeshWrapper object by the collider actor.
>>>>     All the other sprites are set as children of this iMeshWrapper with
>>>> this code:
>>>>         spriteObj->GetSceneNode()->SetParent(parentObj->GetSceneNode());
>>>>
>>>>     There are six out of 43 sprites that shield the ability to move
>>>> parentObj in world space.
>>>>     All of those 43 sprites are loaded within one loop. So the code is
>>>> exactly the same.
>>>>
>>>>     And also the sprites were modelled and exported the same way .. as I
>>>> already wrote.
>>>>
>>>> So far, so good ;)
>>>> Thanks
>>>>
>>>> Amir Taaki wrote:
>>>>         
>>>>> Hello,
>>>>>
>>>>> How exactly are you trying to move the sprite objects? Using Crystal
>>>>> Space C++ code or through 3DS Max?
>>>>>
>>>>>
>>>>> On 1/31/07, *Thomas Teufel* <[EMAIL PROTECTED]
>>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>>>
>>>>>     Hello!
>>>>>
>>>>>     I have some kind of moving issue at some of my 3d sprites.
>>>>>     At various 3d sprites with each an individual shape some do
>>>>>           
>>>> move and
>>>>
>>>>         
>>>>>     some don't.
>>>>>
>>>>>     They all were exported the exact same way out of 3ds max.
>>>>>     Also the loading command is the same.
>>>>>     Loading works! .. no Errors or something like that are displayed.
>>>>>     I can even see all of them with texture.
>>>>>
>>>>>     I move those sprites with a collider actor.
>>>>>
>>>>>     Is there something special one has to watch out at modeling a
>>>>>           
>>>> sprite?
>>>>
>>>>         
>>>>>     (There for example is one that is just a very simply shaped
>>>>>     cylinder and
>>>>>     it does not move.)
>>>>>
>>>>>     Or does anyone of you knows where the issue might be?
>>>>>
>>>>>
>>>>>     Thanks a lot!
>>>>>     Thomas
>>>>>           
>>>> ------------------------------------------------------------------------
>>>> -
>>>>
>>>>         
>>>>>     Take Surveys. Earn Cash. Influence the Future of IT
>>>>>     Join SourceForge.net's Techsay panel and you'll get the chance to
>>>>>     share your
>>>>>     opinions on IT & business topics through brief surveys - and
>>>>>           
>>>> earn cash
>>>>
>>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDE
>>>> V
>>>>
>>>>
>>>> <http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVD
>>>> EV>
>>>>
>>>>         
>>>>>     _______________________________________________
>>>>>     Crystal-main mailing list
>>>>>     Crystal-main@lists.sourceforge.net
>>>>>     <mailto:Crystal-main@lists.sourceforge.net>
>>>>>     https://lists.sourceforge.net/lists/listinfo/crystal-main
>>>>>     Unsubscribe: mailto: [EMAIL PROTECTED]
>>>>>           
>>>> <mailto:[EMAIL PROTECTED]>?subject=unsubscribe
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>> -
>>>>
>>>> Take Surveys. Earn Cash. Influence the Future of IT
>>>> Join SourceForge.net's Techsay panel and you'll get the chance to
>>>> share your
>>>> opinions on IT & business topics through brief surveys - and earn cash
>>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDE
>>>> V
>>>>
>>>> _______________________________________________
>>>> Crystal-main mailing list
>>>> Crystal-main@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/crystal-main
>>>> Unsubscribe:
>>>> mailto:[EMAIL PROTECTED]
>>>>         
>> -------------------------------------------------------------------------
>> Take Surveys. Earn Cash. Influence the Future of IT
>> Join SourceForge.net's Techsay panel and you'll get the chance to share
>> your opinions on IT & business topics through brief surveys - and earn cash
>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>> _______________________________________________
>> Crystal-main mailing list
>> Crystal-main@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/crystal-main
>> Unsubscribe:
>> mailto:[EMAIL PROTECTED]
>>     
>
>   


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Crystal-main mailing list
Crystal-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/crystal-main
Unsubscribe: mailto:[EMAIL PROTECTED]

Reply via email to