| 
				
				
				
				 | 
			
			 | 
			
			@ -1,6 +1,49 @@ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			/** | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * cgltf - a single-file glTF 2.0 parser written in C99. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Version: 1.0 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Website: https://github.com/jkuhlmann/cgltf | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Distributed under the MIT License, see notice at the end of this file. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Building: | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Include this file where you need the struct and function | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * declarations. Have exactly one source file where you define | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `CGLTF_IMPLEMENTATION` before including this file to get the | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * function definitions. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Reference: | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_result cgltf_parse(const cgltf_options*, const void*, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * cgltf_size, cgltf_data**)` parses both glTF and GLB data. If | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * this function returns `cgltf_result_success`, you have to call | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_free()` on the created `cgltf_data*` variable. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Note that contents of external files for buffers and images are not | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * automatically loaded. You'll need to read these files yourself using | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * URIs in the `cgltf_data` structure. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_options` is the struct passed to `cgltf_parse()` to control | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * parts of the parsing process. You can use it to force the file type | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * and provide memory allocation callbacks. Should be zero-initialized | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * to trigger default behavior. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_data` is the struct allocated and filled by `cgltf_parse()`. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * It generally mirrors the glTF format as described by the spec (see | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * https://github.com/KhronosGroup/glTF/tree/master/specification/2.0). | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `void cgltf_free(cgltf_data*)` frees the allocated `cgltf_data` | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * variable. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_result cgltf_load_buffers(const cgltf_options*, cgltf_data*, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * const char*)` can be optionally called to open and read buffer | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * files using the `FILE*` APIs. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_result cgltf_parse_file(const cgltf_options* options, const | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * char* path, cgltf_data** out_data)` can be used to open the given | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * file using `FILE*` APIs and parse the data using `cgltf_parse()`. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * `cgltf_result cgltf_validate(cgltf_data*)` can be used to do additional | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * checks to make sure the parsed glTF data is valid. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 */ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#ifndef CGLTF_H_INCLUDED__ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#define CGLTF_H_INCLUDED__ | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -462,6 +505,10 @@ void cgltf_free(cgltf_data* data); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void cgltf_node_transform_local(const cgltf_node* node, cgltf_float* out_matrix); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void cgltf_node_transform_world(const cgltf_node* node, cgltf_float* out_matrix); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#ifdef __cplusplus | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#endif /* #ifndef CGLTF_H_INCLUDED__ */ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			/* | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -4266,10 +4313,6 @@ static void jsmn_init(jsmn_parser *parser) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#endif /* #ifdef CGLTF_IMPLEMENTATION */ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#ifdef __cplusplus | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			/* cgltf is distributed under MIT license: | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			 * Copyright (c) 2018 Johannes Kuhlmann | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |