Clean up, clean up;

Everybody everywhere!
This commit is contained in:
bjorn 2016-10-04 15:13:57 -07:00
parent 93979f9ae6
commit 78f0c2d947
4 changed files with 24 additions and 0 deletions

View File

@ -29,6 +29,19 @@ void lovrGraphicsInit() {
lovrGraphicsReset();
}
void lovrGraphicsDestroy() {
vec_deinit(&state.transforms);
mat4_deinit(state.projection);
mat4_deinit(state.lastTransform);
mat4_deinit(state.lastProjection);
lovrShaderDestroy(state.defaultShader);
glDeleteBuffers(1, &state.shapeBuffer);
glDeleteBuffers(1, &state.shapeIndexBuffer);
glDeleteVertexArrays(1, &state.shapeArray);
vec_deinit(&state.shapeData);
vec_deinit(&state.shapeIndices);
}
void lovrGraphicsReset() {
int i;
mat4 matrix;

View File

@ -54,6 +54,7 @@ typedef struct {
#endif
void lovrGraphicsInit();
void lovrGraphicsDestroy();
void lovrGraphicsReset();
void lovrGraphicsClear(int color, int depth);
void lovrGraphicsPresent();

View File

@ -146,6 +146,15 @@ Headset* viveInit() {
return this;
}
void viveDestroy(void* headset) {
Headset* this = (Headset*) headset;
ViveState* state = this->state;
free(state->controllers[CONTROLLER_HAND_LEFT]);
free(state->controllers[CONTROLLER_HAND_RIGHT]);
free(state);
free(this);
}
char viveIsPresent(void* headset) {
Headset* this = (Headset*) headset;
ViveState* state = this->state;

View File

@ -1,6 +1,7 @@
#include "headset.h"
Headset* viveInit();
void viveDestroy();
char viveIsPresent(void* headset);
const char* viveGetType(void* headset);
void viveGetClipDistance(void* headset, float* near, float* far);