light
This commit is contained in:
@@ -53,7 +53,7 @@ void Rubiks::onLoad() {
|
|||||||
|
|
||||||
ImGui::SetCurrentContext(im->aquireContext());
|
ImGui::SetCurrentContext(im->aquireContext());
|
||||||
|
|
||||||
window->getRenderer()->clearColor = { 0.2, 0.2, 0.4, 0.7 };
|
window->getRenderer()->clearColor = { 0, 0, 0, 1.0f };
|
||||||
|
|
||||||
|
|
||||||
cubeShader = Archimedes::Shader(cubeVS, cubeFS, Archimedes::Shader::LoadType::FromSource);
|
cubeShader = Archimedes::Shader(cubeVS, cubeFS, Archimedes::Shader::LoadType::FromSource);
|
||||||
|
|||||||
@@ -54,10 +54,14 @@ class Rubiks : public Archimedes::Module {
|
|||||||
"uniform mat4 view;\n"
|
"uniform mat4 view;\n"
|
||||||
"uniform mat4 proj;\n"
|
"uniform mat4 proj;\n"
|
||||||
"uniform vec4 color;\n"
|
"uniform vec4 color;\n"
|
||||||
"uniform float amblight;\n"
|
|
||||||
"void main()\n"
|
"void main()\n"
|
||||||
"{\n"
|
"{\n"
|
||||||
" FragColor = color;\n"
|
" vec3 light = vec3(1.0f, 1.0f, 1.0f);\n"
|
||||||
|
" vec3 amblight = 0.1f * light;\n"
|
||||||
|
" vec3 norm = normalize(Norm);\n"
|
||||||
|
" vec3 lightdir = normalize(vec3(20, 20, 20) - FragPos);\n"
|
||||||
|
" vec3 diff = max(dot(norm, lightdir), 0.0) * light;\n"
|
||||||
|
" FragColor = vec4((amblight + diff) * color.rgb, 1.0f);\n"
|
||||||
"}\n\0";
|
"}\n\0";
|
||||||
|
|
||||||
Archimedes::Shader cubeShader;
|
Archimedes::Shader cubeShader;
|
||||||
@@ -70,67 +74,97 @@ class Rubiks : public Archimedes::Module {
|
|||||||
|
|
||||||
Archimedes::Camera camera;
|
Archimedes::Camera camera;
|
||||||
|
|
||||||
std::vector<float> vertices = {
|
std::vector<float> vertices = {
|
||||||
-0.5f, -0.5f, 0.5f,
|
-0.5f, -0.5f, -0.5f, 0.0f, 0.0f, -1.0f,
|
||||||
0.5f, -0.5f, 0.5f,
|
0.5f, -0.5f, -0.5f, 0.0f, 0.0f, -1.0f,
|
||||||
0.5f, 0.5f, 0.5f,
|
0.5f, 0.5f, -0.5f, 0.0f, 0.0f, -1.0f,
|
||||||
-0.5f, 0.5f, 0.5f,
|
0.5f, 0.5f, -0.5f, 0.0f, 0.0f, -1.0f,
|
||||||
|
-0.5f, 0.5f, -0.5f, 0.0f, 0.0f, -1.0f,
|
||||||
|
-0.5f, -0.5f, -0.5f, 0.0f, 0.0f, -1.0f,
|
||||||
|
|
||||||
|
-0.5f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f,
|
||||||
|
0.5f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f,
|
||||||
|
0.5f, 0.5f, 0.5f, 0.0f, 0.0f, 1.0f,
|
||||||
|
0.5f, 0.5f, 0.5f, 0.0f, 0.0f, 1.0f,
|
||||||
|
-0.5f, 0.5f, 0.5f, 0.0f, 0.0f, 1.0f,
|
||||||
|
-0.5f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f,
|
||||||
|
|
||||||
-0.5f, -0.5f, -0.5f,
|
-0.5f, 0.5f, 0.5f, -1.0f, 0.0f, 0.0f,
|
||||||
0.5f, -0.5f, -0.5f,
|
-0.5f, 0.5f, -0.5f, -1.0f, 0.0f, 0.0f,
|
||||||
0.5f, 0.5f, -0.5f,
|
-0.5f, -0.5f, -0.5f, -1.0f, 0.0f, 0.0f,
|
||||||
-0.5f, 0.5f, -0.5f,
|
-0.5f, -0.5f, -0.5f, -1.0f, 0.0f, 0.0f,
|
||||||
|
-0.5f, -0.5f, 0.5f, -1.0f, 0.0f, 0.0f,
|
||||||
|
-0.5f, 0.5f, 0.5f, -1.0f, 0.0f, 0.0f,
|
||||||
|
|
||||||
};
|
0.5f, 0.5f, 0.5f, 1.0f, 0.0f, 0.0f,
|
||||||
|
0.5f, 0.5f, -0.5f, 1.0f, 0.0f, 0.0f,
|
||||||
|
0.5f, -0.5f, -0.5f, 1.0f, 0.0f, 0.0f,
|
||||||
|
0.5f, -0.5f, -0.5f, 1.0f, 0.0f, 0.0f,
|
||||||
|
0.5f, -0.5f, 0.5f, 1.0f, 0.0f, 0.0f,
|
||||||
|
0.5f, 0.5f, 0.5f, 1.0f, 0.0f, 0.0f,
|
||||||
|
|
||||||
|
-0.5f, -0.5f, -0.5f, 0.0f, -1.0f, 0.0f,
|
||||||
|
0.5f, -0.5f, -0.5f, 0.0f, -1.0f, 0.0f,
|
||||||
|
0.5f, -0.5f, 0.5f, 0.0f, -1.0f, 0.0f,
|
||||||
|
0.5f, -0.5f, 0.5f, 0.0f, -1.0f, 0.0f,
|
||||||
|
-0.5f, -0.5f, 0.5f, 0.0f, -1.0f, 0.0f,
|
||||||
|
-0.5f, -0.5f, -0.5f, 0.0f, -1.0f, 0.0f,
|
||||||
|
|
||||||
|
-0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f,
|
||||||
|
0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f,
|
||||||
|
0.5f, 0.5f, 0.5f, 0.0f, 1.0f, 0.0f,
|
||||||
|
0.5f, 0.5f, 0.5f, 0.0f, 1.0f, 0.0f,
|
||||||
|
-0.5f, 0.5f, 0.5f, 0.0f, 1.0f, 0.0f,
|
||||||
|
-0.5f, 0.5f, -0.5f, 0.0f, 1.0f, 0.0f
|
||||||
|
};
|
||||||
|
|
||||||
std::vector<unsigned int> indices = {
|
std::vector<unsigned int> indices = {
|
||||||
0,
|
0,
|
||||||
1,
|
1,
|
||||||
2,
|
2,
|
||||||
2,
|
|
||||||
3,
|
3,
|
||||||
0,
|
|
||||||
|
|
||||||
|
|
||||||
4,
|
4,
|
||||||
5,
|
5,
|
||||||
6,
|
|
||||||
|
|
||||||
6,
|
6,
|
||||||
7,
|
7,
|
||||||
4,
|
8,
|
||||||
|
9,
|
||||||
|
10,
|
||||||
|
11,
|
||||||
|
|
||||||
|
|
||||||
0,
|
12,
|
||||||
1,
|
13,
|
||||||
5,
|
14,
|
||||||
5,
|
15,
|
||||||
4,
|
16,
|
||||||
0,
|
17,
|
||||||
|
|
||||||
|
|
||||||
3,
|
18,
|
||||||
2,
|
19,
|
||||||
6,
|
20,
|
||||||
6,
|
21,
|
||||||
7,
|
22,
|
||||||
3,
|
23,
|
||||||
|
|
||||||
|
|
||||||
0,
|
24,
|
||||||
3,
|
25,
|
||||||
7,
|
26,
|
||||||
7,
|
27,
|
||||||
4,
|
28,
|
||||||
0,
|
29,
|
||||||
|
|
||||||
|
|
||||||
1,
|
30,
|
||||||
2,
|
31,
|
||||||
6,
|
32,
|
||||||
6,
|
33,
|
||||||
5,
|
34,
|
||||||
1,
|
35,
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user