質問編集履歴
5
文章を修正しました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
opnegl objローダーの
|
1
|
+
opnegl objローダーのUV座標の設定方法が知りたい。
|
test
CHANGED
@@ -1,12 +1,4 @@
|
|
1
|
-
提示コードの下部の
|
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
|
-
![イメージ説明](
|
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を修正
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
文章を修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
Github: [https://github.com/Shigurechan/GL/tre
|
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
|
-
|
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
|
-
|
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
|
-
|
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
文章を修正
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
文章を修正
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
|
```
|