Syoyo Fujita
7a570c88d9
Initialize light
and emitter
members. Fixes #431
...
Include `light` and `emitter` comparison in Node::operator==()
2023-06-19 21:52:13 +09:00
Baranob_Ilya
879cb473a3
Added parsing and serializing of audio emitters for scene (global sources)
2023-06-12 13:35:05 +04:00
Baranob_Ilya
c9657be1de
Forgot to add KHR_audio to used extensions
2023-06-12 12:34:34 +04:00
Baranob_Ilya
78864c8d3a
Added KHR_audio extension. Parsing and serialization.
...
Added KHR_audio extension parsing and serializing. Only for ascii
2023-06-12 10:43:52 +04:00
David Siegel
8d5d0b34be
clean up
2023-06-07 15:35:35 +02:00
David Siegel
a1a34cb54d
fix syntax error
2023-06-07 15:30:02 +02:00
David Siegel
cfe64fb6c8
KHR_lights_punctual: Serialize node light refs
...
This is surprisingly involved:
1. Add non-const json iterators, FindMember(…) and GetValue(…)
2. Add json utilities IsEmpty(…) and Erase(…)
3. Serialize the property and clean up
2023-06-07 15:18:38 +02:00
Syoyo Fujita
c201efb998
Merge pull request #422 from agnat/fix/add_missing_extras_and_extensions
...
Add missing extras and extensions fields
2023-06-07 02:47:59 +09:00
Syoyo Fujita
b88e9cc52a
Merge pull request #423 from agnat/finish_KHR_lights_puncutal
...
KHR_lights_punctual: parse light source references from scene nodes
2023-06-06 23:12:50 +09:00
David Siegel
07616e8190
refactor extension and extra serialization
...
Add missing serialization:
accessor.extensions
accessor.sparse.extensions
accessor.sparse.extras
accessor.sparse.indices.extensions
accessor.sparse.indices.extras
accessor.sparse.values.extensions
accessor.sparse.values.extras
animation.channel.target.extras
animation.sampler.extensions
buffer.extensions
bufferView.extensions
sampler.extensions
camera.orthographic.extensions
camera.perspective.extensions
skin.extras
skin.extensions
2023-06-06 15:40:29 +02:00
David Siegel
bec8a6d54f
rewrite ForEachInArray as a simple C++11 function
...
no need for std::function here. A free function with an unspecified callback will do nicely.
2023-06-06 15:36:07 +02:00
David Siegel
157063fa1b
fix: add missing nullptr check
2023-06-06 15:31:58 +02:00
David Siegel
c164878d0f
parse light source references
2023-06-06 06:18:14 +02:00
David Siegel
d852f50d49
Add missing extras and extensions fields
...
Handle extras and extensions in nested “sub-objects”:
animation.channel.target.extras
accessor.sparse.extras
accessor.sparse.extensions
accessor.sparse.indices.extras
accessor.sparse.indices.extensions
accessor.sparse.values.extras
accessor.sparse.values.extensions
2023-06-06 00:07:37 +02:00
David Siegel
22cafa1032
remove duplicate code
...
use a function to parse extras and extensions
2023-06-06 00:07:37 +02:00
David Siegel
47208b234d
fix warnings: unused variable
2023-06-06 00:07:37 +02:00
Syoyo Fujita
5a6df34d99
Simplify version comment in tiny_gltf.h
...
Remove wuffs code(which was accidently adde to `release` branch)
2023-06-04 19:07:00 +09:00
Syoyo Fujita
147a00a601
Prevent duplicated key generation when serializing lights + RapidJSON backend. Fixes #420
2023-06-04 05:45:24 +09:00
David Siegel
cc93e1fd25
Fix: Actually invoke the user-supplied function
2023-04-26 12:13:41 +02:00
Syoyo Fujita
59cc44ad4f
Merge pull request #417 from syoyo/filesize-check
...
Fix to #416
2023-04-23 23:15:07 +09:00
Syoyo Fujita
1a5046e06b
Fix MSVC compile failure on AppVeyor CI.
2023-04-23 23:08:41 +09:00
Syoyo Fujita
877d856e71
Format error message.
...
Add regression test of issue-416.
2023-04-23 21:47:31 +09:00
Syoyo Fujita
b534b6b0d8
Fix syntax.
2023-04-23 21:40:23 +09:00
Syoyo Fujita
ecfd37dee2
- Add GetFileSizeInBytes Filesystem Callback
...
- Add feature to limit file size for external resources(images, buffers)
- Use strlen to correctly retrieve a string from a string which contains multiple null-characters.
- Return fail when opening a directory(Posix only). Fixes #416
2023-04-23 21:31:30 +09:00
Loïc Escales
a75355b018
Fix serialization of AnimationChannel::target_node when it is zero
2023-04-18 21:03:39 +02:00
David Siegel
49caa65177
Fix #411 by adding a Value(const char *) constructor.
...
Avoid implicit conversion of pointers to bool. Closes #411 .
2023-04-08 23:44:53 +02:00
Marco Langer
7658624bb4
Added error handling to ostream writing
2023-03-12 19:26:05 +01:00
David
03ad33cc8d
Fixed global namespace issue
2023-02-15 23:35:51 -06:00
David
3831802717
Fix RapidJSON implementation (hopefully)
2023-02-15 23:21:09 -06:00
David
1f9a4b97a3
Added detail namespace to prevent namespace conflicts
2023-02-15 22:56:18 -06:00
Jack Mousseau
283b552a4e
Fix animation channel target node optionality
2023-01-15 11:45:45 -08:00
Syoyo Fujita
c2ca97b38b
v2.8.1
2023-01-13 18:15:21 +09:00
s00665032
137a7ca999
Missed serialization texture sampler name fixed.
...
According to the glTF 2.0 specification it exists, the internal tinygltf structure contains 'name' field as well.
2023-01-13 12:52:08 +07:00
Syoyo Fujita
a6c3945ed3
Bump version 2.8.0.
2023-01-10 20:42:24 +09:00
Pyarelal Knowles
385946dfd8
add URI encode/decode API
...
Tinygltf is able to write files defined by a URI, so it needs to be able
to decode it. Since it may also modify the path where the image is saved
it may need to re-encode the URI too. This patch provides an API to set
URI encoding and decoding callbacks and exposes the default decode
method.
Uses the existing dlib::urldecode as a decode default. The encode
callback is left null, matching existing behaviour.
Updates the WriteImageDataFunction signature to include
tinygltf::URICallbacks.
Decodes the image and buffer uris before using them as a filename.
If the encode callback is set, encodes the written image location in the
default WriteImageDataFunction and encodes generated buffer locations
when writing .bin files.
Adds a save+load step to the test image-uri-spaces to verify uri
encoding.
2023-01-09 20:54:29 -08:00
Pyarelal Knowles
a9121550b9
SerializeGltfImage: add missing & std::string ref
...
Hopefully the compiler would optimize this away but better to avoid the
copy in the first place.
2022-12-29 14:12:29 -08:00
Pyarelal Knowles
d2b0af6915
propagate image writing failures
...
Modifies UpdateImageObject() so that Returning false from the
WriteImageDataFunction callback results in the WriteGltfScene*() call
returning false.
Does not call WriteImageDataFunction if there is no image data.
Adds test case serialize-image-failure to verify the callback return
code is able to cause an overall failure to save the gltf.
2022-12-29 13:50:17 -08:00
Syoyo Fujita
584f1dfbe4
Merge branch 'release' of github.com:syoyo/tinygltf into release
2022-12-29 21:13:48 +09:00
Pyarelal Knowles
de75d87cfd
allow serializing a const Model
...
Adds 'const' to all Serialize*() methods.
Updates WriteImageData callback to take a URI out pointer that was
previously being written to the Image::uri, which is now const.
This breaks the WriteImageData API and as a side effect, Image::uri will
no longer contain the written image URI after saving.
Adds test serialize-const-image, which verifies the model's image is not
changed (because it's const), but the uri written to the gltf json is
still correct.
Adds test serialize-image-callback that defines a WriteImageDataFunction
and also verifies the uri can be overwritten.
2022-12-28 17:20:09 -08:00
Serdar Kocdemir
264ae4c131
Avoid multiple asset_manager definition on Android
...
Using TINYGLTF_IMPLEMENTATION to make the actual definition of the 'asset_manager' global variable.
2022-10-30 22:32:59 +00:00
imallett
3a295887d6
Patch to fix previous commit for MinGW.
2022-10-07 11:20:39 -07:00
imallett
d9ce9eb9d2
Fix a gazillion typos.
2022-10-07 10:37:09 -07:00
imallett
56e1098993
Fix various type mismatches and header include case (fixes compile warnings on Clang).
2022-10-07 10:35:16 -07:00
operatios
1668d1ecc5
Fix UTF-8 filepath on LLVM MinGW
2022-09-24 22:37:14 +03:00
Syoyo Fujita
e0b625561c
v2.6.3
2022-09-19 03:36:58 +09:00
Syoyo Fujita
612e57816f
Fix handling <4 byte BIN data.
...
Fix handling GLB file with empty CHUNK1(BIN).
2022-09-18 21:01:39 +09:00
Kh4n
6514490090
update gitignore to remove test file
...
readd accidental removals in gitignore
undo autoformat
more undo autoformatting
2022-09-17 12:52:59 -05:00
Syoyo Fujita
c670f08a3b
Fix parsing GLB file with empty Chunk1(BIN data).
2022-09-17 19:52:25 +09:00
Syoyo Fujita
eec4c98862
Add note on v2.6.2(Fix out-of-bounds access of accessors. PR#379)
2022-09-16 17:27:20 +09:00
AlvaroBarua
43172238f7
Fixes compiler warning on VS (Unreachable code detected)
2022-09-11 00:41:43 +01:00