aboutsummaryrefslogtreecommitdiff
path: root/src/models.c
diff options
context:
space:
mode:
authorRay <raysan5@gmail.com>2019-02-18 18:46:17 +0100
committerRay <raysan5@gmail.com>2019-02-18 18:46:17 +0100
commitd62652c5b29b322c8c9fa2ab7c7912fe366cd4bc (patch)
tree4a908dfa9c6ee10b5ed4b71fed7b4a3e2b339422 /src/models.c
parent5d0ea7f11063c302e338e03370f2a7d6ce6f6748 (diff)
downloadraylib-d62652c5b29b322c8c9fa2ab7c7912fe366cd4bc.tar.gz
raylib-d62652c5b29b322c8c9fa2ab7c7912fe366cd4bc.zip
Update cgltf library
Added some comments to loader function...
Diffstat (limited to 'src/models.c')
-rw-r--r--src/models.c24
1 files changed, 15 insertions, 9 deletions
diff --git a/src/models.c b/src/models.c
index 5feec0f6..eace0f66 100644
--- a/src/models.c
+++ b/src/models.c
@@ -2748,17 +2748,17 @@ static Mesh LoadIQM(const char *fileName)
#endif
#if defined(SUPPORT_FILEFORMAT_GLTF)
-// Load GLTF mesh data
+// Load glTF mesh data
static Mesh LoadGLTF(const char *fileName)
{
Mesh mesh = { 0 };
- // GLTF file loading
+ // glTF file loading
FILE *gltfFile = fopen(fileName, "rb");
if (gltfFile == NULL)
{
- TraceLog(LOG_WARNING, "[%s] GLTF file could not be opened", fileName);
+ TraceLog(LOG_WARNING, "[%s] glTF file could not be opened", fileName);
return mesh;
}
@@ -2771,22 +2771,28 @@ static Mesh LoadGLTF(const char *fileName)
fclose(gltfFile);
- // GLTF data loading
+ // glTF data loading
cgltf_options options = {0};
cgltf_data data;
cgltf_result result = cgltf_parse(&options, buffer, size, &data);
-
+
+ free(buffer);
+
if (result == cgltf_result_success)
{
printf("Type: %u\n", data.file_type);
printf("Version: %d\n", data.version);
printf("Meshes: %lu\n", data.meshes_count);
+
+ // TODO: Process glTF data and map to mesh
+
+ // NOTE: data.buffers[] and data.images[] should be loaded
+ // using buffers[n].uri and images[n].uri... or use cgltf_load_buffers(&options, data, fileName);
+
+ cgltf_free(&data);
}
- else TraceLog(LOG_WARNING, "[%s] GLTF data could not be loaded", fileName);
+ else TraceLog(LOG_WARNING, "[%s] glTF data could not be loaded", fileName);
- free(buffer);
- cgltf_free(&data);
-
return mesh;
}
#endif