質問編集履歴

5

文章を修正しました。

2021/10/22 08:16

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- opnegl objローダーの書き方が知りたい。
1
+ opnegl objローダーのUV座標の設定が知りたい。
test CHANGED
@@ -1,12 +1,4 @@
1
- 提示コードの下部のコメント部の`LoadObj()`関数部ですがobjロードの正しい書き方がわからずモデル上手くロードできません。これは何が原因なのでしょうか?objインデックスは1から始めこから1引いてるます。参考サイト参考にobjローダーを記述たのですがモデルの形がおかくテクスチャの位置もおかし
1
+ 提示コードの下部の`LoadObj()`関数部ですがobjロードの正しい書き方がわからずモデル上手くUV座標を設定できません。これは何が原因なのでしょうか?objファルの中にあuv座標を`std::vector<glm::vec2> uv `に代入して`Object`クラスでローて設定座標おかしく正常に描画されません。これはなぜしょうか?原因がわかりません
2
-
3
-
4
-
5
- ##### 試したこと、確認したこと。
6
-
7
- uv座標を考えないただの頂点描画でフラグメントシェーダーで単色をつける描画では正常に立方体が描画できているのでobjファイルには問題はないです。
8
-
9
- 描画できているため。opengl側は問題ないです。
10
2
 
11
3
 
12
4
 
@@ -20,9 +12,9 @@
20
12
 
21
13
  参考サイト: [https://github.com/opengl-tutorials/ogl/blob/master/common/objloader.cpp#L91-L108](https://github.com/opengl-tutorials/ogl/blob/master/common/objloader.cpp#L91-L108)
22
14
 
15
+ ![イメージ説明](64f40c8d83e0b005b77c1bccba3235ec.png)
16
+
23
- ![イメージ説明](993951cd540343571374c762854893a9.png)
17
+ ![イメージ説明](3cff5d103ae817b3e4f99757d66d45fc.png)
24
-
25
-
26
18
 
27
19
 
28
20
 
@@ -220,7 +212,7 @@
220
212
 
221
213
 
222
214
 
223
- glActiveTexture(GL_TEXTURE0); //テクスチャ有効
215
+ glActiveTexture(GL_TEXTURE0); //テクスチャ有効
224
216
 
225
217
 
226
218
 
@@ -278,7 +270,7 @@
278
270
 
279
271
  }
280
272
 
281
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
273
+
282
274
 
283
275
  // ##################################### .objファイル読み込み #####################################
284
276
 
@@ -486,11 +478,13 @@
486
478
 
487
479
  obj.vertexIndex.push_back(vi - 1);
488
480
 
481
+
482
+
489
483
  // Get the attributes thanks to the index
490
484
 
491
485
  glm::vec3 v = vertex[ vi - 1 ];
492
486
 
493
- glm::vec2 u = uv[ ui - 1 ];
487
+ glm::vec2 u = uv[ ui - 1];
494
488
 
495
489
  glm::vec3 n = normal[ ni - 1 ];
496
490
 
@@ -532,6 +526,10 @@
532
526
 
533
527
  }
534
528
 
535
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
529
+
530
+
531
+
532
+
533
+
536
534
 
