An overview of the demo applications

Demo applications are provided to showcase certain features of Minie. The following demos are found in the "jme3utilities.minie.test" package of the MinieExamples subproject:

  • BalanceDemo demonstrates ragdolls that balance their weight between 2 feet

  • BuoyDemo demonstrates ragdolls with buoyancy

  • ConveyorDemo demonstrates contact-point modifications

  • DropTest (also known as MultiSphereDemo) demonstrates falling rigid bodies with various shapes

  • ForceDemo demonstrates forces, torques, and impulses applied in zero gravity

  • JointDemo demonstrates a crawling robot composed of boxes and 6-DOF joints

  • NewtonsCradle demonstrates dynamic restitution and point-to-point joints

  • Pachinko demonstrates compound collision shapes and 2-D physics

  • PoolDemo demonstrates 3 kinds of dynamic friction

  • RopeDemo demonstrates simulation of ropes using DynamicAnimControl

  • SeJointDemo demonstrates various kinds of single-ended physics joints

  • SplitDemo demonstrates dynamic splitting of rigid bodies

  • SweepDemo demonstrates the use of sweepTest() to detect of sword hits

  • TargetDemo demonstrates shooting balls at various targets

  • TestDac demonstrates DynamicAnimControl applied to various models

  • TestGearJoint demonstrates a gear joint

  • TestSoftBody demonstrates soft-body physics without SoftBodyControl

  • TestSoftBodyControl demonstrates soft-body physics using SoftBodyControl

  • TrackDemo demonstrates inverse kinematics using IKController

  • WatchDemo demonstrates head/eye inverse kinematics for various models

  • Windlass demonstrates rope simulation using rigid bodies

(Not all applications in the package are intended as demos; those not listed above are primarily for testing purposes.)

For some of the demos, video walkthrus are available from YouTube.

User interface

The demos are controlled primarily by keyboard input. Each includes a help node that displays a brief description of each key’s function.

The descriptions below assume a keyboard with the "US" (QWERTY) layout. On keyboards with other layouts, the keys may be labeled differently: refer to the help nodes for localized key labels.

For convenience, the mapping of keys to actions is partly standardized. In most demos:

  • H toggles the help node between minimized and full-sized versions,

  • F5 toggles visibility of the render-statistics overlay,

  • O dumps the physics space to the console,

  • C dumps the camera’s position to the console, and

  • Esc ends the application.

For camera control, all demos use the standard FlyByCamera with setDragToRotate(true). This means you can rotate the camera by dragging with the left mouse button (LMB). Furthermore:

  • W and S dolly the camera forward and back, respectively,

  • A and D dolly the camera left and right, respectively,

  • Q and raise the camera, and

  • Z and lower the camera.

Some of the demos (such as DropTest and TargetDemo) rely entirely on debug visualization to render the physics objects. Others (such as TestDac and PoolDemo) use physics controls. When physics controls are in use, / toggles debug visualization on and off.