zatrzymanie statku po kolizji
This commit is contained in:
parent
83173bfbdd
commit
82a1d0ce8a
@ -8,7 +8,6 @@
|
|||||||
#include "Shader_Loader.h"
|
#include "Shader_Loader.h"
|
||||||
#include "Render_Utils.h"
|
#include "Render_Utils.h"
|
||||||
#include "Texture.h"
|
#include "Texture.h"
|
||||||
//#include "../SpriteRenderer.h"
|
|
||||||
|
|
||||||
#include "Box.cpp"
|
#include "Box.cpp"
|
||||||
#include <assimp/Importer.hpp>
|
#include <assimp/Importer.hpp>
|
||||||
@ -58,7 +57,6 @@ GLuint programSun;
|
|||||||
GLuint programTex;
|
GLuint programTex;
|
||||||
GLuint programSkyBox;
|
GLuint programSkyBox;
|
||||||
GLuint programSpaceShip;
|
GLuint programSpaceShip;
|
||||||
GLuint programSprite;
|
|
||||||
|
|
||||||
Core::Shader_Loader shaderLoader;
|
Core::Shader_Loader shaderLoader;
|
||||||
|
|
||||||
@ -79,6 +77,8 @@ unsigned int textureID;
|
|||||||
|
|
||||||
bool gameOver = false;
|
bool gameOver = false;
|
||||||
|
|
||||||
|
float angleSpeed = 0.005f;
|
||||||
|
float moveSpeed = 0.0025f;
|
||||||
|
|
||||||
struct Planet {
|
struct Planet {
|
||||||
glm::vec3 currentPos;
|
glm::vec3 currentPos;
|
||||||
@ -104,6 +104,8 @@ struct Satellite {
|
|||||||
std::vector<Planet> planets;
|
std::vector<Planet> planets;
|
||||||
std::vector<Satellite> satellites;
|
std::vector<Satellite> satellites;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
glm::mat4 createCameraMatrix()
|
glm::mat4 createCameraMatrix()
|
||||||
{
|
{
|
||||||
glm::vec3 cameraSide = glm::normalize(glm::cross(cameraDir,glm::vec3(0.f,1.f,0.f)));
|
glm::vec3 cameraSide = glm::normalize(glm::cross(cameraDir,glm::vec3(0.f,1.f,0.f)));
|
||||||
@ -398,6 +400,8 @@ void renderScene(GLFWwindow* window)
|
|||||||
);
|
);
|
||||||
|
|
||||||
glUseProgram(0);
|
glUseProgram(0);
|
||||||
|
|
||||||
|
|
||||||
glfwSwapBuffers(window);
|
glfwSwapBuffers(window);
|
||||||
}
|
}
|
||||||
void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
||||||
@ -497,8 +501,10 @@ void init(GLFWwindow* window)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void gameOverScreen(GLFWwindow* window) {
|
void gameOverScreen(GLFWwindow* window) {
|
||||||
// jakies game over dla jego
|
moveSpeed = 0;
|
||||||
|
angleSpeed = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void shutdown(GLFWwindow* window)
|
void shutdown(GLFWwindow* window)
|
||||||
@ -512,8 +518,8 @@ void processInput(GLFWwindow* window)
|
|||||||
glm::vec3 spaceshipSide = glm::normalize(glm::cross(spaceshipDir, glm::vec3(0.f, 1.f, 0.f)));
|
glm::vec3 spaceshipSide = glm::normalize(glm::cross(spaceshipDir, glm::vec3(0.f, 1.f, 0.f)));
|
||||||
glm::vec3 spaceshipUp = glm::vec3(0.f, 1.f, 0.f);
|
glm::vec3 spaceshipUp = glm::vec3(0.f, 1.f, 0.f);
|
||||||
|
|
||||||
float angleSpeed = 0.005f;
|
//float angleSpeed = 0.005f;
|
||||||
float moveSpeed = 0.0025f;
|
//float moveSpeed = 0.0025f;
|
||||||
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS) {
|
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS) {
|
||||||
glfwSetWindowShouldClose(window, true);
|
glfwSetWindowShouldClose(window, true);
|
||||||
}
|
}
|
||||||
@ -543,8 +549,8 @@ void processInput(GLFWwindow* window)
|
|||||||
|
|
||||||
|
|
||||||
void renderLoop(GLFWwindow* window) {
|
void renderLoop(GLFWwindow* window) {
|
||||||
|
|
||||||
double timeOfLastUpdate = glfwGetTime();
|
float timeOfLastUpdate = glfwGetTime();
|
||||||
int loopCount = 0;
|
int loopCount = 0;
|
||||||
int interval = 2500;
|
int interval = 2500;
|
||||||
|
|
||||||
@ -567,6 +573,7 @@ void renderLoop(GLFWwindow* window) {
|
|||||||
|
|
||||||
if (checkCollision(spaceshipPos, satellite.currentPos, satellite.modelScale)) {
|
if (checkCollision(spaceshipPos, satellite.currentPos, satellite.modelScale)) {
|
||||||
//placeholder
|
//placeholder
|
||||||
|
gameOver = true;
|
||||||
std::cout << "Kolizja statku z satelita " << index << std::endl;
|
std::cout << "Kolizja statku z satelita " << index << std::endl;
|
||||||
}
|
}
|
||||||
++index;
|
++index;
|
||||||
@ -585,6 +592,7 @@ void renderLoop(GLFWwindow* window) {
|
|||||||
if (gameOver) {
|
if (gameOver) {
|
||||||
gameOverScreen(window);
|
gameOverScreen(window);
|
||||||
}
|
}
|
||||||
|
|
||||||
glfwPollEvents();
|
glfwPollEvents();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user