diff --git a/src/graphics/graphics.c b/src/graphics/graphics.c index 21d4c68b..7f005a03 100644 --- a/src/graphics/graphics.c +++ b/src/graphics/graphics.c @@ -489,10 +489,10 @@ void lovrGraphicsPlane(DrawMode mode, Texture* texture, float x, float y, float void lovrGraphicsPlaneFullscreen(Texture* texture) { float data[] = { - -1, 1, 0, 0, 0, - -1, -1, 0, 0, 1, - 1, 1, 0, 1, 0, - 1, -1, 0, 1, 1 + -1, 1, 0, 0, 1, + -1, -1, 0, 0, 0, + 1, 1, 0, 1, 1, + 1, -1, 0, 1, 0 }; Shader* lastShader = lovrGraphicsGetShader(); @@ -540,44 +540,44 @@ void lovrGraphicsCube(DrawMode mode, Texture* texture, float x, float y, float z } else { float data[] = { // Front - -.5, -.5, -.5, 0, 0, -1, 0, 1, - .5, -.5, -.5, 0, 0, -1, 1, 1, - -.5, .5, -.5, 0, 0, -1, 0, 0, - .5, .5, -.5, 0, 0, -1, 1, 0, + -.5, -.5, -.5, 0, 0, -1, 0, 0, + .5, -.5, -.5, 0, 0, -1, 1, 0, + -.5, .5, -.5, 0, 0, -1, 0, 1, + .5, .5, -.5, 0, 0, -1, 1, 1, // Right - .5, .5, -.5, 1, 0, 0, 0, 0, - .5, -.5, -.5, 1, 0, 0, 0, 1, - .5, .5, .5, 1, 0, 0, 1, 0, - .5, -.5, .5, 1, 0, 0, 1, 1, + .5, .5, -.5, 1, 0, 0, 0, 1, + .5, -.5, -.5, 1, 0, 0, 0, 0, + .5, .5, .5, 1, 0, 0, 1, 1, + .5, -.5, .5, 1, 0, 0, 1, 0, // Back - .5, -.5, .5, 0, 0, 1, 0, 1, - -.5, -.5, .5, 0, 0, 1, 1, 1, - .5, .5, .5, 0, 0, 1, 0, 0, - -.5, .5, .5, 0, 0, 1, 1, 0, + .5, -.5, .5, 0, 0, 1, 0, 0, + -.5, -.5, .5, 0, 0, 1, 1, 0, + .5, .5, .5, 0, 0, 1, 0, 1, + -.5, .5, .5, 0, 0, 1, 1, 1, // Left - -.5, .5, .5, -1, 0, 0, 0, 0, - -.5, -.5, .5, -1, 0, 0, 0, 1, - -.5, .5, -.5, -1, 0, 0, 1, 0, - -.5, -.5, -.5, -1, 0, 0, 1, 1, + -.5, .5, .5, -1, 0, 0, 0, 1, + -.5, -.5, .5, -1, 0, 0, 0, 0, + -.5, .5, -.5, -1, 0, 0, 1, 1, + -.5, -.5, -.5, -1, 0, 0, 1, 0, // Bottom - -.5, -.5, -.5, 0, -1, 0, 0, 1, - -.5, -.5, .5, 0, -1, 0, 0, 0, - .5, -.5, -.5, 0, -1, 0, 1, 1, - .5, -.5, .5, 0, -1, 0, 1, 0, + -.5, -.5, -.5, 0, -1, 0, 0, 0, + -.5, -.5, .5, 0, -1, 0, 0, 1, + .5, -.5, -.5, 0, -1, 0, 1, 0, + .5, -.5, .5, 0, -1, 0, 1, 1, // Adjust - .5, -.5, .5, 0, 1, 0, 0, 0, - -.5, .5, -.5, 0, 1, 0, 0, 0, + .5, -.5, .5, 0, 1, 0, 0, 1, + -.5, .5, -.5, 0, 1, 0, 0, 1, // Top - -.5, .5, -.5, 0, 1, 0, 0, 0, - .5, .5, -.5, 0, 1, 0, 1, 0, - -.5, .5, .5, 0, 1, 0, 0, 1, - .5, .5, .5, 0, 1, 0, 1, 1 + -.5, .5, -.5, 0, 1, 0, 0, 1, + .5, .5, -.5, 0, 1, 0, 1, 1, + -.5, .5, .5, 0, 1, 0, 0, 0, + .5, .5, .5, 0, 1, 0, 1, 0 }; vec_clear(&state.shapeData); diff --git a/src/loaders/model.c b/src/loaders/model.c index 471acf46..a0e3751f 100644 --- a/src/loaders/model.c +++ b/src/loaders/model.c @@ -31,7 +31,7 @@ ModelData* lovrModelDataFromFile(void* data, int size) { modelData->hasNormals = 0; modelData->hasTexCoords = 0; - unsigned int flags = aiProcessPreset_TargetRealtime_MaxQuality | aiProcess_OptimizeGraph | aiProcess_FlipUVs; + unsigned int flags = aiProcessPreset_TargetRealtime_MaxQuality | aiProcess_OptimizeGraph; const struct aiScene* scene = aiImportFileFromMemory(data, size, flags, NULL); // Meshes diff --git a/src/util.c b/src/util.c index 5e1c48c5..4a8ac238 100644 --- a/src/util.c +++ b/src/util.c @@ -20,6 +20,7 @@ void error(const char* format, ...) { } unsigned char* loadImage(void* data, size_t size, int* w, int* h, int* n, int channels) { + stbi_set_flip_vertically_on_load(1); return stbi_load_from_memory(data, size, w, h, n, channels); }