The Area http://area.autodesk.com/forum/ The Area en Copyright 2012 2012-02-09T03:57:20+01:00 kFBPT_object http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/kfbptobject/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/kfbptobject/page-last/#When:10:59:44Z Hi, i wouls like to know how to get and set data or value from an kFBPT_object property i add this property type to an custom FBConstraint using c++ ORSDK exemple: PropertyCreate("Constrained Object", kFBPT_object, ANIMATIONNODE_TYPE_OBJECT, false, false ); or also like this, with an predifine member: .h HFBProperty mConstrainedProperty; .cpp mConstrainedProperty = PropertyCreate("Constrained Object", kFBPT_object, ANIMATIONNODE_TYPE_OBJECT, false, false ); i am nor able to get and set data or valur from this property. anny help ? thx. 2012-02-07T10:59:44+01:00 adding callback notify for audio/video clip end http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/adding-callback-notify-for-audiovideo-clip-end/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/adding-callback-notify-for-audiovideo-clip-end/page-last/#When:03:29:08Z so fairly new to ORSDK having migrated from python. I have a few custom relation constraint nodes that deal with the triggering of audio and image sequences from a custom device. I basically have an input anim node (bool) for each clip - when triggered in the RT eval function the clips are passed to a queue and played. What I need is the ability to add a notify that the clip has finished playing so I can then pop it from the queue and stop the processing. Is this possible? Note, this is all happening independent of the timeline - there is no playback. Video is toggled with the free running attribute and audio from the FBAudioClip->Play() call. 2012-02-07T03:29:08+01:00 When does FbxRetrieved is called? http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/when-does-fbxretrieved-is-called/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/when-does-fbxretrieved-is-called/page-last/#When:06:30:24Z Hi! I've got a problem to read the additional data I write in the FBX with my plugin. If I open MB, open my plugin tool, close it and open an FBX, the additional data [b]are[/b] retrieved. But if I open MB and open directly an FBX, the additional data [b]aren't[/b] retrieved. As if the tool should be instantiated at least once to be activated. IMHO, it's a bug. Am I right? Is there a workaround to this problem? I'm on MotionBuilder 2011 64bits, Windows 7. 2012-01-11T06:30:24+01:00 Save selected http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/save-selected/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/save-selected/page-last/#When:07:42:57Z Hello! I know there is [url=http://area.autodesk.com/forum/autodesk-motionbuilder/python/save-selection/]already a post with the same title[/url] in the python forum, but 1. I'm not using python and 2. the solution given there doesn't work anymore. I made a plugin that separates the opened FBX into several FBX files. To do this, I used to do FbFbxManager::Selected = true with the previous SDK so that it saved only the selected objects. With the new SDK I modified my code so that I now use FbApplication::FileSave(). In order to save only the selection, I added a FBFbxOptions and set the member SaveSelectedModelsOnly to true and both ShowFileDialog and ShowOptionsDialog to false. But it just doesn't work, I always have the FileDialog popup!! What am I doing wrong?? Here is an example of what I'm doing: [code] // Select object. FBSelectObjectsByNamespace("TKT", true); // Set up save options. FBFbxOptions fbxOpts(false); fbxOpts.SaveSelectedModelsOnly = true; fbxOpts.ShowFileDialog = false; fbxOpts.ShowOptionsDialog = false; // Save. bSuccess = m_Application.FileSave(_filename, &fbxOpts); [/code] BTW I'm using Mobu 2011 (64bits) 2012-01-09T07:42:57+01:00 DeviceIONotify interrupted by a change of Parent http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/deviceionotify-interrupted-by-a-change-of-parent/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/deviceionotify-interrupted-by-a-change-of-parent/page-last/#When:19:18:12Z Running this piece of code during the DeviceIONotify event seems to interrupt the code evaluation and return to Mobu as if the process was done and the DeviceIONotify is never called again for that device. [code] void MyDevice::DeviceIONotify( kDeviceIOs pAction,FBDeviceNotifyInfo &pDeviceNotifyInfo) { HFBModel testA = new FBModel("TestA"); HFBModel testB = new FBModel("TestB"); testB->Parent = testA; //this line interrupt the code evaluation } [/code] Running these 3 lines sees to work well in the Start() process of the same device. How can I run something like this (I need to create a hierarchy of object parented to each other) based on what happens during the DeviceIONotify evaluation? Thanks 2011-12-30T19:18:12+01:00 Exposing functions to the Python http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/exposing-functions-to-the-python/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/exposing-functions-to-the-python/page-last/#When:17:12:06Z Hi, is possible to expose own C++ functions to the Python scripting?? (like 3DS MAX SDK). Thanks 2011-11-23T17:12:06+01:00 extending the API and custom objects http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/extending-the-api-and-custom-objects/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/extending-the-api-and-custom-objects/page-last/#When:20:38:43Z I have a couple of questions regarding plugin development. I have been scripting in mobu for some time and am pretty comfortable with the API. I have just recently started looking into plugin development. I am also new to C++ so I can appreciate it is going to be a reasonably steep learning curve. I have been going through the samples that are provided and have managed to build them as well create my own variations here and there. The things that I want to do however are not covered in the samples so I thought I would pose the questions here. [b]Extending the API[/b] Is it possible to extend the API in such as way to provide additional commands to the python interface? The example I am thinking of is a command for finding objects with the particular attribute. Now of course this is possible in python but it is slow, particularly with large scenes. I am hoping that I can write the command in C++ and then call it from python when required. Something similar to FBFindObjectsByName, perhaps FBFindObjectsByAttribute. [b]Custom objects[/b] Is it possible to create a custom object type? Something that distinguishes them from all other objects in the scene. There is an example that creates a custom object but is still an FBModel as far of the system is concerned. I would like to make a custom model type, like FBHandle, FBNote etc. I would like to have an FBMyCustomModel for example. Thanks in advance for any info you can provide. Cheers, Ollie 2011-11-21T20:38:43+01:00 Anyone gotten Qt widgets to work in plugins? http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/anyone-gotten-qt-widgets-to-work-in-plugins/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/anyone-gotten-qt-widgets-to-work-in-plugins/page-last/#When:21:54:03Z In the ORSDK for MB 2011 there is a test plugin for integrating Qt widgets into your UI. I've followed the instructions and successfully compiled the plugin. But it crashes MB 2011 when attempting to open the plugin from the Open Reality menu. Anyone had any success with this? 2011-11-12T21:54:03+01:00 Motionbuilders Evaluation of code? http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/motionbuilders-evaluation-of-code/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/motionbuilders-evaluation-of-code/page-last/#When:09:21:48Z I'd like to get some insight in why these sort of things happens: [b]Pseudocode[/b] [code] 1. FBGotToFrame(10); 2. int xValue = character.GetPositionX(); [/code] Switching to a frame on the timeline(row 1) and ask for a certain value(row 2). Motionbuilder will be able to evaluate row 2 before row 1 has finished executing, giving me the wrong value. I've found alot of situations where this happen, but the question is why does this happen? Is it due to Motionbuilder being very "thread-heavy" and this i caused because the two rows are evaluated in different threads? Most of these i've been able to get passed by going another way where in don't have to ask motionbuilder to do something for me... So no need for answers how i solved this specific problem. 2011-10-01T09:21:48+01:00 Key frame a camera object per frame while playing. http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/key-frame-a-camera-object-per-frame-while-playing/page-last/ http://area.autodesk.com/forum/autodesk-motionbuilder/open-reality/key-frame-a-camera-object-per-frame-while-playing/page-last/#When:01:45:52Z I'm just getting into programming for Motion Builder, and I don't have a grasp of how to set up some sort of event handling or triggers for when the playercontroller has reached a frame. What I'm trying to do: I have data feeding in from a live device. The data provides movement data from a mocap stage for a camera (basically move a camera like object around live). I have a motion builder camera thats parented to the live device object and it accepts the properties (basically it's transforms and zoom). I'd like to be able to key this camera's key group on each frame (basically simulating keying data while "live" ). I can't seem to find a way to throw an event per frame via FBSystem. I'm starting to think I'm going to have to write a c++ plugin that hooks directly into the FBEvaluation, but I'm not sure yet. Any ideas? --Jordan 2011-09-29T01:45:52+01:00