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

回答編集履歴

2

追記

2018/09/21 06:34

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -11,7 +11,7 @@
11
11
 
12
12
  ----
13
13
 
14
- 追記
14
+ ## 追記
15
15
 
16
16
  tinyobjloader のサイトに [viewer example](https://github.com/syoyo/tinyobjloader/tree/master/examples/viewer) というのがあるのに気づきました。描画は固定機能パイプラインを使っていますが、参考にはなるのではないでしょうか。
17
17
 
@@ -24,4 +24,15 @@
24
24
  $ ./objview ~/red_pepper.obj
25
25
  ```
26
26
 
27
- ![イメージ説明](bf7304c4b8465bc0e86aad5835415156.png)
27
+ ![イメージ説明](bf7304c4b8465bc0e86aad5835415156.png)
28
+
29
+ ----
30
+
31
+ ## 固定機能パイプライン (fixed function pipeline)
32
+
33
+ 一言でいうと、古い OpenGL の書き方です。
34
+ OpenGL に組み込みのシェーダがあり、それを使って描画する方法です。
35
+ ライトの設置や視点の変更、描画など手続き的に用意された関数を呼び出すだけなので簡単ですが、自由度は低いです。
36
+ 今風の OpenGL の使い方は GLSL で自作のシェーダーを作って描画するプログラマブルパイプライン (programmable pipeline) です。
37
+
38
+ 詳しくは [Legacy OpenGL](https://www.khronos.org/opengl/wiki/Legacy_OpenGL) を参照

1

追記

2018/09/21 06:34

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -7,4 +7,21 @@
7
7
  3Dモデルファイルは obj 形式ではれば、[tinyobjloader](https://github.com/syoyo/tinyobjloader) があります。
8
8
  Blender でもたしか obj 形式の出力はできたと思います。
9
9
 
10
- tinyobjloader でロードして、パイプライン機能を使って描画したことならありますが、今風にやるなら GLSL で描画したほうがいいでしょう。
10
+ tinyobjloader でロードして、パイプライン機能を使って描画したことならありますが、今風にやるなら GLSL で描画したほうがいいでしょう。
11
+
12
+ ----
13
+
14
+ 追記
15
+
16
+ tinyobjloader のサイトに [viewer example](https://github.com/syoyo/tinyobjloader/tree/master/examples/viewer) というのがあるのに気づきました。描画は固定機能パイプラインを使っていますが、参考にはなるのではないでしょうか。
17
+
18
+ linux 環境で動かしてみたら、以下のようになりました。
19
+
20
+ ```
21
+ $ sudo apt-get install libglfw3-dev premake4
22
+ $ premake4 gmake
23
+ $ make
24
+ $ ./objview ~/red_pepper.obj
25
+ ```
26
+
27
+ ![イメージ説明](bf7304c4b8465bc0e86aad5835415156.png)