What is bvhacker?
bvhacker is a personal project I started in November 2006 with the aim of making a bvh file conversion tool for Second Life. Since then it has evolved into a quick loading tool ideally suited for the viewing, analysing, converting, fault finding and preparing of bvh files. bvhacker is not for creating animations from scratch. bvhacker is for working on existing animation data. bvhacker is an animation tool designed by animators for animators.
bvhacker is used extensively by commercial enterprises, educational establishments and hobbyists.
Use bvhacker to simplify your animation production pipeline!
Discuss bvhacker on google groups
Report bugs, submit new feature requests or ask for help. The bvhacker group is the place to discuss all and any aspects of bvhacker. Click the image to the left to visit the group's page.
Overview of the bvhacker interface
This page gives a guide to all the controls on the bvhacker interface. Click the image to the left to view.
bvhacker menu commands
This page lists all the menu commands giving a brief description of each. Click the image to the left to view.
Tutorial 1: Converting bvh files for Second Life
A short tutorial showing how to convert one of Animazoo's bvh files for Second Life compatibility. Click the image to the left to view.
Tutorial 2: Preparing for upload to Second Life
A short tutorial describing how to best prepare your bvh file for upload to Second Life. Click the image to the left to view.
How to make bvhacker the default program for opening bvh files
As of version 1.6.1.0, it is possible to open bvh files in bvhacker by double clicking the actual bvh file. This page shows you how to quickly and easily associate bvh files with bvhacker.
Download bvhacker
This page offers the latest version of bvhacker for download, complete with release notes. Click the image to the left to view.
Known issues and further work
This page holds a list of known bugs in the current version of bvhacker and a list of possible future enhancements. Click the image to the left to view.
Free bvh files
Animazoo provide an extensive range of royalty free bvh files for download
here. The bvhacker tutorials use Animazoo files. Click the image to the left to visit Animaoo's free bvh files page.
Donate $10
If you use bvhacker regularly please donate $10 towards motivating me todo future development. Click the image to go to the payment page.
`
Things you can do with bvhacker
- Convert many types of bvh files to be Second Life compatible
- Add, remove and rename joints
- Make adjustments to any motion channels across all frames at once
- Make adjustments to the joint offsets (i.e. skeletal structure)
- Zero out any motion channel (e.g. to keep the figure from 'wandering off' from the origin)
- Trim off frames from the front and back of the file (to create a loop-able animation)
- 'Knit' together the start and end frames for smoother looping
- Set a T-pose for the first frame (for Second Life compatibility)
- Adjust the frame time to speed up or slow down the animation
- See graphically how the joint structure and motion data work together
- Quickly and easily see which axis the arms are aligned on
- Open and view many other bvh file variants
- Get a detailed report on your animation listing any common errors or problems
Things you can't do with bvhacker
Create a new animation using key framing. For that, I'd recommend:
- Animeeple (free)
- QAvimator (free)
- Daz3D (entry level)
- Poser (entry level)
- Blender (free, open source, top end)
- MotionBuider / Maya / 3DSMax (top end)
Background
I started bvhacker for a number of reasons.
The initial idea came after I found I couldn't import a bvh file from Animazoo into Second Life.
Not to be so easily dissuaded, I opened up the bvh file in a text editor to see what was there.
Since the format was human readable, and didn't appear too convoluted,
I decided that it would be an interesting project to further investigate exactly how the file could be adapted to be compatible with Second Life.
In addition, I had wanted to 'get my feet wet' with some OpenGL / STL / 3D tools programming for some time, and so got started.
The greatest challenges were:
- Converting the arms alignment axis. This was really hard!
- Compounding all the offsets and rotations for the joints during drawing
- Keeping track of joint hierarchy during changes in skeletal structure
Since writing the program, I've spent a lot of time using bvhacker to help make Second Life animations.
New functionality has been added as required, resulting in an animation tool made by animators, for animators.
If you have any suggestions for new features, please post them in the
bvhacker discussion group. Have fun!


