teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

Unityをすすめてみる。

2020/10/02 11:37

投稿

katsuko
katsuko

スコア3601

answer CHANGED
@@ -31,4 +31,17 @@
31
31
  ですので、GUI云々はおいといて、まずその事を重点的に考えた方がいいでしょう。
32
32
 
33
33
  とりあえず、OpenGLで簡単な三角形を表示してみる、それができたらobjファイルをOpenGLで表示してみる、といったことを目標に勉強してみたはいかがですか。
34
- 前にも言ったとおり、KivyもPyQt5もOpenGLが使えますので、そこまでできればGUIに組み込むのも見えてくるのではないでしょうか。
34
+ 前にも言ったとおり、KivyもPyQt5もOpenGLが使えますので、そこまでできればGUIに組み込むのも見えてくるのではないでしょうか。
35
+
36
+ ---
37
+ まぁ本当は書こうか迷って結局書かなかったのですが、C#を一から覚えてでもUnityで作ったほうが早いかもしれません。
38
+
39
+ 3Dモデルの表示はUnityの方が楽なのは、言わずもがな。
40
+ 問題はランタイムでobjファイルやplyファイルを読む機能はUnityでも持ち合わせていないので、結局苦労するかな、と思いましたが、ちょっと調べてみると(有料ですが)以下のようなライブラリがあるそうです。
41
+
42
+ * [Unity:3Dモデルfbx/3ds/glTFを動的(ランタイム)ロード、Trilibの使い方(人気アセット))](https://www.fast-system.jp/unity-trilib-assets-howto/)
43
+ * [Unity Asset Store - TriLib - Model loader package](https://assetstore.unity.com/packages/tools/modeling/trilib-model-loader-package-91777?aid=1101l7pnr&utm_source=aff)
44
+
45
+ 他にも探せばあるかもしれません。
46
+
47
+ GUI(ユーザインターフェイス)に関してはKivyやPyQt5の方が作りやすいと思いますが、3Dモデルの事を考えると、ねぇ…。

1

コメントに対する回答

2020/10/02 11:37

投稿

katsuko
katsuko

スコア3601

answer CHANGED
@@ -18,4 +18,17 @@
18
18
  また、OpenGLも使えそうです。
19
19
  ただ、情報量は少ないですね。
20
20
 
21
- まとめると、一から始めるのであればkivyかなぁ、と思いますが、あとはご自身の判断におまかせします。
21
+ まとめると、一から始めるのであればkivyかなぁ、と思いますが、あとはご自身の判断におまかせします。
22
+
23
+ ---
24
+
25
+ > できれば上図にように1つの画面内で表示するシステムを構築したいと考えているのですが、3DCGソフトウェアとしてBlenderのようなpythonAPIの機能が備わっているものを想定しておりました。
26
+
27
+ Blenderは3Dモデリングソフトですから、モデルファイルの読み込みも3Dモデルの表示も機能として備わっていますから。
28
+ いうなれば、あなたがやろうとしている事は「Blenderを作る」と同じだと言えば、どれだけ大変かわかるのではないでしょうか。(まぁそれは言いすぎですけど)
29
+
30
+ もう一度いいますが、3Dモデルの表示が一番の問題になると思います。
31
+ ですので、GUI云々はおいといて、まずその事を重点的に考えた方がいいでしょう。
32
+
33
+ とりあえず、OpenGLで簡単な三角形を表示してみる、それができたらobjファイルをOpenGLで表示してみる、といったことを目標に勉強してみたはいかがですか。
34
+ 前にも言ったとおり、KivyもPyQt5もOpenGLが使えますので、そこまでできればGUIに組み込むのも見えてくるのではないでしょうか。