//Allg Shader
Shader* shader1 = new Shader("basicTexture_VS.hlsl", "lightingTexture_FS.hlsl");
-// Shader* shaderSky = new Shader("skybox_VS.hlsl", "skybox_FS.hlsl");
// load LVL
SceneObject* tmp_world = new SceneObject(shader1, scale(3.f * vec3(1.f, .3f, 1.f)), vec4(4.0f, 1.0f, 1.0f, 2.0f), "level_test.dae", "model_levelTest_2D.png");
tmp_world->ignore = true;
current_world->addObject(tmp_world);
- current_world->addObject(new SceneObject(shader1, translate(vec3(-3.f, 1.f, 0.f)), vec4(1.0f, 1.0f, 1.0f, 3.0f), new BBox(), ""));
+// current_world->addObject(new SceneObject(shader1, translate(vec3(-3.f, 1.f, 0.f)), vec4(1.0f, 1.0f, 1.0f, 3.0f), new BBox(), ""));
//Player
SceneObject* tmp_playerObject = new Marvin(shader1, translate(vec3(1.f, 3.f, 1.f))*rotate((float)M_PI_4,vec3(0.f,1.f,0.f)));
tmp_playerObject->yStatic= false;
- //tmp_playerObject->setIntelligenz(new PlayerI(tmp_playerObject));
current_world->addObject(tmp_playerObject);
current_world->setLookAt(tmp_playerObject);
- //player1 = Player(tmp_playerObject);
-
- // World
- //SceneObject* tmp_world = new SceneObject(shader1, scale(vec3(15.f)), "sphere/sphere.dae", "sky_withstars.png",1.f,1.f,1.f,vec3(0.f));
- //tmp_world->setCollision(false);
-
- //SceneObject::setTextureDanger("model_cow.jpg");
- //SceneObject::setTextureSave("model_cow.jpg");
-
- //current_world->addObject(tmp_world);
-
- //int size = 5;
- //int steps = 10;
-
- //vec3 pos;
-
- //SceneObject* tmp_enemy;
- //for (auto i = 0; i < 10;++i)
- //{
- // pos = vec3(((float)(rand() % (size*steps * 2)) / steps - size), ((float)(rand() % (size*steps * 2)) / steps - size), ((float)(rand() % (size*steps * 2)) / steps - size));
- // if (VektorAbs(pos) < 2)
- // {
- // --i;
- // continue;
- // }
- // tmp_enemy = new SceneObject(shader1, translate(pos), "cow/cow.dae", "", (float)(rand() % 10 + 2) / 10.f);
- // tmp_enemy->setEnemy(true);
- // current_world->addObject(tmp_enemy);
- // //cout << ((float)(rand() % (size*steps * 2)) / steps - size) << ((float)(rand() % (size*steps * 2)) / steps - size) << ((float)(rand() % (size*steps * 2)) / steps - size) << endl;
- //}
- //ein Gegner
+
//current_world->addObject(new SceneObject(shader1, glm::mat4(1.0f), "Player.dae", "model_player.png"));
//current_world->addObject(new SceneObject(shader1, translate(vec3(-3.f, .4f, 0.f))*scale(vec3(3.f)), "cow/cow.dae", "model_cow_2D.jpg"));
current_world->addObject(new SceneObject(shader1, translate(vec3(-3.f, .4f, 0.f))*scale(vec3(.4f)), vec4(3.0f, 0.5f, 0.4f, 1.5f), "duck.dae", "model_duck_2D.png"));
-
- //import("level_test.dae", current_world, shader1);
-
-
-
-
}
float vertex[] { -.5f, -.5f, -.5f, .5f, -.5f, -.5f, .5f, .5f, -.5f, -.5f, .5f, -.5f, -.5f, -.5f, .5f, .5f, -.5f, .5f, .5f, .5f, .5f, -.5f, .5f, .5f };
+ BBmin = vec3(-.5f);
+ BBmax = vec3(.5f);
+ updateBB(BBmin, BBmax);
+
//import("skybox.dae", numvertices, numfaces, vertex, uvs, normals, index, 0);
genBuffer(vertexBuffer, numvertices * 3 * sizeof(float), (void*)vertex);
if (BoundingBox==nullptr)
{
BoundingBox = new BBox();
-// BBoxShader = new Shader("basic_FS.hlsl", "basic_VS.hlsl");
+ //BBoxShader = new Shader("basic_FS.hlsl", "basic_VS.hlsl");
BoundingBox->bindShader(Graphix::shader_BBox);
- //auto tmp = Graphix::shader_BBox->getUniformLocation("uFragmentColor");
+ //int tmp = Graphix::shader_BBox->getUniformLocation("uFragmentColor");
//if (tmp >= 0)
- // glUniform4fv((int)Graphix::shader_BBox, 1, value_ptr(vec4(.3f,.9f,.9f,1.f)));
-
+ // glUniform4fv(Graphix::shader_BBox->getHandle(), 1, value_ptr(vec4(.3f, .9f, .9f, 1.f)));
}
// BoundingBox->bindShader(_shader);
BoundingBox->drawModel(Graphix::shader_BBox, (Texture*)nullptr, _modelMat*translate(BBposition)*scale(BBsize), vec4(1.0f, 1.0f, 1.0f, 3.0f));
getBBsp(sizeA, posA);
_model->getBBsp(sizeB, posB);
- posA = (vec3)(_modelMatThis*vec4(posA, 1.f)); //transpose sollte eigentlich reichen
- posB = (vec3)(_modelMatOther*vec4(posB, 1.f));
+ posA = posA+(vec3)(_modelMatThis[3]); //transpose sollte eigentlich reichen
+ posB = posB+(vec3)(_modelMatOther[3]);
sizeA = rotateSize(sizeA, _modelMatThis);
sizeB = rotateSize(sizeB, _modelMatOther);