Un programmeur n'ayant aucune connaissance de 3DCG (disons M. A) a dit: "Veuillez me dire de quelles compétences vous avez besoin pour créer un programme en utilisant FBX SDK Python", j'ai donc fait un bref résumé.
Il y a peut-être d'autres personnes qui ont les mêmes problèmes que je m'attendais, alors je vais le publier.
J'ai fait le matériel de sorte qu'il soit facile à comprendre pour M. A, donc le glossaire n'est peut-être pas très précis. Veuillez comprendre ce que vous faites.
Il est grossièrement divisé en trois catégories.
Même avec 3DCG et une expérience en programmation, il est difficile d'utiliser le FBX SDK Python sans compétences mathématiques. Nous vous recommandons de commencer par étudier les mathématiques.
C'est une méthode pour exprimer la position et la direction dans l'espace tridimensionnel avec trois valeurs numériques (x, y, z).
Puisque l'addition / soustraction / produit intérieur / produit extérieur des vecteurs 3D est souvent utilisé, il est préférable de les supprimer.
Les deux sont des unités d'angle. 180 ° = π [rad].
Radian est une condition préalable à la compréhension des fonctions triangulaires.
Cela signifie péché et cos.
C'est une condition préalable au calcul de l'angle d'Euler.
C'est une méthode pour exprimer le sens de rotation en tournant trois fois.
Il y a 12 manières d'expression telles que «z-y-x» et «z-x-y» dans «Quel axe doit être tourné dans quel ordre?».
Les articles suivants sont détaillés. [https://ja.wikipedia.org/wiki/%E3%82%AA%E3%82%A4%E3%83%A9%E3%83%BC%E8%A7%92](https: // ja .wikipedia.org / wiki / angle du graisseur)
C'est une méthode pour exprimer le sens de rotation avec quatre valeurs numériques (x, y, z, w).
Je pense que c'est une bonne idée de supprimer la multiplication de quaternions et de conjuguer le quaternion.
Les articles suivants sont détaillés. https://qiita.com/kenjihiranabe/items/945232fbde58fab45681
Il s'agit de l'orientation du système de coordonnées 3D.
Veuillez noter que cela changera le positif et le négatif du quaternion vectoriel.
Les articles suivants sont faciles à comprendre. https://ja.wikipedia.org/wiki/%E5%8F%B3%E6%89%8B%E7%B3%BB
Les deux apparaissent fréquemment, vous devez donc faire attention à ne pas faire d'erreur.
Même si vous avez de l'expérience en mathématiques et en programmation, il est difficile d'utiliser FBX SDK Python sans connaissances liées à 3DCG.
Ici, nous listons les connaissances et compétences liées à la 3DCG.
Il s'agit de savoir si la direction du ciel est l'axe y ou l'axe z.
Les deux y-up et z-up apparaissent souvent, vous devez donc faire attention à ne pas faire d'erreur.
L'unité de longueur est de 1 mètre ou 1 centimètre.
Les deux apparaissent fréquemment, vous devez donc faire attention à ne pas faire d'erreur.
C'est le squelette d'un personnage humanoïde.
Par exemple, si vous bougez votre épaule droite, votre coude droit suivra. Cependant, même si vous bougez votre coude droit, votre épaule droite ne bouge pas.
La relation entre ces articulations est exprimée dans une structure hiérarchique telle que l'épaule droite → le coude droit → le poignet droit.
En définissant le sens de rotation (quart ou angle de graissage) pour chaque articulation, vous pouvez déterminer la pose (posture) de tout le corps.
Voir ci-dessous pour plus de détails. https://styly.cc/ja/tips/blender-modeling-start5-2/
La position T est un type de pose de personnage humanoïde. Il est souvent utilisé comme posture initiale.
Un graphique en traits interrompus dessiné dans une zone où l'axe horizontal est l'axe du temps et l'axe vertical est la quantité de changement.
Par exemple, enregistrez le changement d'heure de l'angle de graissage d'une articulation sous forme de courbe d'animation.
Voir ci-dessous pour plus de détails. https://docs.unity3d.com/ja/2018.4/Manual/animeditor-AnimationCurves.html
Combien d'images y a-t-il par seconde?
30 et 60 sont souvent utilisés.
FBX
Il s'agit d'un format de fichier 3DCG.
Vous pouvez enregistrer des polygones, des squelettes, des courbes d'animation, etc.
Nous avons également résumé les compétences liées à la programmation requises pour travailler avec FBX SDK Python.
Python
Tout d'abord, vous devez être capable d'utiliser Python.
Les leçons suivantes sont recommandées. https://dotinstall.com/lessons/basic_python_v4
FBX SDK Python
De toute évidence, vous devez installer le FBX SDK Python.
Voir ci-dessous pour plus de détails.
SDK FBX Bien qu'il ne soit pas directement lié à Python, il est préférable d'introduire des outils pour gérer les bibliothèques Python.
Je recommande personnellement la poésie.
Pour plus de détails, reportez-vous à ce qui suit. https://qiita.com/sk217/items/43c994640f4843a18dbe
FBX SDK Ce n'est pas directement lié à Python, mais je pense qu'il introduira un cadre pour l'écriture de tests unitaires.
Je recommande personnellement Pytest.
Pour plus de détails, reportez-vous à ce qui suit. https://dev.classmethod.jp/server-side/python/pytest-getting-started/
Je les ai énumérés dans une rangée.
C'est loin d'être inexpérimenté, mais faisons de notre mieux!
Je suis ravi de vous aider.
Recommended Posts