Been working on physics-based animation this weekend, but here is current progress with the sketch modeling. I turned off affecting translation, and scaling is now relative to the original size of the imported tagged mesh. This way, the size of the sketch dimensions does not affect the model, so it will still be appropriate for other assets created in the same world space.
I think I need to re-tag the skull area so it doesn't contain the neck, but I like how things are looking, especially with the hips. However, I am concerned with the rotation, especially of the limbs. It should be at the pivot point of the shoulder, not the middle of the arm.
Unless I can think of a way to make the relationship two-way, I think - despite having gone through major trouble of connecting lattices to the FigureDataNode - I should break the connections. This way, the model can be edited manually by lattice.
Because I almost lost the paper I wrote these ideas down on, I am now going to make an two impossibly long to-do lists, sorted from most to least feasible. First, major things which add to overall concept of the project:
- Add a Maya command to attach wire deformers, based on projects from the lattice boxes.
- Add a Maya command to rig and bind a skeleton to the mesh, based on the center points of the top and bottom faces of each lattice.
- Write the light behavior equations for the tissue layer shader. (I have to do this anyway.)
- Attach tissue layer shader to model and write a MEL script GUI to allow editing of pigments and layers.
Now minor things, which aren't necessary to the project concept, but help refine current ideas it poses:
- Find how to make the FigureDataNode-Lattice connection two-ways. This may not be possible, in which case, the connection will simply be broken.
- Divide figure into more parts to accommodate the Thalmann measurements: neck, waist, lower arms, lower legs, hands, and feet. However, I am not sure if they should be specifically tagged or not.
- Re-implement properly scaled translation and rotation of lattices, around the correct pivot point.
- Re-implement translation and rotation based on the slope of the drawn curve at certain points.
- Drawing interface should erase curves. At the moment, it just paints them over white.
- Drawing interface should use an ink drying metaphor, where multiple nearby strokes are averaged into one.
- Drawing interface should not assume strokes are drawn in a particular order or direction.
- Show and hide lattices and wires on different layers.
- Accommodate multiple figures and selection.
- Clean up C++ code and node attributes, so it's not calling MEL commands.
However, given my time limit and need for proof of concept, I'm solely going to focus on the wire system for now.