FBX SDK Welche Fähigkeiten benötige ich, um ein Programm mit Python zu erstellen?

FBX SDK Welche Fähigkeiten benötige ich, um ein Programm mit Python zu erstellen?

Ein Programmierer ohne 3DCG-Kenntnisse (sagen wir, Herr A) sagte: "Bitte sagen Sie mir, welche Fähigkeiten Sie benötigen, um ein Programm mit FBX SDK Python zu erstellen." Deshalb habe ich eine einfache Zusammenfassung erstellt.

Es kann andere Leute geben, die die gleichen Probleme haben, wie ich erwartet hatte, also werde ich sie veröffentlichen.

Ich habe das Material so erstellt, dass es für Herrn A leicht zu verstehen ist, sodass das Glossar möglicherweise nicht sehr genau ist. Bitte haben Sie Verständnis dafür, was Sie tun.

Es ist grob in drei Kategorien unterteilt.

Mathematik

Selbst mit 3DCG und Programmiererfahrung ist es schwierig, das FBX SDK Python ohne mathematische Kenntnisse zu verwenden. Wir empfehlen Ihnen, zunächst Mathematik zu studieren.

3D-Vektor

Es ist eine Methode, um die Position und Richtung im dreidimensionalen Raum mit drei numerischen Werten (x, y, z) auszudrücken.

Da häufig die Addition / Subtraktion / das innere Produkt / das äußere Produkt von 3D-Vektoren verwendet wird, ist es besser, diese zu unterdrücken.

Grad [°] und Bogenmaß [rad]

Beide sind Winkeleinheiten. 180 ° = π [rad].

Radian ist eine Voraussetzung für das Verständnis von Dreiecksfunktionen.

Trigonometrische Funktion

Es bedeutet Sünde und cos.

Dies ist eine Voraussetzung für die Berechnung des Eulerwinkels.

Ölerwinkel

Es ist eine Methode, um die Drehrichtung durch dreimaliges Drehen auszudrücken.

Es gibt 12 Ausdrucksmöglichkeiten wie "z-y-x" und "z-x-y" in "Welche Achse soll in welcher Reihenfolge gedreht werden?".

Die folgenden Artikel sind detailliert. [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 / oiler angle)

Quarternion (vierfach)

Es ist eine Methode, um die Drehrichtung mit vier numerischen Werten (x, y, z, w) auszudrücken.

Ich denke, es ist eine gute Idee, die Quaternionsmultiplikation und die konjugierte Quaternion zu unterdrücken.

Die folgenden Artikel sind detailliert. https://qiita.com/kenjihiranabe/items/945232fbde58fab45681

Rechtshänder und Linkshänder

Es geht um die Ausrichtung des 3D-Koordinatensystems.

Bitte beachten Sie, dass dies das Positive und Negative der Vektorquaternion ändert.

Die folgenden Artikel sind leicht zu verstehen. https://ja.wikipedia.org/wiki/%E5%8F%B3%E6%89%8B%E7%B3%BB

Beide treten häufig auf, daher müssen Sie darauf achten, keinen Fehler zu machen.

3DCG Edition

Selbst wenn Sie Erfahrung in Mathematik und Programmierung haben, ist es schwierig, FBX SDK Python ohne 3DCG-Kenntnisse zu verwenden.

Hier listen wir die Kenntnisse und Fähigkeiten in Bezug auf 3DCG auf.

y-up und z-up

Es ist eine Geschichte darüber, ob die Himmelsrichtung die y-Achse oder die z-Achse ist.

Sowohl y-up als auch z-up werden häufig angezeigt. Sie müssen also vorsichtig sein, um keinen Fehler zu machen.

In Metern und Zentimetern

Die Längeneinheit beträgt 1 Meter oder 1 Zentimeter.

Beide treten häufig auf, daher müssen Sie darauf achten, keinen Fehler zu machen.

Skelett (Knochengelenkarmatur)

Es ist das Skelett eines humanoiden Charakters.

Wenn Sie beispielsweise Ihre rechte Schulter bewegen, folgt Ihr rechter Ellbogen. Selbst wenn Sie Ihren rechten Ellbogen bewegen, bewegt sich Ihre rechte Schulter nicht.

Die Beziehung zwischen solchen Gelenken wird in einer hierarchischen Struktur wie rechte Schulter → rechter Ellbogen → rechtes Handgelenk ausgedrückt.

Durch Einstellen der Drehrichtung (Viertel- oder Ölerwinkel) für jedes Gelenk können Sie die Haltung des gesamten Körpers bestimmen.

Siehe unten für Details. https://styly.cc/ja/tips/blender-modeling-start5-2/

T Haltung

T-Haltung ist eine Art humanoider Charakterhaltung. Es wird oft als Ausgangsposition verwendet.

Animationskurve

Ein Diagramm mit unterbrochenen Linien, das in einem Bereich gezeichnet wurde, in dem die horizontale Achse die Zeitachse und die vertikale Achse der Änderungsbetrag ist.

Notieren Sie beispielsweise die zeitliche Änderung des Ölerwinkels eines Gelenks als Animationskurve.

Siehe unten für Details. https://docs.unity3d.com/ja/2018.4/Manual/animeditor-AnimationCurves.html

Bildrate

Wie viele Bilder gibt es pro Sekunde?

30 und 60 werden oft verwendet.

FBX

Dies ist ein 3DCG-Dateiformat.

Sie können Polygone, Skelette, Animationskurven usw. speichern.

Programmierung

