Game rendering almost complete.
All that's missing is that for some reason one row/column won't render.
This commit is contained in:
parent
adc8813e0d
commit
acff4fc4f6
@ -142,21 +142,65 @@ void System::run() {
|
||||
glm::vec3(0,0,0), // where the camera is looking
|
||||
glm::vec3(0,1,0) // which way is vertically up
|
||||
);
|
||||
glm::mat4 mod = glm::mat4(1.0f); // identity matrix, object is at origin
|
||||
shaders.at("default").setMat4("model", mod);
|
||||
shaders.at("default").setMat4("proj", proj);
|
||||
shaders.at("default").setMat4("view", view);
|
||||
}
|
||||
|
||||
asset_mngr.getModel("board")->setColor(1,0,0);
|
||||
{
|
||||
// board model
|
||||
glm::mat4 model = glm::mat4(1.0f);
|
||||
shaders.at("default").setMat4("model", model);
|
||||
}
|
||||
asset_mngr.getModel("board")->setColor(0.87f,0.721f,0.529f);
|
||||
asset_mngr.getModel("board")->draw(shaders.at("default"));
|
||||
|
||||
asset_mngr.getModel("cube")->setColor(0,1,0);
|
||||
asset_mngr.getModel("cube")->draw(shaders.at("default"));
|
||||
{
|
||||
// temprary piece model
|
||||
glm::mat4 model = glm::mat4(1.0f);
|
||||
model *= glm::translate(model,
|
||||
glm::vec3((tempx-1) * 3, 2.5f, (tempy-1) * 3));
|
||||
shaders.at("default").setMat4("model", model);
|
||||
}
|
||||
if(xturn)
|
||||
{
|
||||
if(board[tempx][tempy] not_eq 0)
|
||||
asset_mngr.getModel("cube")->setColor(1,0,0);
|
||||
else
|
||||
asset_mngr.getModel("cube")->setColor(0,1,0);
|
||||
|
||||
asset_mngr.getModel("cube")->draw(shaders.at("default"));
|
||||
}
|
||||
else
|
||||
{
|
||||
if(board[tempx][tempy] not_eq 0)
|
||||
asset_mngr.getModel("sphere")->setColor(1,0,0);
|
||||
else
|
||||
asset_mngr.getModel("sphere")->setColor(0,1,0);
|
||||
|
||||
asset_mngr.getModel("sphere")->draw(shaders.at("default"));
|
||||
}
|
||||
|
||||
for(unsigned int i = 0; i < 3; ++i)
|
||||
{
|
||||
for(unsigned int j = 0; j < 3; ++j)
|
||||
{
|
||||
if(board[i][j] not_eq 0)
|
||||
{
|
||||
glm::mat4 model = glm::mat4(1.0f);
|
||||
model = glm::translate(model,
|
||||
glm::vec3((i-1) * 3, 1, (j-1) * 3));
|
||||
shaders.at("default").setMat4("model", model);
|
||||
if(board[i][j] == 1)
|
||||
{
|
||||
asset_mngr.getModel("cube")->setColor(0,0,1);
|
||||
asset_mngr.getModel("cube")->draw(shaders.at("default"));
|
||||
}
|
||||
else if(board[i][j] == 2)
|
||||
{
|
||||
asset_mngr.getModel("sphere")->setColor(0,0,1);
|
||||
asset_mngr.getModel("sphere")->draw(shaders.at("default"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -175,16 +219,20 @@ void System::handleKey(SDL_Keysym key){
|
||||
switch(key.sym)
|
||||
{
|
||||
case SDLK_UP:
|
||||
tempy = (tempy + 1) % 3;
|
||||
if(tempy > 0)
|
||||
tempy--;
|
||||
break;
|
||||
case SDLK_DOWN:
|
||||
tempy = (tempy - 1) % 3;
|
||||
if(tempy < 2)
|
||||
tempy++;
|
||||
break;
|
||||
case SDLK_RIGHT:
|
||||
tempx = (tempx + 1) % 3;
|
||||
if(tempx < 2)
|
||||
tempx++;
|
||||
break;
|
||||
case SDLK_LEFT:
|
||||
tempx = (tempx - 1) % 3;
|
||||
if(tempx > 0)
|
||||
tempx--;
|
||||
break;
|
||||
case SDLK_SPACE:
|
||||
if(board[tempx][tempy]!=0){
|
||||
|
Loading…
Reference in New Issue
Block a user