Krótka odpowiedź brzmi: nie sądzę, aby istniał dobry ustandaryzowany format pliku ruchu i nie wydaje mi się, żeby istniały jakieś dobre, ogólne narzędzia do robota wysiwyg. Wymagany będzie pewien poziom niestandardowego programowania.
RE: Standardowe formaty plików dla ruchu robota
Collada ma być znormalizowanym formatem plików wymiany danych 3D i obsługuje przechowywanie podstawowych informacji o animacjach i typach fizyki w modelu. Obsługa nie jest jednak spójna w przypadku różnych narzędzi, szczególnie w przypadku danych animacji / fizyki.
Poza tym jest mało prawdopodobne, że znajdziesz ogólne formaty plików do przechowywania animacji robotów. (Chociaż nie jest w 100% porównywalny, sprawdź na wikipedii listę formatów plików ruchów / gestów .) Wszystko, co widziałem, jest specyficzne dla platformy i / lub własności. Weź pod uwagę, że branża gier i CAD to rzędy wielkości większe i bardziej szczegółowe niż robotyka. Mają podobne wymagania, ale nie ma formatu pliku defacto.
Jeśli interesuje Cię bardziej programowy widok danych z tych zastrzeżonych systemów, to spojrzenie na specjalistyczne narzędzia używane przez te branże może dać ci dodatkowe opcje i pomysły. Przykłady:
W szczególności tworzenie, przechowywanie i wykonywanie animacji postaci (często humanoidalnych) jest dobrze reprezentowane i bardzo zaawansowane w branży tworzenia gier. Za cenę. Uważam, że większość większych studiów ma cały zespół zajmujący się wyłącznie konwersją danych z jednego systemu do drugiego i przekazywaniem ich przez rurociąg produkcyjny.
Jednym z powtarzających się problemów z użyciem narzędzi do tworzenia gier (lub ogólnie narzędzi kreatywnych 3D) do robotyki jest to, że w grach / filmach zwykle jest w porządku, jeśli animacja nie modeluje rzeczywistości dokładnie. Może to powodować problemy w przypadku zastosowania do robotów z prawdziwego świata.
RE: Pozowanie narzędzi
Symulatory robotyczne (takie jak V-REP firmy Coppelia, a nawet MS Robotics Studio ) mogą być przydatne, jeśli zapewniają interfejs API / eksport i są w stanie symulować roboty typu humanoidalnego. Nie znam jednak żadnego, który wspierałby pełny model humanoidalny. Większość służy tylko do modelowania broni i robotów kołowych. Może jednak mógłbyś modelować swoje ruchy humanoidalne jako zbiór niezależnych podsystemów uzbrojenia? tzn. lewa noga to jedno ramię robota. Jeśli tak, to dostępnych będzie kilka dodatkowych narzędzi wsyiwyg.
Flowstone to kolejne narzędzie wizualne, które można wykorzystać do pozowania, ale prawdopodobnie nie wysiwyg, o którym myślałeś.
Jeśli nie potrzebujesz WYSIWYG i jesteś otwarty na niektóre programy, możesz wypróbować PyPose i Nuke .
Podobnie, ale wymagając bardziej zaawansowanego programowania, różne silniki fizyki mogą być interesujące do pobierania wszystkich danych wejściowych (modele 3D i związane z nimi parametry), a następnie zapewniania wyników ruchu poprzez zastosowanie sił i odwrotnej kinematyki. Przykłady obejmują ODE i fizykę pocisków . Podobną programową opcją skośną byłoby użycie ROS. Widziałem kilka projektów i notatek dotyczących potencjalnego wsparcia ROS dla ruchów typu humanoidalnego.
To powiedziawszy ... chociaż trudny do nauczenia, nadal uważam, że Blender3D ma potencjał, aby być jedną z lepszych wszechstronnych opcji zaawansowanej robotyki typu pozowanie i praca z ruchem, szczególnie ze względu na ścisłą integrację z językiem programowania Python. Ktoś już wskazał wiki Blender Robotics w komentarzach. Powinieneś także przejrzeć wideo Grantlo321 na YouTube za pomocą blendera do sterowania serwami grającymi na pianinie, a także post na blogu Justina Daily, w którym opisuje on użycie Blendera / Pythona do sterowania serwomechanizmami. Zgadzam się, że Blender3D jest trudny do nauczenia, ale prawdopodobnie będzie to prawdą w przypadku prawie każdego oprogramowania typu 3D wysiwyg, chyba że jego ostrość jest bardzo wąska.