fix shadow; added plant; #12
Binary file not shown.
Binary file not shown.
BIN
Debug/room.exe
BIN
Debug/room.exe
Binary file not shown.
BIN
Debug/room.pdb
BIN
Debug/room.pdb
Binary file not shown.
@ -2,43 +2,43 @@
|
|||||||
main.cpp
|
main.cpp
|
||||||
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared\minwindef.h(130,1): warning C4005: "APIENTRY": ponowna definicja makra
|
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared\minwindef.h(130,1): warning C4005: "APIENTRY": ponowna definicja makra
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\dependencies\glfw-3.3.8.bin.WIN32\include\GLFW\glfw3.h(123): message : zobacz poprzednią definicję „APIENTRY”
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\dependencies\glfw-3.3.8.bin.WIN32\include\GLFW\glfw3.h(123): message : zobacz poprzednią definicję „APIENTRY”
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(110,30): warning C4305: "inicjowanie": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(111,30): warning C4305: "inicjowanie": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(129,38): warning C4305: "=": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(130,38): warning C4305: "=": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(152,16): warning C4305: "inicjowanie": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(153,16): warning C4305: "inicjowanie": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(171,16): warning C4305: "inicjowanie": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(172,16): warning C4305: "inicjowanie": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(189,15): warning C4101: "textureID": lokalna zmienna, do której nie istnieje odwołanie
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(190,15): warning C4101: "textureID": lokalna zmienna, do której nie istnieje odwołanie
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(275,13): warning C4244: "inicjowanie": konwersja z "double" do "float", możliwa utrata danych
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(276,13): warning C4244: "inicjowanie": konwersja z "double" do "float", możliwa utrata danych
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(286,96): warning C4305: "argument": obcięcie z "double" do "T"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(287,96): warning C4305: "argument": obcięcie z "double" do "T"
|
||||||
with
|
with
|
||||||
[
|
[
|
||||||
T=float
|
T=float
|
||||||
]
|
]
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(290,59): warning C4305: "argument": obcięcie z "double" do "T"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(291,59): warning C4305: "argument": obcięcie z "double" do "T"
|
||||||
with
|
with
|
||||||
[
|
[
|
||||||
T=float
|
T=float
|
||||||
]
|
]
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(386,13): warning C4244: "inicjowanie": konwersja z "double" do "float", możliwa utrata danych
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(388,13): warning C4244: "inicjowanie": konwersja z "double" do "float", możliwa utrata danych
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(397,109): warning C4305: "argument": obcięcie z "double" do "T"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(412,109): warning C4305: "argument": obcięcie z "double" do "T"
|
||||||
with
|
with
|
||||||
[
|
[
|
||||||
T=float
|
T=float
|
||||||
]
|
]
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(406,87): warning C4305: "argument": obcięcie z "double" do "T"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(421,87): warning C4305: "argument": obcięcie z "double" do "T"
|
||||||
with
|
with
|
||||||
[
|
[
|
||||||
T=float
|
T=float
|
||||||
]
|
]
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(406,223): warning C4305: "argument": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(421,223): warning C4305: "argument": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(409,59): warning C4305: "argument": obcięcie z "double" do "T"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(424,59): warning C4305: "argument": obcięcie z "double" do "T"
|
||||||
with
|
with
|
||||||
[
|
[
|
||||||
T=float
|
T=float
|
||||||
]
|
]
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(410,37): warning C4305: "argument": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(425,37): warning C4305: "argument": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(455,2): warning C4305: "argument": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(462,2): warning C4305: "argument": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(589,21): warning C4305: "-=": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(594,21): warning C4305: "-=": obcięcie z "double" do "float"
|
||||||
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(591,21): warning C4305: "+=": obcięcie z "double" do "float"
|
D:\UAM\Grafika komputerowa\projekt\GRK_Room\cw 9\src\room.hpp(596,21): warning C4305: "+=": obcięcie z "double" do "float"
|
||||||
Box.obj : warning LNK4075: zignorowano opcję „/EDITANDCONTINUE” z powodu określenia opcji „/INCREMENTAL:NO”
|
Box.obj : warning LNK4075: zignorowano opcję „/EDITANDCONTINUE” z powodu określenia opcji „/INCREMENTAL:NO”
|
||||||
LINK : warning LNK4098: domyślna biblioteka „MSVCRT” powoduje konflikt z innymi bibliotekami; użyj opcji /NODEFAULTLIB:biblioteka
|
LINK : warning LNK4098: domyślna biblioteka „MSVCRT” powoduje konflikt z innymi bibliotekami; użyj opcji /NODEFAULTLIB:biblioteka
|
||||||
grk-cw9.vcxproj -> D:\UAM\Grafika komputerowa\projekt\GRK_Room\Debug\room.exe
|
grk-cw9.vcxproj -> D:\UAM\Grafika komputerowa\projekt\GRK_Room\Debug\room.exe
|
||||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
68
cw 9/models/flower/flower.mtl
Normal file
68
cw 9/models/flower/flower.mtl
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
# Blender 3.4.1 MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl IDP_Pot.001
|
||||||
|
Ns 96.078453
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
map_Ks D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Bump D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
|
||||||
|
newmtl IDP_ground.001
|
||||||
|
Ns 96.078453
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Ks 0.000000 0.000000 0.000000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 1
|
||||||
|
map_Kd D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
map_Bump D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
|
||||||
|
newmtl IDP_leaves.001
|
||||||
|
Ns 96.078453
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Ks D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Bump D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
|
||||||
|
newmtl IDP_leaves_indoor_plant_2_NOR.jpg.001
|
||||||
|
Ns 96.078453
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
map_Ks D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Bump D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
|
||||||
|
newmtl IDP_root.001
|
||||||
|
Ns 96.078453
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Ks D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Bump D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
|
||||||
|
newmtl IDP_root_indoor_plant_2_NOR.jpg.001
|
||||||
|
Ns 96.078453
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
||||||
|
map_Ks D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_COL.jpg
|
||||||
|
map_Bump D:/UAM/Grafika komputerowa/projekt/models/textures/indoor plant_2_NOR.jpg
|
119679
cw 9/models/flower/flower.obj
Normal file
119679
cw 9/models/flower/flower.obj
Normal file
File diff suppressed because it is too large
Load Diff
@ -48,6 +48,7 @@ namespace models {
|
|||||||
Core::RenderContext lightSwitchContext;
|
Core::RenderContext lightSwitchContext;
|
||||||
Core::RenderContext easelContext;
|
Core::RenderContext easelContext;
|
||||||
Core::RenderContext carContext;
|
Core::RenderContext carContext;
|
||||||
|
Core::RenderContext flowerContext;
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace texture {
|
namespace texture {
|
||||||
@ -312,6 +313,7 @@ void renderShadowapSun(GLuint depthFBO, glm::mat4 light) {
|
|||||||
drawObjectDepth(models::bookshelfContext, light, glm::mat4());
|
drawObjectDepth(models::bookshelfContext, light, glm::mat4());
|
||||||
drawObjectDepth(models::easelContext, light, glm::mat4());
|
drawObjectDepth(models::easelContext, light, glm::mat4());
|
||||||
drawObjectDepth(models::carContext, light, glm::translate(carPosTranform));
|
drawObjectDepth(models::carContext, light, glm::translate(carPosTranform));
|
||||||
|
drawObjectDepth(models::flowerContext, light, glm::mat4());
|
||||||
|
|
||||||
// draw windows
|
// draw windows
|
||||||
drawObjectDepth(models::windowContext, light, glm::scale(glm::vec3(1.0f, 1.0f, 2.3f)) * glm::translate(glm::vec3(-2.9f, 0, -0.2f)));
|
drawObjectDepth(models::windowContext, light, glm::scale(glm::vec3(1.0f, 1.0f, 2.3f)) * glm::translate(glm::vec3(-2.9f, 0, -0.2f)));
|
||||||
@ -385,6 +387,19 @@ void renderScene(GLFWwindow* window)
|
|||||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
float time = glfwGetTime();
|
float time = glfwGetTime();
|
||||||
updateDeltaTime(time);
|
updateDeltaTime(time);
|
||||||
|
|
||||||
|
glm::vec3 spaceshipSide = glm::normalize(glm::cross(spaceshipDir, glm::vec3(0.f, 1.f, 0.f)));
|
||||||
|
glm::vec3 spaceshipUp = glm::normalize(glm::cross(spaceshipSide, spaceshipDir));
|
||||||
|
glm::mat4 specshipCameraRotrationMatrix = glm::mat4({
|
||||||
|
spaceshipSide.x,spaceshipSide.y,spaceshipSide.z,0,
|
||||||
|
spaceshipUp.x,spaceshipUp.y,spaceshipUp.z ,0,
|
||||||
|
-spaceshipDir.x,-spaceshipDir.y,-spaceshipDir.z,0,
|
||||||
|
0.,0.,0.,1.,
|
||||||
|
});
|
||||||
|
|
||||||
|
spotlightPos = spaceshipPos + 0.4 * spaceshipDir;
|
||||||
|
spotlightConeDir = spaceshipDir;
|
||||||
|
|
||||||
renderShadowapSun(depthMapFBO, lightVP);
|
renderShadowapSun(depthMapFBO, lightVP);
|
||||||
renderShadowapSun(depthMapShipFBO, lightShipVP);
|
renderShadowapSun(depthMapShipFBO, lightShipVP);
|
||||||
|
|
||||||
@ -429,21 +444,13 @@ void renderScene(GLFWwindow* window)
|
|||||||
drawObjectPBR(models::lightSwitchContext, glm::mat4(), glm::vec3(1.0f, 1.0f, 1.0f), 0.0f, 0.2f);
|
drawObjectPBR(models::lightSwitchContext, glm::mat4(), glm::vec3(1.0f, 1.0f, 1.0f), 0.0f, 0.2f);
|
||||||
drawObjectPBR(models::easelContext, glm::mat4(), glm::vec3(0.6745098039215686f, 0.6352941176470588f, 0.6235294117647059f), 0.0f, 0.2f);
|
drawObjectPBR(models::easelContext, glm::mat4(), glm::vec3(0.6745098039215686f, 0.6352941176470588f, 0.6235294117647059f), 0.0f, 0.2f);
|
||||||
drawObjectPBR(models::carContext, glm::translate(carPosTranform), glm::vec3(1.0f, 0.0f, 0.0f), 0.0f, 0.2f);
|
drawObjectPBR(models::carContext, glm::translate(carPosTranform), glm::vec3(1.0f, 0.0f, 0.0f), 0.0f, 0.2f);
|
||||||
|
drawObjectPBR(models::flowerContext, glm::mat4(), glm::vec3(1.0f, 1.0f, 1.0f), 0.0f, 0.2f);
|
||||||
|
|
||||||
// draw windows
|
// draw windows
|
||||||
drawObjectPBR(models::windowContext, glm::scale(glm::vec3(1.0f, 1.0f, 2.3f)) * glm::translate(glm::vec3(-2.9f, 0, -0.2f)), glm::vec3(0.402978f, 0.120509f, 0.057729f), 0.2f, 0.0f);
|
drawObjectPBR(models::windowContext, glm::scale(glm::vec3(1.0f, 1.0f, 2.3f)) * glm::translate(glm::vec3(-2.9f, 0, -0.2f)), glm::vec3(0.402978f, 0.120509f, 0.057729f), 0.2f, 0.0f);
|
||||||
drawObjectPBR(models::windowContext, glm::eulerAngleY(3.14f) * glm::scale(glm::vec3(1.0f, 1.0f, 2.3f)) * glm::translate(glm::vec3(-2.9f, 0, -0.3f)), glm::vec3(0.402978f, 0.120509f, 0.057729f), 0.2f, 0.0f);
|
drawObjectPBR(models::windowContext, glm::eulerAngleY(3.14f) * glm::scale(glm::vec3(1.0f, 1.0f, 2.3f)) * glm::translate(glm::vec3(-2.9f, 0, -0.3f)), glm::vec3(0.402978f, 0.120509f, 0.057729f), 0.2f, 0.0f);
|
||||||
drawObjectPBR(models::windowContext, glm::eulerAngleY(1.57f) * glm::scale(glm::vec3(1.0f, 1.0f, 2.45f)) * glm::translate(glm::vec3(-0.6f, 0, -0.25f)), glm::vec3(0.402978f, 0.120509f, 0.057729f), 0.2f, 0.0f);
|
drawObjectPBR(models::windowContext, glm::eulerAngleY(1.57f) * glm::scale(glm::vec3(1.0f, 1.0f, 2.45f)) * glm::translate(glm::vec3(-0.6f, 0, -0.25f)), glm::vec3(0.402978f, 0.120509f, 0.057729f), 0.2f, 0.0f);
|
||||||
|
|
||||||
glm::vec3 spaceshipSide = glm::normalize(glm::cross(spaceshipDir, glm::vec3(0.f, 1.f, 0.f)));
|
|
||||||
glm::vec3 spaceshipUp = glm::normalize(glm::cross(spaceshipSide, spaceshipDir));
|
|
||||||
glm::mat4 specshipCameraRotrationMatrix = glm::mat4({
|
|
||||||
spaceshipSide.x,spaceshipSide.y,spaceshipSide.z,0,
|
|
||||||
spaceshipUp.x,spaceshipUp.y,spaceshipUp.z ,0,
|
|
||||||
-spaceshipDir.x,-spaceshipDir.y,-spaceshipDir.z,0,
|
|
||||||
0.,0.,0.,1.,
|
|
||||||
});
|
|
||||||
|
|
||||||
//drawObjectColor(shipContext,
|
//drawObjectColor(shipContext,
|
||||||
// glm::translate(cameraPos + 1.5 * cameraDir + cameraUp * -0.5f) * inveseCameraRotrationMatrix * glm::eulerAngleY(glm::pi<float>()),
|
// glm::translate(cameraPos + 1.5 * cameraDir + cameraUp * -0.5f) * inveseCameraRotrationMatrix * glm::eulerAngleY(glm::pi<float>()),
|
||||||
// glm::vec3(0.3, 0.3, 0.5)
|
// glm::vec3(0.3, 0.3, 0.5)
|
||||||
@ -454,9 +461,6 @@ void renderScene(GLFWwindow* window)
|
|||||||
0.2,1.0
|
0.2,1.0
|
||||||
);
|
);
|
||||||
|
|
||||||
spotlightPos = spaceshipPos + 0.2 * spaceshipDir;
|
|
||||||
spotlightConeDir = spaceshipDir;
|
|
||||||
|
|
||||||
//test depth buffer
|
//test depth buffer
|
||||||
//glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
//glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
//glUseProgram(programTest);
|
//glUseProgram(programTest);
|
||||||
@ -539,6 +543,7 @@ void init(GLFWwindow* window)
|
|||||||
loadModelToContext("./models/light_switch/light_switch.obj", models::lightSwitchContext);
|
loadModelToContext("./models/light_switch/light_switch.obj", models::lightSwitchContext);
|
||||||
loadModelToContext("./models/easel/easel3.obj", models::easelContext);
|
loadModelToContext("./models/easel/easel3.obj", models::easelContext);
|
||||||
loadModelToContext("./models/car/car.obj", models::carContext);
|
loadModelToContext("./models/car/car.obj", models::carContext);
|
||||||
|
loadModelToContext("./models/flower/flower.obj", models::flowerContext);
|
||||||
|
|
||||||
initDepthMap();
|
initDepthMap();
|
||||||
initDepthMapShip();
|
initDepthMapShip();
|
||||||
|
Loading…
Reference in New Issue
Block a user