-
Notifications
You must be signed in to change notification settings - Fork 5
/
ToDo.txt
52 lines (40 loc) · 2.23 KB
/
ToDo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
INVERSE KINEMATICS WITH DUAL-QUATERNION
WhWeWaToDo:
1st: Move a simple arm model, with two bones, one of them anchored.
- Create the GIT repository. (Check)
- Program the dual-quaternion (REF: Check Andy's class). (Check)
- Program the bones-joints-arm structure -as a skeleton- (classes and so). (Partially checked)
- Do it with a sphere+cylinder "bone".
- Position of the arm (joint) - sphere.
- Orientation of the arm (bone) - cylinder.orientation.
>>>>IMPORTANT<<<< Rethink about the cylinder mesh. How do we want to represent the bone? We need a different mesh per bone? Or a dynamic mesh of a cylinder?
- Length of the arm (bone) -cylinder.length. (position of the next arm sphere)
- Program an 'interface' class for the skeletons(arms...)
- "Build" the arm (three bones). (Checked)
- Solve how to move the arm.
>>>>IMPORTANT<<<< We need to add an animation process, that let us assign a new quaternion and a number of tics (time?) so it will animate the arm movement
by interpolating between two different quaternions. To do this we need two methods, one to initialize the animation and another one to effectively animate
the arm (only by increasing the "tic" of the current frame, and checking if the movement is done, and stopping the movement consequently)
- Lazy random solution (incremental).
- Program the inverse kinematics (mysterious box).
- To do so, we will use the "Jacobian" matrix.
2nd: Add claw (and grab things?) and add other objects and table
- Add the claw to the hand (not inverse kinematics).
- Add objects to be grabbed.
- Obtain the ray tracing thing.
3rd: Hanoi towers
- Build the system.
---- dreaming starts here ----
4th: AI for Hanoi towers
5th: Dynamically application for skeleton (turning it into a library)
6th: Make a dude walk
Extra:
ToDo:
Understand dual-quaternions & inverse kinematics.
Assemble it to do the 1st.
Things that we need to do:
- Dual-quaternion class
- Ray-tracing
Things to ask Andy:
Why the code notation of quaternions is "(x,y,z),w" instead of like the mathematical rotation "w,(x,y,z)"
Build the dual-quaternion class (based in Octet)