Compare commits
No commits in common. "c5f13d7c37a934befcfcf5d7aa1312fc248d5f4f" and "0db5c5d81a657dbc244c08ea01c2c1e8ad32cc6d" have entirely different histories.
c5f13d7c37
...
0db5c5d81a
3
.gitmodules
vendored
@ -1,3 +0,0 @@
|
||||
[submodule "src/assimp"]
|
||||
path = src/assimp
|
||||
url = git@github.com:assimp/assimp
|
BIN
models/backpack/ao.jpg
Normal file
After Width: | Height: | Size: 1.8 MiB |
16
models/backpack/backpack.mtl
Normal file
@ -0,0 +1,16 @@
|
||||
# Blender MTL File: 'None'
|
||||
# Material Count: 1
|
||||
|
||||
newmtl Scene_-_Root
|
||||
Ns 225.000000
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.800000 0.800000 0.800000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.0 0.0 0.0
|
||||
Ni 1.450000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd diffuse.jpg
|
||||
map_Bump normal.png
|
||||
map_Ks specular.jpg
|
||||
|
199481
models/backpack/backpack.obj
Normal file
BIN
models/backpack/diffuse.jpg
Normal file
After Width: | Height: | Size: 5.8 MiB |
BIN
models/backpack/normal.png
Normal file
After Width: | Height: | Size: 14 MiB |
BIN
models/backpack/roughness.jpg
Normal file
After Width: | Height: | Size: 4.2 MiB |
3
models/backpack/source_attribution.txt
Normal file
@ -0,0 +1,3 @@
|
||||
Model by Berk Gedik, from: https://sketchfab.com/3d-models/survival-guitar-backpack-low-poly-799f8c4511f84fab8c3f12887f7e6b36
|
||||
|
||||
Modified material assignment (Joey de Vries) for easier load in OpenGL model loading chapter, and renamed albedo to diffuse and metallic to specular to match non-PBR lighting setup.
|
BIN
models/backpack/specular.jpg
Normal file
After Width: | Height: | Size: 6.4 MiB |
Before Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 526 KiB |
@ -1,12 +0,0 @@
|
||||
# Blender 4.3.2 MTL File: 'None'
|
||||
# www.blender.org
|
||||
|
||||
newmtl Material
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.000000 0.000000 0.000000
|
||||
Ni 1.450000
|
||||
d 1.000000
|
||||
illum 2
|
||||
map_Kd diffuse.png
|
||||
map_Ks specular.png
|
@ -1 +1 @@
|
||||
Subproject commit c35200e38ea8f058812b83de2ef32c6093b0ece2
|
||||
Subproject commit 258cdfd2bc29a920bbe749962abbcd58caa76422
|
16
src/main.cc
@ -164,6 +164,8 @@ int main() {
|
||||
SDL_SetRelativeMouseMode(SDL_TRUE);
|
||||
SDL_WarpMouseInWindow(window, WINDOW_HALF_WIDTH, WINDOW_HALF_HEIGHT);
|
||||
|
||||
stbi_set_flip_vertically_on_load(true);
|
||||
|
||||
glViewport(0, 0, WINDOW_WIDTH, WINDOW_HEIGHT);
|
||||
|
||||
glEnable(GL_DEPTH_TEST);
|
||||
@ -211,7 +213,7 @@ int main() {
|
||||
13, 15, 16
|
||||
};
|
||||
|
||||
Model backpack = {"models/suzanne/suzanne.obj"};
|
||||
Model backpack = {"models/backpack/backpack.obj"};
|
||||
Mesh light = {vertices, indices, {}};
|
||||
|
||||
Shader main_shader {"shaders/vert.glsl", "shaders/frag.glsl"};
|
||||
@ -242,18 +244,18 @@ int main() {
|
||||
glm::vec3( 0.7f, 0.2f, 2.0f),
|
||||
glm::vec3( 2.3f, -3.3f, -4.0f),
|
||||
glm::vec3(-4.0f, 2.0f, -12.0f),
|
||||
glm::vec3( 1.0f, 0.0f, -18.0f)
|
||||
glm::vec3( 0.0f, 0.0f, -3.0f)
|
||||
};
|
||||
|
||||
// Setup lights
|
||||
main_shader.set_vec3("directional_light.direction", glm::vec3(-0.2f, -1.0f, -0.3f));
|
||||
main_shader.set_vec3("directional_light.ambient", light_ambient);
|
||||
main_shader.set_vec3("directional_light.diffuse", light_diffuse * 0.25f);
|
||||
main_shader.set_vec3("directional_light.diffuse", light_diffuse);
|
||||
main_shader.set_vec3("directional_light.specular", light_specular);
|
||||
|
||||
main_shader.set_vec3("spot_light.ambient", light_ambient);
|
||||
main_shader.set_vec3("spot_light.diffuse", light_diffuse * 0.5f);
|
||||
main_shader.set_vec3("spot_light.specular", light_specular * 0.25f);
|
||||
main_shader.set_vec3("spot_light.diffuse", light_diffuse);
|
||||
main_shader.set_vec3("spot_light.specular", light_specular);
|
||||
|
||||
for (int i = 0; i < point_light_positions.size(); ++i) {
|
||||
char base[256] = {0};
|
||||
@ -276,8 +278,8 @@ int main() {
|
||||
|
||||
main_shader.set_vec3(position, point_light_positions[i]);
|
||||
main_shader.set_vec3(ambient, light_ambient);
|
||||
main_shader.set_vec3(diffuse, light_diffuse * 0.25f);
|
||||
main_shader.set_vec3(specular, light_specular * 0.5f);
|
||||
main_shader.set_vec3(diffuse, light_diffuse);
|
||||
main_shader.set_vec3(specular, light_specular);
|
||||
main_shader.set_float(constant, 1.0f);
|
||||
main_shader.set_float(linear, 0.09f);
|
||||
main_shader.set_float(quadratic, 0.032f);
|
||||
|