537
535
  ```

4

URLを修正

2021/10/22 08:16

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -18,8 +18,6 @@
18
18
 
19
19
  Github: [https://github.com/Shigurechan/GL](https://github.com/Shigurechan/GL)
20
20
 
21
- ](https://github.com/Shigurechan/GL/tree/ecfd824056923a0e44a46cc983211cb189c275f7)
22
-
23
21
  参考サイト: [https://github.com/opengl-tutorials/ogl/blob/master/common/objloader.cpp#L91-L108](https://github.com/opengl-tutorials/ogl/blob/master/common/objloader.cpp#L91-L108)
24
22
 
25
23
  ![イメージ説明](993951cd540343571374c762854893a9.png)

3

文章を修正

2021/10/22 02:12

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
 
18
18
 
19
- Github: [https://github.com/Shigurechan/GL/tree/ecfd824056923a0e44a46cc983211cb189c275f7
19
+ Github: [https://github.com/Shigurechan/GL](https://github.com/Shigurechan/GL)
20
20
 
21
21
  ](https://github.com/Shigurechan/GL/tree/ecfd824056923a0e44a46cc983211cb189c275f7)
22
22
 
@@ -356,7 +356,7 @@
356
356
 
357
357
  vertex.push_back(vert);
358
358
 
359
- // obj.vertex.push_back(vert);
359
+ obj.vertex.push_back(vert);
360
360
 
361
361
  }
362
362
 
@@ -370,7 +370,7 @@
370
370
 
371
371
  fscanf(file, "%f %fn", &u.x, &u.y);
372
372
 
373
- //obj.uv.push_back(u);
373
+ obj.uv.push_back(u);
374
374
 
375
375
  uv.push_back(u);
376
376
 
@@ -386,7 +386,7 @@
386
386
 
387
387
  fscanf(file, "%f %f %fn", &norm.x, &norm.y, &norm.z);
388
388
 
389
- //obj.normal.push_back(norm);
389
+ obj.normal.push_back(norm);
390
390
 
391
391
  normal.push_back(norm);
392
392
 
@@ -422,11 +422,11 @@
422
422
 
423
423
  vertexIndex.push_back(v[2]);
424
424
 
425
- obj.vertexIndex.push_back(v[0]);
425
+ //obj.vertexIndex.push_back(v[0] - 1);
426
-
426
+
427
- obj.vertexIndex.push_back(v[1]);
427
+ // obj.vertexIndex.push_back(v[1] - 1);
428
-
428
+
429
- obj.vertexIndex.push_back(v[2]);
429
+ //obj.vertexIndex.push_back(v[2] - 1);
430
430
 
431
431
 
432
432
 
@@ -470,7 +470,7 @@
470
470
 
471
471
 
472
472
 
473
- for( unsigned int i = 0; i<vertexIndex.size(); i++ )
473
+ for( unsigned int i = 0; i < vertexIndex.size(); i++ )
474
474
 
475
475
  {
476
476
 
@@ -486,6 +486,8 @@
486
486
 
487
487
 
488
488
 
489
+ obj.vertexIndex.push_back(vi - 1);
490
+
489
491
  // Get the attributes thanks to the index
490
492
 
491
493
  glm::vec3 v = vertex[ vi - 1 ];
@@ -498,11 +500,11 @@
498
500
 
499
501
  // Put the attributes in buffers
500
502
 
501
- obj.vertex.push_back(v);
503
+ // obj.vertex.push_back(v);
502
-
504
+
503
- obj.uv.push_back(u);
505
+ // obj.uv.push_back(u);
504
-
506
+
505
- obj.normal .push_back(n);
507
+ // obj.normal .push_back(n);
506
508
 
507
509
 
508
510
 

2

文章を修正

2021/10/22 02:12

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  uv座標を考えないただの頂点描画でフラグメントシェーダーで単色をつける描画では正常に立方体が描画できているのでobjファイルには問題はないです。
8
8
 
9
-
9
+ 描画できているため。opengl側は問題ないです。
10
10
 
11
11
 
12
12
 

1

文章を修正

2021/10/22 01:52

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,10 @@
1
- 提示コードの下部のLoadObj()関数部ですがobjロードの正しい書き方がわからずモデルを上手くロードできません。これは何が原因なのでしょうか?
2
-
3
- objインデックスは1から始めるでそこから1引いてるます。参考サイトを参考にobjローダーを記述したのですがモデルの形がおかしくテクスチャの位置もおかしいです。
1
+ 提示コードの下部のコメント部の`LoadObj()`関数部ですがobjロードの正しい書き方がわからずモデルを上手くロードできません。これは何が原因なのでしょうか?objインデックスは1から始めるでそこから1引いてるます。参考サイトを参考にobjローダーを記述したのですがモデルの形がおかしくテクスチャの位置もおかしいです。
2
+
3
+
4
+
5
+ ##### 試したこと、確認したこと。
6
+
7
+ uv座標を考えないただの頂点描画でフラグメントシェーダーで単色をつける描画では正常に立方体が描画できているのでobjファイルには問題はないです。
4
8
 
5
9
 
6
10
 
@@ -20,6 +24,12 @@
20
24
 
21
25
  ![イメージ説明](993951cd540343571374c762854893a9.png)
22
26
 
27
+
28
+
29
+
30
+
31
+ ##### Mode.cpp
32
+
23
33
  ```
24
34
 
25
35
  #include "../header/Model.hpp"
@@ -270,7 +280,7 @@
270
280
 
271
281
  }
272
282
 
273
-
283
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
274
284
 
275
285
  // ##################################### .objファイル読み込み #####################################
276
286
 
@@ -522,6 +532,6 @@
522
532
 
523
533
  }
524
534
 
525
-
535
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
526
536
 
527
537
  ```