python bullet solver

  • On 13/04/2013 at 11:23, xxxxxxxx wrote:


    is it somehow possible to get hold of the bullet solver data in python ? i need collision normals
    and velocity vectors and would prefer not to carry arround some clunky xpresso node solution.
    i looked into the MoGraphDynamics SceneHook, but it does only contain the world settings. i 
    also looked into the cpp documentation, but i could not find any information there.

    i guess this is mission impossible ?

  • On 16/04/2013 at 13:24, xxxxxxxx wrote:

    any information would be cool, even that it is impossible atm.

    and i have got another question : is there known any downside on hosting a pointtag within
    a pointtag ? or generally a basetag within a basetag ? something like that :

    + myTagGeListNodeA
     | ---myTagGeListNodeB
     | ---myTagGeListNodeC

    it would be a perfect caching solution for a current problem for me, however i am not sure
    if i will loose data with such gelistnode structures under certain conditions, as c4d does not
    expect tags to have children ?

  • On 17/04/2013 at 02:43, xxxxxxxx wrote:

    Hi Ferdinand,

    Have you tried to get the MoGraph data (c4d.modules.mograph.MoData) with c4d.modules.mograph.GeGetMoData()?

  • On 17/04/2013 at 03:51, xxxxxxxx wrote:

    Originally posted by xxxxxxxx

    Hi Ferdinand,
    Have you tried to get the MoGraph data (c4d.modules.mograph.MoData) with c4d.modules.mograph.GeGetMoData()?


    thanks for your reply, but i do not really understand your suggestion. first of all
    GeGetMoData()returns only for MoGraph cloner objects a MoData instance. but
    even if i do host the bullet simulation within a cloner, modata does only contain
    matrix data regarding the mograph particle state for that cloner. i guess i could
    calculate the velocity out of the current and previous state of the matrix data,
    but the previous state  field is not working properly for me (seems broken like 
    the size maxtrix). i could do that also just with the baseobject matrix, but that 
    will leave me with the missing contact points / collision normals.

    am i overlooking something important here ? it would be nice if someone could 
    point me into the right direction, if the bullet data is burried somewhere in the 

  • On 18/04/2013 at 03:57, xxxxxxxx wrote:

    Hi Ferdinand,

    I got more information on this from the developers.
    There are no velocity vectors or collision normals stored in the MoData; MoGraph particles have no velocity, anything that happens to them is inherited.
    It's possible though that it could be calculated from the matrices and storing the previous frames data.

  • On 18/04/2013 at 06:13, xxxxxxxx wrote:


    thanks again for your reply. it would be cool if you would consider exposing some of
    the bullet solver data on a code level in future sdk releases. if i am not mistaken, this 
    is not just a problem in python, but also a cpp problem (at least i could not find a bullet 
    solver interface class in the cpp sdk).

    while you can relatively easily calculate the velocity vectors on your own, you cannot do 
    that for collision normals, force vectors and so on. i am not asking for exposing/wrapping 
    the whole bullet class system, just for exposing the bullet data in the current scene. as 
    there are the xpresso nodes doing exactly that it cannot be too hard ;)

Log in to reply