Tuesday, April 27, 2010

Improved KF data

Goal: Get better test data (including a deforming head mesh as well as corresponding KF data)

I've written a Maya plugin that generates a KF file based on the keyed position and orientation of a selected object in the Maya scene. Now I have the ability to create all kinds of "low dynamic movements", such as this head shake. [Note that the key hair properties still need adjusting; I should definitely pump up their mass]

Alas, figuring out how to deform the mesh is probably going to remain unresolved. This was supposed to be where Cat's pipeline merged with mine (i.e., she would give me an OpenMesh data structure with deforming vertices). Creating a deforming mesh on my own would require a good chunk of work...or would it? I could fake a deformed mesh, I suppose. Since the control node stores position and orientation data for the rigid collider, I could steal that data, make some transformation matrices and iteratively transform all the vertices in the loaded head accordingly. Obviously, this isn't the same as creating some kind of DeformedMesh class structure, but it would definitely help illustrate the functionality of my project. I'll try this out and see how it goes.

Our presentations are on Friday. Here's what I'm going to try to accomplish by then:
  • predecimation/prescaling of the original input head OBJ
  • implement a threshold to prevent interpolation between key hairs that are too far away from each other (like the ones on either side of the nose)
  • fix memory leaks
  • a basic hair shader (depending on whether or not I can pull through with CIS660...)
  • animated original head ("pseudo deformed" by the method described above)
  • enable CUDA
Based on Bullet's current limitations, that last one probably isn't possible. I was informed by one of the lead Bullet developers that CUDA robustness is going to be a feature of the next release version. Unfortunately, I need CUDA support now, not later. Blarg.

No comments:

Post a Comment