Wir haben auch die programmierbezogenen Fähigkeiten zusammengefasst, die für die Arbeit mit dem FBX SDK Python erforderlich sind.

Python

Zunächst müssen Sie Python verwenden können.

Die folgenden Lektionen werden empfohlen. https://dotinstall.com/lessons/basic_python_v4

FBX SDK Python

Natürlich müssen Sie das FBX SDK Python installieren.

Siehe unten für Details.

Paketverwaltungstool

FBX SDK Obwohl nicht direkt mit Python verbunden, ist es besser, Tools zur Verwaltung von Python-Bibliotheken einzuführen.

Ich persönlich empfehle Poesie.

Einzelheiten finden Sie im Folgenden. https://qiita.com/sk217/items/43c994640f4843a18dbe

Test-Framework

Es ist nicht direkt mit dem FBX SDK Python verbunden, aber ich denke, es wird ein Framework zum Schreiben von Unit-Tests einführen.

Ich persönlich empfehle Pytest.

Einzelheiten finden Sie im Folgenden. https://dev.classmethod.jp/server-side/python/pytest-getting-started/

schließlich

Ich habe sie in einer Reihe aufgelistet.

Es ist weit davon entfernt, unerfahren zu sein, aber lasst uns unser Bestes geben!

Es ist mir eine Freude, Ihnen zu helfen.

Recommended Posts

FBX SDK Welche Fähigkeiten benötige ich, um ein Programm mit Python zu erstellen?
Was tun mit PYTHON Release?
Was ich getan habe, um die Python2 EOL mit Zuversicht zu begrüßen
Was soll ich denn mit der Python-Verzeichnisstruktur machen?
[Python] Was ich getan habe, um Unit Test zu machen
Was tun, wenn der Server nicht mit dem Runserver python manage.py startet?
Ich habe versucht, eine CSV-Datei mit Python zu berühren
Ich habe versucht, Soma Cube mit Python zu lösen
Ich möchte mit Python-Datenklasse nach hinten erben
Ich habe versucht, das Problem mit Python Vol.1 zu lösen
Ich habe versucht, die Entropie des Bildes mit Python zu finden
Ich habe versucht zu simulieren, wie sich die Infektion mit Python ausbreitet
Ich wollte den Panasonic Programming Contest 2020 mit Python lösen
Ich habe schnell ein Programm geschrieben, um DI mit Python zu lernen
Was können Sie mit den Standardstatistiken der Python-Bibliothek tun?
[Python] Ich möchte die Option -h mit argparse verwenden
Was tun mit der Installation von Magics?
Schwanzrekursion mit Python2 durchführen
Ich mochte den Tweet mit Python. ..
Ich möchte ○○ mit Pandas machen
Ich möchte mit Python debuggen
Python | Was Sie mit Python machen können
Ich habe versucht, die Anfängerausgabe des Ameisenbuchs mit Python zu lösen
Ich möchte das Wetter mit LINE bot feat.Heroku + Python wissen
Was tun, wenn Sie pyaudio nicht mit pip #Python installieren können?
Was ich mit json.dumps in Pythons base64-Codierung süchtig gemacht habe
Ich möchte den Anfang des nächsten Monats mit Python ausgeben
Ich möchte den vollständigen Text mit elasticsearch + python durchsuchen
Überlegen Sie im Qiita-Artikel, was Sie mit Python tun können
Ich wollte das ABC164 A ~ D-Problem mit Python lösen
Was tun, wenn "Ich kann die Site nicht sehen !!!!"
Ich habe versucht, die Effizienz der täglichen Arbeit mit Python zu verbessern
Was tun, wenn der Werttyp in Python nicht eindeutig ist?
Ich wollte ABC160 mit Python lösen
Arbeiten mit OpenStack mit dem Python SDK
Ich möchte Protokolle mit Python analysieren
Wie man einen Taschentest mit Python macht
Ich möchte mit aws mit Python spielen
Was ich mit Python-Arrays gemacht habe
Was Sie mit Programmierkenntnissen machen können
Was ich süchtig nach Python Autorun war
Ich wollte ABC172 mit Python lösen
Der Weg zum Kompilieren zu Python 3 mit Thrift
Was ich getan habe, um Python-Speicher zu speichern
[Python] Ich habe versucht, die Nacht der Galaxienbahn mit WordCloud zu visualisieren!
Ich möchte es mit Python Lambda Django machen, aber ich werde aufhören
Ich habe versucht, ein Programm zu erstellen, das Hexadezimalzahlen mit Python in Dezimalzahlen konvertiert
Was tun, wenn Sie mit Python keine E-Mail an Yahoo senden konnten?
Was tun, wenn ipython und python mit unterschiedlichen Versionen starten?
Ich habe versucht, den Authentifizierungscode der Qiita-API mit Python abzurufen.
Es ist neuer, aber ich wollte die BMI-Berechnung mit Python ausprobieren.
Was tun, wenn der Chainer (Windows) -Beispielverzeichnis mit WinError 183 beendet wird?
Ich habe es mit den Top 100 PyPI-Paketen versucht.> Ich habe versucht, die auf Python installierten Pakete grafisch darzustellen
Ich habe versucht, die Standardrolle neuer Mitarbeiter mit Python zu optimieren
Ich habe versucht, die Filminformationen der TMDb-API mit Python abzurufen
Ich habe ein Programm erstellt, um die Größe einer Datei mit Python zu überprüfen
[Einführung in Python] Wie wird mit der continue-Anweisung wiederholt?