AGX Dynamicsがリリースされました

Major release

This is the last major release that will support Ubuntu 16.04.

New features

  • Linux builds now support EGL rendering. This allows for efficient rendering on clusters with hardware support for EGL.
  • Adding agx::LoggerSubscriber for controlled access of warnings and messages from AGX.
  • Added agxOSG::GuiEventListener which add an intersect method for interacting with the physical scene. See data/python/mouse_intersect_gui_listener.agxPy
  • Added support for creating oriented bounding volumes from triangle mesh models: agxUtil.computeOrientedBox , agxUtil.computeOrientedCylinder . For examples, see python/tutorials/tutorial_create_bounding_volume.agxPy
  • It is now possible to route a wire using agxWire::ShapeContactNode to get robust and stable initial interaction between a wire and a shape.


  • The API regarding convex decomposition has been changed. Previously AGX contained three different implementations of convex decomposition. Two has now been removed and deprecated. You can still access the old algorithms at agxUtil::deprecated::ConvexReaderWriter . Affected classes are: agxCollide::ConvexBuilder (replaced by agxCollide::ConvexFactory ) and agxUtil::ConvexReaderWriter .
  • A new class agxCollide::ConvexFactory allows for more control over the convex decomposition algorithm.
  • The dependency Open Asset Importer (Assimp) is now statically linked without exporting symbols. The agx-assimp*.dll is now longer required for runtime use of AGX Dynamics.
  • The UP_AXIS in Collada files is now handled correctly.
  • Fix for using correct volume for wires and cables for hydrodynamics.
  • agxModel::UrdfReader::read will by default disable collision between linked bodies (option available as an argument.)
  • Major performance improvement of granular simulation in cases where granulars are being made kinematic. See tutorials/agxOSG/tutorial_granularBodies.cpp for an example.
  • Fixed race condition in Hydrodynamics.
  • New algorithm for computing particle radius in the agxTerrain module. The overall radius can be controlled using the agxTerrain::TerrainProperties::setSoilParticleSizeScaling( double ); method.
  • The class agxIO::MeshReaderOBJ is removed. Use agxIO::MeshReader instead.
  • Fix for potential crasching during video (mp4) generation (F10) in agxViewer.
  • Added indexing of EulerAngles. Also, adding EulerAngles/Matrix3x3 support.
  • Stability fixes for agxTerrain::TerrainPager
  • The GLEW library is no longer a dependency of AGX Dynamics.
  • Fixed a thread affinity problem in OSG leading to that each instance of a agxOSG::ExampleApplication used one hard coded core. This resulted in poor performance when multiple instances of an agxOSG::ExampleApplication was used on one machine.

New examples/tutorials

  • data/python/winch_brake_demo.agxPy illustrates the use of a brake on a wire winch.
  • tutorials/agxOSG/tutorial_convex.cpp demonstrates the use of convex meshes.
  • tutorials/agxOSG/tutorial_granularBodies.cpp to illustrate the use of the granular API in C++.
  • data/python/beam.agxPy illustrates a simple deformable beam model using LockJoints and rigid bodies.
  • data/python/bottlesdOnConveyor.agxPy demonstrates a conveyor belt with a large number of bottles being transported.

Detailed changes - See changelog