próba modularyzacji kodu, dodane klasy lazik oraz plane
- Makefile uwzględnia glfw - projekt w visual studio także powinien linkować glfw - dodano plik .gitignore - klasa lazik stworzona z myślą o łaziku - bliźniaczo podobna klasa plane stworzona z myślą o mapie - dodano surowy projekt mapy (res/models/mapka.obj) - usunięto zbędną klasę sześcian oraz plik wykonywalny .exe - funkcja timestampedCout() przeniesiona do plików timeh.cpp/.hpp, co pozwala na używanie jej wszędzie - w main.cpp: - zakomentowano masę (niepotrzebnego)/przeniesionego kodu - tryb monitorowania wydajności wyłącza ValidateRect(), co wymusza ciągłe renderowanie nowych klatek. pozwala to oszacować wpływ zmian na wydajność programu.
This commit is contained in:
33
lazik.hpp
Normal file
33
lazik.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
#pragma once
|
||||
#include <windows.h>
|
||||
#include "GL/glew.h"
|
||||
#include <gl/gl.h>
|
||||
#include <gl/glu.h>
|
||||
#include <vector>
|
||||
#include <iostream>
|
||||
#include "timeh.hpp"
|
||||
#include "GL/glm/glm.hpp"
|
||||
#include "loadOBJ.h"
|
||||
|
||||
class lazik {
|
||||
private:
|
||||
float c_x{0};
|
||||
float c_y{0};
|
||||
float c_z{0};
|
||||
float rot_x{0};
|
||||
float rot_y{0};
|
||||
float rot_z{0};
|
||||
std::vector <glm::vec3> vertices;
|
||||
std::vector <glm::vec2> uvs;
|
||||
std::vector <glm::vec3> normals; // Won't be used at the moment.
|
||||
GLuint vertexbuffer;
|
||||
GLuint uvbuffer;
|
||||
const char* modelpath;
|
||||
public:
|
||||
lazik(float x, float y, float z, const char* modelpath);
|
||||
void loadModel();
|
||||
void draw();
|
||||
void moveX(float x);
|
||||
void moveY(float y);
|
||||
void moveZ(float z);
|
||||
};
|
||||
Reference in New Issue
Block a user