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

質問編集履歴

2

文章を修正

2021/11/01 09:13

投稿

退会済みユーザー
title CHANGED
@@ -1,1 +1,1 @@
1
- Opengl マテリアル感を出す方法が知りたい。
1
+ Opengl シルバーのマテリアル感を出す方法が知りたい。
body CHANGED
@@ -1,10 +1,10 @@
1
- 提示コードのMain.cppコード部ですがマテリアルのライティングでマテリアル感を出すにはどういったマテリアルを指定すればいいのでしょうか?参考サイトを参考にマテリアルを実装したいのですがいまいち体感がありません。どうすればマテリアル感を出せるのでしょうか?
1
+ 提示コードのMain.cppコード部ですがマテリアルのライティングでマテリアル感を出すにはどういったマテリアルを指定すればいいのでしょうか?参考サイトを参考にマテリアルを実装したいのですがいまいち体感がありません。どうすればマテリアル感を出せるのでしょうか?参考サイトを参考にマテリアルを設定しましたが今一再現できません。
2
2
 
3
3
  ##### 知りたいこと
4
4
  マテリアル感を出すにはどういった値を設定すればいいのか?
5
5
  マテリアルとは質感という言い方をしますが色なのでしょうか?
6
6
 
7
- ![イメージ説明](b185e30bae4a614870f223a75c81616b.png)
7
+ ![イメージ説明](fc244571d4631067b63553609e9ef1e8.png)
8
8
 
9
9
  参考サイト: [https://learnopengl.com/Lighting/Materials](https://learnopengl.com/Lighting/Materials)
10
10
  参考サイト:[ http://devernay.free.fr/cours/opengl/materials.html](http://devernay.free.fr/cours/opengl/materials.html)

1

文章を修正

2021/11/01 09:13

投稿

退会済みユーザー
title CHANGED
@@ -1,1 +1,1 @@
1
- Material ライティングについてマテリアル感を出す方法が知りたい。
1
+ Opengl マテリアル感を出す方法が知りたい。
body CHANGED
@@ -7,11 +7,20 @@
7
7
  ![イメージ説明](b185e30bae4a614870f223a75c81616b.png)
8
8
 
9
9
  参考サイト: [https://learnopengl.com/Lighting/Materials](https://learnopengl.com/Lighting/Materials)
10
+ 参考サイト:[ http://devernay.free.fr/cours/opengl/materials.html](http://devernay.free.fr/cours/opengl/materials.html)
10
11
 
11
-
12
12
  ##### Main.cpp
13
13
  ```
14
+ // LightCube
15
+ lightCube.shader->setEnable();
16
+ lightCube.setPosition(lightPos);
17
+ lightCube.setScale(glm::vec3(10, 10, 10));
18
+ lightCube.shader->setUniform4f("uFragment",FrameWork::GetGlColor(glm::vec4(255,255,255,255)));
19
+ lightCube.Renderer();
20
+ lightCube.shader->setDisable();
14
21
 
22
+
23
+
15
24
  // Cube
16
25
  cube.shader->setEnable();
17
26
  cube.setPosition(cubePos);
@@ -23,38 +32,19 @@
23
32
  lightColor.y = 1.0f;
24
33
  lightColor.z = 1.0f;
25
34
 
26
- glm::vec3 diffuseColor = lightColor * glm::vec3(0.5f); // decrease the influence
35
+ glm::vec3 diffuseColor = lightColor; // decrease the influence
27
- glm::vec3 ambientColor = diffuseColor * glm::vec3(0.2f); // low influence
36
+ glm::vec3 ambientColor = diffuseColor; // low influence
28
37
  cube.shader->setUniform3f("light.ambient", ambientColor);
29
38
  cube.shader->setUniform3f("light.diffuse", diffuseColor);
30
39
  cube.shader->setUniform3f("light.specular", glm::vec3(1.0f, 1.0f, 1.0f));
31
40
 
32
41
  // material properties
33
- cube.shader->setUniform3f("material.ambient",glm::vec3( 1.0f, 0.5f, 0.31f));
42
+ cube.shader->setUniform3f("material.ambient",glm::vec3( 0.19225, 0.19225, 0.19225));
34
- cube.shader->setUniform3f("material.diffuse", glm::vec3(1.0f, 0.5f, 0.31f));
43
+ cube.shader->setUniform3f("material.diffuse", glm::vec3(0.50754, 0.50754, 0.50754));
35
- cube.shader->setUniform3f("material.specular", glm::vec3(0.5f, 0.5f, 0.5f)); // specular lighting doesn't have full effect on this object's material
44
+ cube.shader->setUniform3f("material.specular", glm::vec3(0.508273, 0.508273, 0.508273)); // specular lighting doesn't have full effect on this object's material
36
- cube.shader->setUniform1f("material.shininess", 32.0f);
45
+ cube.shader->setUniform1f("material.shininess", 128.0f * 0.4f);
37
-
38
-
39
46
  cube.shader->setUniform3f("uViewPosition", FrameWork::Camera::getPosition());
40
47
 
41
- /*
42
- cube.shader->setUniform3f("uObjectColor", FrameWork::GetGlColor(glm::vec4(255,255,255,255)));
43
- cube.shader->setUniform3f("uLightColor", FrameWork::GetGlColor(glm::vec4(255,255,255,255)));
44
- cube.shader->setUniform3f("uLightPosition",lightPos);
45
- cube.shader->setUniform3f("uViewPosition", FrameWork::Camera::getPosition());
46
- cube.shader->setUniform1f("uAmbientStrength",0.1f);
47
- cube.shader->setUniform1f("uSpecularStrength",0.5f);
48
- cube.shader->setUniform1f("uShininessStrength",16.0f);
49
- */
50
-
51
-
52
- // cube.shader->setUniform4f("uFragment",FrameWork::GetGlColor(glm::vec4(100,0,0,255)));
53
- cube.Renderer();
54
- cube.shader->setDisable();
55
-
56
-
57
- /*
58
48
  ```
59
49
 
60
50
  ##### VertexShader