[OpenGL]Podstawowe informacje dot. formatów obiektów 3d oraz animacji
Po pewnej przerwie, wykorzystując wolny czas wakacji po troszku postanowiłem kontynuować edukację dot. OpenGL.
Postanowiłem zaprogramować loader obiektów 3d oraz ich animacji.
Przed rozpoczęciem projektowania nowego formatu dobrze byłoby zapoznać się budowie takich plików, o to jak do tej pory wygląda mój format obiektu 3d:
#nagłówek_pliku_obiektu_3d
Mesh: name
VertexGroups: [(0, 'Bone1'), (1, 'Bone2')]
~~ (position) (normal) (bone_nr: weight)xN
f: (1.000000 2.000000 1.000000) (1.000000 0.000000 0.000000) (0: 1.000000)
f: (2.000000 0.000000 2.000000) (1.000000 0.000000 0.000000) (1: 0.998811)
f: (2.000000 0.000000 0.000000) (1.000000 0.000000 0.000000) (0: 0.999998)
f: (1.000000 2.000000 1.000000) (1.000000 0.000000 0.000000) (1: 1.000000)
f: (2.000000 0.000000 0.000000) (1.000000 0.000000 0.000000) (1: 0.499406) (0: 0.500000)
f: (0.000000 0.000000 0.000000) (1.000000 0.000000 0.000000) (1: 0.500000) (0: 0.499999)
f: (1.000000 2.000000 1.000000) (1.000000 0.000000 0.000000) (1: 1.000000)
f: (0.000000 0.000000 0.000000) (1.000000 0.000000 0.000000) (1: 0.499406) (0: 0.500000)
f: (0.000000 0.000000 2.000000) (1.000000 0.000000 0.000000) (1: 0.500000) (0: 0.499999)
#1: To nagłówek świadczący, że program odczytuje prawidłowy format pliku.
#2: Jeśli to Mesh to jest to plik opisujący współrzędne tekstur,kości,wierzchłków, a jeśli Anim, to, to jest animacja.
#3: Nazwa kości, odp. im id.
#4: Komentarz
#5: Pierwszy nawias- Współrzędne wierzchołka, || nawias- Wsp. tekstur, ||| i dalsze nawiasy- przydzielone kości odp. im vert.
Animacji w ogóle nie zacząłem oraz wsp. kości.
Tak myślałem żeby współrzędne kości podać również w tym pliku i powstało, by coś takiego (dalsza część pliku):
#Coordinates_bones
b: (1.000000, 0.000000, 1.000000, 0)
b: (2.000000, 0.000000, 1.000000, 1, 0)
b: (3.000000, 0.000000, 1.000000, 2, 1)
#1: |-||| dane z nawiasu to wsp. kości, |V id kości, a V to id pierwszego punktu kości, pierwsza linijka, go nie posiada, ponieważ nie jest kością, to pkt. startowy)
>>> 1.Dobrze o tym myślę?
>>> 2.W jaki sposób opisywać animację obiektu 3d, zrobić to na zasadzie obrotu w stopniach czy też radianach, czy może jeszcze inaczej?