Return to Home
About DLS
See what's in the works!
Click here for various programming and media resources.
Links to the world



Humanoid Animation Project


[Introduction]   [Downloads]   [How it works]   [Screenshots]




Introduction

The Humanoid Animation Project is an OpenGL animation demo that demonstrates platform diving manouvers using a roughly constructed humanoid model using the MPEG-4 virutal human model standard. It was completed as
an assignment for an OpenGL subject that I have attended. The demo includes a few basic diving animations, various background effects (e.g. lighting/shading, textures, fog etc.), plus the ability for the user to manipulate the various parts of the humanoid model to make different poses.


Hardware Requirements

The minimum requirement of this program is a 3D video card that has at least 16Mb of memory. Ideally you'll need to have at least 32Mb in your graphics card to get any decent performance (e.g. TNT2, GeForce2 etc). I've managed to get it to work on some 8Mb video cards, but only by resizing the window and disabling certain rendering options (Hint: If the demo is running slowly, try disable some of the rendering options).


Downloads and Installation

To run the demo, all you'll need is this:
Windows executables and datafiles(883Kb)

If you're planning to compile the source, or to compile a Linux executable, you'll need this as well:
Source code (C++) for this demo (27Kb)

To compile the program in Linux, simply type in "make". When the compilation is complete, type "hanim" to run. For Windows users, a precompiled "hanim.exe" is set and ready to go. Visual C++ project files have also been included for compilation in Windows using MSVC.

Controls

When the program is run, you may use a range of keyboard commands (Press F1 to see the full list of commands) to control the environment while right-clicking with your mouse button on the screen will bring up a list of actions and camera viewing options.

Keyboard commands:

  • F2: Switch between flat and smooth shading.
  • F3: Switch between solid and wireframe rendering mode.
  • F4: Turn lighting on/off.
  • F5: Cycle through the humanoids' textures - There are four modes, including no textures, low quality scaled texture, linear scaled textures, and mipmapped textures.
  • F6: Change pool textures - Same as above.
  • F7: Change background textures - Applies to the 'walls' and the ground.
  • F8: Turns fog on/off.
  • F9: Hides the help text display.
  • 'a'/'A', 's'/'S', 'd'/'D': Changes the x, y, z positions of the viewing camera (panning).
  • 'q'/'Q', 'w'/'W', 'e'/'E': Rotates the camera along the x, y and z axis.
  • 'u'/'U', 'i'/'I', 'o'/'O': Changes the x, y, z location of the light source.
  • 'j'/'J': Changes the intensity of the fog (if enabled).
  • 'z'/'Z', 'x'/'X', 'c'/'C': Rotates any selected major joints (from the 'joint control' menu) along the x, y, z axis.
  • 'r'/'R', 't'/'T', 'y'/'Y': Changes the position of the diver humanoid.

Action menu options

  • "Bow": The humanoid will give a bowing gesture.
  • "Single somersault": The humanoid will jump into the pool, performing a somersault in the process.
  • "Single jump": Perform a simple jump into the pool.
  • "Waist twist": Perform a little stretching.
  • "Oooops...": Click here to see a little sporting accident :-)
  • "Man, you suck!": ?
  • "Joint Control": One of the features of this program is the ability to control individual joints of the humanoid model. From this option the user can select certain major joints which can be controlled using the keys "Z", "X" and "C" (controls the x, y and z positions).

Camera view options

  • "Spectator view": The default camera view. Gives a broad overview of the pool and the humanoids.
  • "3rd person view": Allows you to view from behind the diver humanoid.
  • "Top view": A bird-eyes view of the entire scene.


How it works and screenshots

For an in-depth explanation of how it all works, click here.

Click here to see screenshots of the demo in action.



Home   About DLS   Projects   Resources   Links  

All contents on this website are © DLS Productions 2000-2002.