void InitScene() { DiSceneManager* sm = DiBase::Driver->GetSceneManager(); sm->AttachObject(make_shared<DiModel>("columns", "columns.model")); sm->AttachObject(make_shared<DiModel>("bathlower", "romanbathlower.model")); sm->AttachObject(make_shared<DiModel>("bathupper", "romanbathupper.model")); sm->GetSkybox()->Enable(1000, "park.dds"); SetupWater(sm); }
void InitScene() { DiSceneManager* sm = DiBase::Driver->GetSceneManager(); mat = DiMaterial::QuickCreate("lambert_v", "lambert_p"); mat->SetDiffuse(DiColor::White); sm->SetAmbientColor(DiColor(0.1f, 0.1f, 0.1f, 0.1f)); DiDirLightPtr dirlight = make_shared<DiDirLight>(); sm->AttachObject(dirlight); dirlight->SetColor(DiColor()); dirlight->SetDirection(DiVec3(-1, -1, -2).normalisedCopy()); int amount = 2; DiCullNode* parent = sm->GetRootNode(); for (int i = 0; i < amount; i++) { DiSimpleShapePtr model = make_shared<DiSimpleShape>(); model->CreateBox(10); model->SetMaterial(mat); DiCullNode* node = parent->CreateChild(); node->AttachObject(model); node->Translate(10, 0, 0); nodes.push_back(node); parent = node; } parent = sm->GetRootNode(); for (int i = 0; i < amount; i++) { DiSimpleShapePtr model = make_shared<DiSimpleShape>(); model->CreateBox(10); model->SetMaterial(mat); DiCullNode* node = parent->CreateChild(); node->AttachObject(model); node->Translate(-10, 0, 0); nodes.push_back(node); parent = node; } parent = sm->GetRootNode(); for (int i = 0; i < amount; i++) { DiSimpleShapePtr model = make_shared<DiSimpleShape>(); model->CreateBox(10); model->SetMaterial(mat); DiCullNode* node = parent->CreateChild(); node->AttachObject(model); node->Translate(0, 10, 0); nodes.push_back(node); parent = node; } parent = sm->GetRootNode(); for (int i = 0; i < amount; i++) { DiSimpleShapePtr model = make_shared<DiSimpleShape>(); model->CreateBox(10); model->SetMaterial(mat); DiCullNode* node = parent->CreateChild(); node->AttachObject(model); node->Translate(0, -10, 0); nodes.push_back(node); parent = node; } parent = sm->GetRootNode(); for (int i = 0; i < amount; i++) { DiSimpleShapePtr model = make_shared<DiSimpleShape>(); model->CreateBox(10); model->SetMaterial(mat); DiCullNode* node = parent->CreateChild(); node->AttachObject(model); node->Translate(0, 0, 10); nodes.push_back(node); parent = node; } parent = sm->GetRootNode(); for (int i = 0; i < amount; i++) { DiSimpleShapePtr model = make_shared<DiSimpleShape>(); model->CreateBox(10); model->SetMaterial(mat); DiCullNode* node = parent->CreateChild(); node->AttachObject(model); node->Translate(0, 0, -10); nodes.push_back(node); parent = node; } }