Skip to content

Commit 2c2c644

Browse files
committed
SSR moved to Composiiton Pass. Creation of previos frame buffer
1 parent 50d016e commit 2c2c644

34 files changed

+20073
-19999
lines changed

examples/raytracing/application.cpp

Lines changed: 28 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ void Application::setup() {
5959
m_scene = new Scene(camera);
6060

6161
Mesh* lightDummy = new Mesh();
62-
Tools::Loaders::load_3D_file(lightDummy, ENGINE_MESH_PATH + "sphere.obj", false);
62+
Tools::Loaders::load_3D_file(lightDummy, ENGINE_MESH_PATH + "sphere.obj");
6363
lightDummy->push_material(new UnlitMaterial());
6464
lightDummy->set_scale(0.5f);
6565
lightDummy->ray_hittable(false);
@@ -96,7 +96,7 @@ void Application::setup() {
9696
toriiMat->set_roughness(0.5);
9797
toriiMesh->push_material(toriiMat);
9898

99-
Tools::Loaders::load_3D_file(toriiMesh, MESH_PATH + "torii.obj", false);
99+
Tools::Loaders::load_3D_file(toriiMesh, MESH_PATH + "torii.obj");
100100
toriiMesh->set_name("Torii");
101101
toriiMesh->set_scale(0.2f);
102102
toriiMesh->set_position({0.0, -2.3, 0.0});
@@ -115,17 +115,19 @@ void Application::setup() {
115115
Tools::Loaders::load_texture(floorRoughText, TEXTURE_PATH + "floor_roughness.jpg");
116116
terrainMat->set_albedo({0.43f, 0.28f, 0.23f});
117117
terrainMat->set_albedo_texture(floorText);
118-
// terrainMat->set_normal_texture(floorNormalText);
119-
terrainMat->set_roughness_texture(floorRoughText);
120-
terrainMat->set_tile({3.0f, 3.0f});
118+
terrainMat->set_normal_texture(floorNormalText);
119+
// terrainMat->set_roughness_texture(floorRoughText);
120+
terrainMat->set_roughness(0.2f);
121+
terrainMat->set_tile({10.0f, 10.0f});
122+
terrainMat->reflective(true);
121123
plane->push_material(terrainMat);
122124
plane->set_name("Floor");
123125
plane->set_position({0.0, -2.3, 0.0});
124126
plane->set_rotation({-90.0f, 0.0f, 0.0f});
125-
plane->set_scale(5.0f);
127+
plane->set_scale(20.0f);
126128

127129
Mesh* stoneMesh = new Mesh();
128-
Tools::Loaders::load_3D_file(stoneMesh, MESH_PATH + "moisturizer.obj", false);
130+
Tools::Loaders::load_3D_file(stoneMesh, MESH_PATH + "moisturizer.obj");
129131
auto stoneMat = new PhysicallyBasedMaterial();
130132
Texture* stonelanternT = new Texture();
131133
Tools::Loaders::load_texture(stonelanternT, TEXTURE_PATH + "moisturizer_color.png");
@@ -143,7 +145,7 @@ void Application::setup() {
143145
m_scene->add(stoneMesh);
144146

145147
Mesh* droidMesh = new Mesh();
146-
Tools::Loaders::load_3D_file(droidMesh, MESH_PATH + "droid.obj", false);
148+
Tools::Loaders::load_3D_file(droidMesh, MESH_PATH + "droid.obj");
147149
auto droidMat = new PhysicallyBasedMaterial();
148150
Texture* droidText0 = new Texture();
149151
Tools::Loaders::load_texture(droidText0, TEXTURE_PATH + "DROID_Body_BaseColor.jpg");
@@ -170,7 +172,7 @@ void Application::setup() {
170172
m_scene->add(droidMesh);
171173

172174
Mesh* stormtrooper = new Mesh();
173-
Tools::Loaders::load_3D_file(stormtrooper, MESH_PATH + "stormtrooper.obj", false);
175+
Tools::Loaders::load_3D_file(stormtrooper, MESH_PATH + "stormtrooper.obj");
174176
auto stormtrooperMat = new PhysicallyBasedMaterial();
175177
Texture* stormtrooperText = new Texture();
176178
Tools::Loaders::load_texture(stormtrooperText, TEXTURE_PATH + "stormtrooper_color.png");
@@ -187,17 +189,24 @@ void Application::setup() {
187189
stormtrooper->set_position({-1.8f, -2.3f, 0.4f});
188190
stormtrooper->set_rotation({0.0, -136.0f, 0.0f});
189191
stormtrooper->set_scale(.7f);
190-
// stormtrooper->push_material(new PhysicallyBasedMaterial(Vec4(1.0,0.0,0.0,1.0)));
191-
// stormtrooper->set_material_ID(1,1);
192-
// Mesh* eyesMesh = new Mesh();
193-
// Tools::Loaders::load_3D_file(eyesMesh, MESH_PATH + "eyes.obj", false);
194-
// auto droidMat1 = new PhysicallyBasedMaterial();
195-
// droidMat1->set_emissive_color(Vec3(1.0));
196-
// droidMat1->set_emission_intensity(10.0);
197-
// eyesMesh->push_material(droidMat1);
198-
// eyesMesh->set_name("Eyes");
199-
// droidMesh->add_child(eyesMesh);
192+
Mesh* stormtrooperHead = new Mesh();
193+
Tools::Loaders::load_3D_file(stormtrooperHead, MESH_PATH + "stormtrooper_helm.obj", false);
194+
auto stormtrooperMat1 = new PhysicallyBasedMaterial();
195+
Texture* stormtrooperText11 = new Texture();
196+
Tools::Loaders::load_texture(stormtrooperText11, TEXTURE_PATH + "stormtrooper_head_color.png");
197+
stormtrooperMat1->set_albedo_texture(stormtrooperText11);
198+
Texture* stormtrooperText12 = new Texture();
199+
Tools::Loaders::load_texture(
200+
stormtrooperText12, TEXTURE_PATH + "stormtrooper_head_normal.png", TEXTURE_FORMAT_TYPE_NORMAL);
201+
stormtrooperMat1->set_normal_texture(stormtrooperText12);
202+
Texture* stormtrooperText13 = new Texture();
203+
Tools::Loaders::load_texture(stormtrooperText13, TEXTURE_PATH + "stormtrooper_head_mask.png", TEXTURE_FORMAT_TYPE_NORMAL);
204+
stormtrooperMat1->set_mask_texture(stormtrooperText13, MaskType::UNREAL_ENGINE);
205+
stormtrooperHead->push_material(stormtrooperMat1);
206+
stormtrooperHead->set_name("Head");
207+
stormtrooper->add_child(stormtrooperHead);
200208
m_scene->add(stormtrooper);
209+
201210

202211
m_scene->add(plane);
203212

0 commit comments

Comments
 (0)