Search Unity

Assets APE - DeepMotion Avatar Physics Engine for Robust Joints and Powerful Motors

Discussion in 'Works In Progress - Archive' started by DeepMotionPhysics, Jul 31, 2014.

  1. dansav

    dansav

    Joined:
    Sep 22, 2005
    Posts:
    510
    Fist of Physics is the coolest name.
    Any estimate on cost on completion date for the unity version of APE?
    Will it work with WebGL?
    I would purchase it today if were available!
     
    Last edited: Feb 17, 2017
  2. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Very, very soon, thanks for asking! We are just about done with the product itself, now just working on documentation! Stay tuned...
     
    roryo likes this.
  3. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Wall-4, the new robot warrior in Fist of Physics, is coming soon in a FREE update! Now available on Steam for HTC Vive and Oculus Rift.
     
  4. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Is anybody going to be at GDC on this thread? We will be at booth 2405... drop by and say hello! We will be handing out beta codes for APEngine (limit 300), and showing off an early build of our new game, Dog Park!
     
  5. TommiH

    TommiH

    Joined:
    Jan 14, 2008
    Posts:
    253
    Hello ArticulatedPhysics,

    I understand that you're busy with the release, but I'd appreciate some insight into my questions above.
     
  6. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    @TommiH Thanks, welcome to subscribe on deepmotion.com/avatar and request for a close beta. Regarding the questions:

    1) Yes,making ragdoll solid and stand up was the very reason we created APE for ourselves for physics simulated character in games. At the time when we started 2 years ago there was no good option available to achieve our goals otherwise.

    2) There is no general support for runtime interaction between PhysX and APE. Except that if you make either PhysX rigid body "kinematic" or APE rigid body "kinematic" then they can do one direction coupling: basically the kinematic body will behave as infinite mass/inertia to push away the non-kinematic bodies. However most PhysX entities have one-to-one mapped APE entities for easy porting it's not hard in general to port a C# physics package from PhysX to APE if source code of the asset is available. For example we experimented porting the "Fracturing & Destruction" tool on the Asset Store from PhysX to APE. It took us a few hours to do it and it worked beautifully.

    BTW, for any physics based tool/assets authors if you are interested in porting your tools to support APE we would love to provide you a license to APE free of charge and the technical support you need.

    3) We are working hard to disallow "illegal situation" at the modelling time. However it's very hard to detect all illegal situations and you still need use a good design to ensure the mechanism function and behave as expected. We would love to offer help needed when you are stuck or something.

    Regarding dynamic creation and destruction of joints it is supported. The Fist of Physics video we posted on Feb 11 actually exercised our "destructible character" support in APE that allows you to de-limber the robots in run-time.

     
    Last edited: Dec 7, 2017
  7. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243


    Check out what Fogin has to say about our new Fist of Physics robot, Wall-4!
     
  8. DepreCats

    DepreCats

    Joined:
    Jun 3, 2016
    Posts:
    39
    Do joints allow variable resistance, to limit the range of motion for limbs not completely linearly? Legs move much easier forward and backward than other directions, or would that be achieved by applying torque in the opposite direction depending on its angle?
     
  9. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Jovssen: We recognize that your goal is to prevent joints from bending too much... an automated way of doing this. It's a great idea to have the APE solver handle this, and we will keep this in mind as we continue its development.
     
  10. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    7,526
    @ArticulatedPhysics

    The website seems down. Any update on this as an asset? Looking for better realtime fidelity physics engine.
     
  11. GP-Simception

    GP-Simception

    Joined:
    Oct 17, 2016
    Posts:
    3
    Any news concerning APE as a UNITY in the asset store?
    another question: Is there any roadmap concerning new features development ?
     
  12. GP-Simception

    GP-Simception

    Joined:
    Oct 17, 2016
    Posts:
    3
    yep. It would be awesome to have some robust joints for articulated parts.
     
  13. GP-Simception

    GP-Simception

    Joined:
    Oct 17, 2016
    Posts:
    3
    Is the company dead?
     
  14. XaneFeather

    XaneFeather

    Joined:
    Sep 4, 2013
    Posts:
    97
    I too am wondering about any updates as this looks extremely promising.
     
  15. witcher101

    witcher101

    Joined:
    Sep 9, 2015
    Posts:
    516
    Is this dead??
     
  16. petersvp

    petersvp

    Joined:
    Dec 20, 2013
    Posts:
    63
    What happens? He just disappeared?
     
  17. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Sorry for the lack of update in the last few months. APE is not dead, on the opposite it grows stronger now and it will be released :) To keep a long story short APE's functionality was completed with a few new exciting features added a few months ago. However we are in parallel working on an advanced physics based character animation engine built on top of APE. Many of our potential APE users expressed interest in the physics based character engine too. So we are planning for something bigger. Please stay tuned on us. If you like APE so far you won't be disappointed for what we are going to announce.

    In the meanwhile our engineer Tom created a new Tank with APE just now :



    @ape Beta Testers: What did you create with APE ? We would love to hear your feedback.
     
    Last edited: Nov 9, 2017
  18. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Last edited: Aug 31, 2017
  19. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Joint Reaction Force Sensors Demo

    Serious robotic simulation requires the ability of the physics engine to report accurate joint reaction force when the joint is enduring big stressful force to pull it apart. APE not only allows you to configure the maximum endurable force of a joint before it break but also offers an accurate read-only sensor for the reaction force at the joint. You can probably build a "physically accurate weight measure simulator" with this feature :)

    https://drive.google.com/file/d/0BwboCvm6PSvBdXhvc3NPdXp5Z0U/view?usp=sharing
     
  20. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    High Precision Positional Motor

    If you've attempted to build a multi segment robotic arm to track a challenging pose with the default physics engine you might have experienced difficulty in : 1) joint falls apart 2) slow response 3) hard to reach target position. The new high precision positional tracking Motor supported by APE overcomes these limitations. The following demo shows a 6-segment robotic arm tracking random pose with the high precision motors:

    https://drive.google.com/file/d/0BwboCvm6PSvBTDMzWEh1d25IeU0/view?usp=sharing
     
  21. witcher101

    witcher101

    Joined:
    Sep 9, 2015
    Posts:
    516
    Is this coming to assest store anytme soon??
     
  22. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Last edited: Nov 9, 2017
  23. dwaldrum

    dwaldrum

    Joined:
    Jun 20, 2015
    Posts:
    48
    Any chance of a beta release or anything to be able to get ape sooner? Our game uses joints heavily for vehicles, cranes, etc and the built in physics have been nothing but disappointing. If this can solve our issues its an instabuy for us. Unfortunately as we're in development waiting too long means continuing to put effort into something else and right now is a perfect time for us to switch out our physics.
     
  24. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Thank you for your interest. We will look into resurrecting the APE Beta program soon.
     
  25. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    You can sign up APE Beta here. We have only limited spots for the Beta program:

    http://www.deepmotion.com/ape-beta.html
     
  26. dwaldrum

    dwaldrum

    Joined:
    Jun 20, 2015
    Posts:
    48
  27. FuzzyShan

    FuzzyShan

    Joined:
    Jul 30, 2012
    Posts:
    182
    would it support deterministic solution for ragdoll simulation?
     
  28. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Short answer is Yes. Long answer is that depending on your needs determinstic solution need a lot of special care to be given to the APE configuration and the surrounding software's configurations to work out. As one example we actually used APE in a reinforcement learning environment to teach digital characters how to walk and balance by themselves based on retrying a policy thousands of times with many many ragdoll incidents. Without strong deterministic support and the ability to roll back to a determinstic starting state after a ragdoll such training will be impossible.

     
  29. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Thank you for the signing. Expect the follow-up message for receiving the refreshed Beta package soon.

    ---
    Avatar Physics Team
    DeepMotion Inc
    http://www.deepmotion.com/ape-beta.html
     
  30. FuzzyShan

    FuzzyShan

    Joined:
    Jul 30, 2012
    Posts:
    182
    Um.. is this managed C# code... or it's actually C++ code, do you guys only do deterministic solution under one platform?
     
  31. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    The core engine was C++ code brought in via native plug-in. We will support Unity, Unreal and all the platforms they support eventually.

    Avatar Physics Team
    DeepMotion Inc
    http://www.deepmotion.com/ape-beta.html
     
  32. FuzzyShan

    FuzzyShan

    Joined:
    Jul 30, 2012
    Posts:
    182
    No I meant is the deterministic solution over iPhone and android not on same machine.
     
  33. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
  34. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Avatar Physics Engine does offer a "Disable Randomness" option in the world configuration settings as shown in the attached screenshot to ensure that the kernel solvers run in 100% deterministic fashion by not employing any warm start or randomization conditioning for performance optimizations. Combining this deterministic mode and carefully crafted physics world state checkpoint and rollback APIs we were able to run our own physics simulation based machine learning projects successfully.

    Our ML framework requires us to checkpoint, branch and rollback physics simulations thousands of times per minute. Even a tiny bit of indeterminism fails the training process. We haven't tested determinism across platforms yet and you are welcomed to give it try and report to us any problems if you are interested.
     

    Attached Files:

  35. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Great news! Our advanced physics based character engine, DeepMotion Avatar, is close to Alpha launch !
     
  36. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    DeepMotion Avatar close Alpha is open for sign-up now ! APE will be included in the Alpha package as one of its core component. Welcome to join us in the testing and share with us your feedback !!

    http://www.deepmotion.com/avatar

    Cheers
    DeepMotion Physics
    www.deepmotion.com
     
  37. raeldor

    raeldor

    Joined:
    Jul 8, 2013
    Posts:
    55
    Reading through the history of this asset and it seems to have changed from Advanced Physics Engine to Avatar Physics Engine. Is this still a general purpose physics engine as shown in your monster truck demo? Very interested for a robot simulation project.

    Also, is it possible to get pressure information for joints or points on models? For example, if I wanted to find out the pressure at various points on avatars feet, would this be possible? Thanks.
     
  38. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Yes it still includes a general purpose physics engine as shown in the monster truck demo. It is now rolled into DeepMotion Avatar as a key component to simulate high fidelity physics based characters including humanoid, creatures and machines. Welcome to sign up the closed Alpha of DeepMotion Avatar to try it out:

    http://www.deepmotion.com/avatar

    APE supports joint reaction force sensor as shown in the following video. If you build your avatar's feet with a few joints such as ankle joint and toe joints you will be able to read out the stress / joint reaction torques endured at those joints dynamically when the character is performing various locomotion activities.



    Cheers
    DeepMotion Physics
    www.deepmotion.com
     
    Last edited: Nov 28, 2017
    raeldor likes this.
  39. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    We discussed how to implement "stretchy" ropes with APE recently. Here are some thoughts:

    There are two ways to create ropes with APE:

    1) Mechanical Way using tntLinks

    Model it as an articulation of links and these links will be joined by rigid joints. You can configure the joint types as ball, universal, hinge, slider or a combination of all of them depending on what you need. This is the way to create high fidelity chains and ropes that have precise collision and physics properties etc. You can reference the "Crane" demo in the APE package for how this is done. Such ropes will not usually "stretch". Although you can probably fake the "stretch" part using prismatic joint with the per DOF spring configured. Check out the following video that demonstrates how to configure a built-in spring on the DOF of a Slider Joint to simulate a piston kind of suspension. Maybe you can simulate the "stretchiness" effect with creative use of such mechanism. Still this is a very heavy way to simulate "stretchy" rope and it may need a lot of tuning to make it stable and look good.



    2) Spring Force Way using tntRopeJoint

    We also implemented a very cheap and collision-less spring force element to simulate simple rope effects. It's not as stable and as rigid as the mechanical way of modeling ropes in 1), however it's very "stretchy" and very fast and can be used in scenarios where you don't need rope collision. As shown in the following video you can pretty much create such ropes with a few mouse clicks by throwing in the tntRopeJoint and a Line Render to one of the two bodies or links you want to join together.



    Cheers
    DeepMotion Physics
    www.deepmotion.com/avatar
     
    Last edited: Nov 28, 2017
  40. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Here is a quick test of tntRopeJoint (a force element supported by DeepMotion Avatar Physics that can be used to connect two bodies with a springy rope like force pair). It is collision-less but very cheap to simulate. The dog simulated by DeepMotion Avatar is maintaining balance without any helper / external forces.



    Cheers
    DeepMotion Physcs
    www.deepmotion.com
     
  41. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Build a physically simulated scale with DeepMotion Physics Engine's joint reaction force sensors. Here 4 slider joints are used to build the 4 legs of the scale. Each slider joint has the a built-in spring configured to raise the scale's platform clear from ground. As we can see the real-time force sensor feedback at the 4 slider joints are almost identical as expected when the scale stabilizes. A simulation frequency of 200Hz was used in the test.



    Cheers
    DeepMotion Physcs
    www.deepmotion.com
     
    wetcircuit likes this.
  42. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Build a physically simulated scale with DeepMotion Physics Engine's joint reaction force sensors. Here 4 slider joints are used to build the 4 legs of the scale. Each slider joint has the a built-in spring configured to raise the scale's platform clear from ground. As we can see the real-time force sensor feedback at the 4 slider joints are almost identical as expected when the scale stabilizes. A simulation frequency of 200Hz was used in the test.



    Cheers
    DeepMotion Physcs
    www.deepmotion.com
     
  43. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    As Avatar Physics Engine users, many of you are aware of our love for interactive experiences and all things physics. And, as a continuation of this passion, we are proud to invite you to participate in the closed alpha of DeepMotion Avatar!

    DeepMotion Avatar is a physics-based character engine designed to replace traditional keyframe animations with lifelike simulations. Reduce the cost of producing complex animations using our self-balancing, autonomous character rigs, and soft body simulation. Optimize real-world machinery by running articulated physics-based simulations and take VR to the next level using 3 point tracked, full body avatars.

    Participate the Alpha here!
     
  44. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243


    FD (Forward dynamics) allows you apply torques on the parent links and the result motion is propagated to the children. Pose Controller can leverage FD to track a prerecorded animation sequence (e.g. Mocap sequence) with physical torques integrated at the joints.

    On the opposite ID (Inverse dynamics) allows you to specify a target transform for the end effector to track and it computes the torques needed at the upstream joints to motorize the end effector to track the target. Pose Controller can use ID to drive the end effectors of a mechanism to reach the desired target locations or orientations.

    The new Pose Controller of DeepMotion Avatar allows the mixture of multiple FD chains and ID chains in the same tree structured mechanism. This demo video shows a 6-link robotic arm (including the base) where the left most 2 child links are driven by FK and the right most 3 child links are driven by IK. The IK chain is configured with an IK target configured on the tip of a separate pendulum mechanism. The FK manipulator UI was implemented with a simple script attached on the two FK links that sends the local rotations of the two dummy GameObjects configured in the parent links of the FK links to the PoseController in each frame. Thus we can drive the FK chain by rotating the two dummy GameObjects in Unity Editor whose local rotations are sent to PoseController.

    The video shows that the Avatar Pose Controller are tracking both FK and IK goals simultaneously and satisfying both of them to the limits of the underlying physics. Since the motion of the arm is physically simulated the animated arm can seamlessly interact with other dynamics mechanisms as well such as the pendulum in the video realistically.

    The simulation was run at 60Hz.

    Participate the Alpha here!
     
  45. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Here is a crawler with claws built from nothing more than APE's robust joints and strong motors...



    Cheers
    DeepMotion Physcs
    www.deepmotion.com
     
  46. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,490
    Hi there, where can we get your asset from? is it available yet?
     
  47. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    It is in closed Alpha now. You can sign up for receiving the Alpha package at: deepmotion.com/avatar
     
  48. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Some users asked about the following tank model we built with APE : " How does the drive wheel pull the tred around and how does the tred stay on the drive wheels ?"



    In this case, there is not a singular drive wheel for each tread. Instead of a drive wheel and free-spinning road wheels, all of the wheels are drive wheels for the tread. They move the track around via friction (all of the drive wheels are given rubber as the physics material (Dynamic & Static Friction = 1).

    To keep the tracks on the tank, one of the treads is connected by two invisible longer hinge links to the base (center of the tank). Since hinge links can't slide side-to-side, the connection to the tntBase on the center of the tank prevents the treads from sliding around.

    upload_2017-12-14_11-54-40.png

    Pardon the messy annotations, but this puts blocks representing the external hinge links (you can see the two pivot points as well). The top pivot point is the pivot point for the external link with the tntBase (tank body) as the parent).

    The external hinge links are not powered and simply act as a part of a 2-bar linkage that follows the tread piece around as it is moved by the drive wheels, while locking it from moving side to side.

    This is just one of the dozens ways you can build a physically simulated tank with APE. What's cool here is that NO SCRIPTING or FANCY RAYCASTING MATH is needed for such modeling, all you need is just Robust Joint and Strong Motors of APE plus your creativity to build very interesting machines.

    If you are testing our Alpha build you can import the Unity package of Avatar Alpha and examine the "tank v blocks" scene to see how it's constructed.

    The tank among many other exciting examples are included in the Alpha package that can be signed up here: deepmotion.com/avatar
     
    Last edited: Dec 14, 2017
    tapawafo likes this.
  49. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    A physically simulated dragon without key-frame or external force applied to the torso. The aerodynamics was simplified as the simulation of streams of air bubbles propelled by the dragon wings. Check out 1'46" - 2' for the illustration of how the air bubble dynamics was simulated and how the the simulated air pushed boxes around on the ground.



    Cheers
    DeepMotion Physcs
    http://deepmotion.com/avatar
     
    Last edited: Feb 8, 2018
    tapawafo likes this.
  50. DeepMotionPhysics

    DeepMotionPhysics

    Joined:
    Jul 31, 2014
    Posts:
    243
    Last edited: Feb 8, 2018
    wetcircuit and tapawafo like this.