matte materials
This commit is contained in:
@@ -3,6 +3,7 @@ project(Inferno)
|
||||
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} CMakeModules/)
|
||||
cmake_policy(SET CMP0037 OLD)
|
||||
|
||||
#set(CMAKE_BUILD_TYPE Debug)
|
||||
set(CMAKE_CXX_FLAGS "-Ofast")
|
||||
|
||||
@@ -11,7 +12,7 @@ add_definitions(-DRESOURCES="${CMAKE_SOURCE_DIR}/resources/")
|
||||
set(executable output)
|
||||
set(SrcDIR ./src)
|
||||
set(TestDIR ./test)
|
||||
set(CurrentTest lucy_cornell.cpp)
|
||||
set(CurrentTest stanford_dragon_cornell.cpp)
|
||||
|
||||
set(IncludeDIR ./include)
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
newmtl Default_OBJ.001
|
||||
Ns 225.000000
|
||||
Ka 1.000000 1.000000 1.000000
|
||||
Kd 0.900000 0.900000 0.900000
|
||||
Kd 1.000000 1.000000 1.000000
|
||||
Ks 0.500000 0.500000 0.500000
|
||||
Ke 0.0 0.0 0.0
|
||||
Ni 1.450000
|
||||
|
||||
@@ -33,4 +33,10 @@ public:
|
||||
: Material(colour, 0.0f, shine, 1.0f, gloss, false, false) { };
|
||||
};
|
||||
|
||||
class MatteMaterial : public Material {
|
||||
public:
|
||||
MatteMaterial(glm::vec3 colour)
|
||||
: Material(colour, 0.0f, 0.0f, 1.0f, 0.0f, false, false) { };
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -20,7 +20,7 @@ int main(int argc, char** argv) {
|
||||
|
||||
Material* mat = new GlossyMaterial({ 1.0f, 1.0f, 1.0f }, 0.2f, fastDegreetoRadian(30.0f));
|
||||
|
||||
std::string models = RESOURCES + std::string("//models//");
|
||||
std::string models = RESOURCES + std::string("//models//");
|
||||
std::string lucy = RESOURCES + std::string("//models//lucy.obj");
|
||||
std::string cornell = RESOURCES + std::string("//models//cornell-box.obj");
|
||||
|
||||
|
||||
@@ -21,17 +21,20 @@ int main(int argc, char** argv) {
|
||||
Sphere* sphere = new Sphere({ -0.302, -0.385999, -3.74202 }, 0.03f, new Material({ 0.345f, 0.133f, 0.050f }, 300.0f, 0.0f, 0.0f, 0.0f, false, true));
|
||||
scene->objects.push_back(sphere);
|
||||
|
||||
Material* mat = new GlossyMaterial({ 1.0f, 1.0f, 1.0f }, 0.2f, fastDegreetoRadian(30.0f));
|
||||
//std::vector<Triangle*> tris = LoadTrianglesBasic("E://Projects//Inferno//resources//models//dragon-cornell-size.obj", "E://Projects//Inferno//resources//models", mat);
|
||||
std::vector<Triangle*> tris = LoadTrianglesBasic("/home/ben/programming/inferno/resources/models/dragon-cornell-size.obj", "/home/ben/programming/inferno/resources/models/", mat);
|
||||
std::string models = RESOURCES + std::string("//models//");
|
||||
std::string dragon = RESOURCES + std::string("//models//dragon-cornell-size.obj");
|
||||
std::string cornell = RESOURCES + std::string("//models//cornell-box.obj");
|
||||
|
||||
//Mesh* mesh = new Mesh(tris);
|
||||
//mesh->Translate({ 0.01f, -1.0, -3.6f });
|
||||
//mesh->Optimise();
|
||||
//scene->meshs.push_back(mesh);
|
||||
// Material* mat = new GlossyMaterial({ 1.0f, 1.0f, 1.0f }, 0.2f, fastDegreetoRadian(30.0f));
|
||||
Material* mat = new MatteMaterial({ 1.0f, 1.0f, 1.0f });
|
||||
std::vector<Triangle*> tris = LoadTrianglesBasic(dragon, models, mat);
|
||||
|
||||
// std::vector<Triangle*> tris1 = LoadTrianglesBasic("E://Projects//Inferno//resources//models//cornell-box.obj", "E://Projects//Inferno//resources//models//");
|
||||
std::vector<Triangle*> tris1 = LoadTrianglesBasic("/home/ben/programming/inferno/resources/models/cornell-box.obj", "/home/ben/programming/inferno/resources/models/");
|
||||
Mesh* mesh = new Mesh(tris);
|
||||
mesh->Translate({ 0.01f, -1.0, -3.6f });
|
||||
mesh->Optimise();
|
||||
scene->meshs.push_back(mesh);
|
||||
|
||||
std::vector<Triangle*> tris1 = LoadTrianglesBasic(cornell, models);
|
||||
|
||||
Mesh* mesh1 = new Mesh(tris1);
|
||||
mesh1->Translate({ 0.01f, -1.0, -3.6f });
|
||||
|
||||
Reference in New Issue
Block a user