diff options
| author | Ray <raysan5@gmail.com> | 2019-02-18 18:46:17 +0100 |
|---|---|---|
| committer | Ray <raysan5@gmail.com> | 2019-02-18 18:46:17 +0100 |
| commit | d62652c5b29b322c8c9fa2ab7c7912fe366cd4bc (patch) | |
| tree | 4a908dfa9c6ee10b5ed4b71fed7b4a3e2b339422 /src/models.c | |
| parent | 5d0ea7f11063c302e338e03370f2a7d6ce6f6748 (diff) | |
| download | raylib-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.c | 24 |
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 |
