bool Init() { texture = new Bitmap; texture->Load("data/darwinian.png"); if(!texture) { std::cout<<"ERROR: Could not load darwinian.png"<<std::endl; return false; } camera = new Cameranode(); camera->Set_position(Vector3(0, 0, 10)); camera->Set_rotation(Vector3(0, 0, 0)); root.Attach_node(camera); light = new Lightnode; light->Set_ambient(2, 2, 2, 1); light->Set_diffuse(1, 1, 1, 1); light->Set_specular(1, 1, 1, 1); camera->Attach_node(light); transform = new Transformnode; light->Attach_node(transform); Vector3 corners[6][4]; corners[0][0] = Vector3(1, 1, -1); corners[0][1] = Vector3(-1, 1, -1); corners[0][2] = Vector3(-1, -1, -1); corners[0][3] = Vector3(1, -1, -1); corners[1][0] = Vector3(1, -1, 1); corners[1][1] = Vector3(-1, -1, 1); corners[1][2] = Vector3(-1, 1, 1); corners[1][3] = Vector3(1, 1, 1); corners[2][0] = Vector3(-1, 1, 1); corners[2][1] = Vector3(-1, -1, 1); corners[2][2] = Vector3(-1, -1, -1); corners[2][3] = Vector3(-1, 1, -1); corners[3][0] = Vector3(1, 1, -1); corners[3][1] = Vector3(1, -1, -1); corners[3][2] = Vector3(1, -1, 1); corners[3][3] = Vector3(1, 1, 1); corners[4][0] = Vector3(1, 1, 1); corners[4][1] = Vector3(-1, 1, 1); corners[4][2] = Vector3(-1, 1, -1); corners[4][3] = Vector3(1, 1, -1); corners[5][0] = Vector3(1, -1, -1); corners[5][1] = Vector3(-1, -1, -1); corners[5][2] = Vector3(-1, -1, 1); corners[5][3] = Vector3(1, -1, 1); for(int i = 0; i<6; ++i) { quads[i] = new Quadnode; quads[i]->Set_corners(corners[i]); quads[i]->Set_texture(texture); transform->Attach_node(quads[i]); } return true; }