summaryrefslogtreecommitdiff
path: root/modules/gltf/gltf_document.cpp
AgeCommit message (Collapse)Author
2022-12-04Use system fonts as fallback and improve system font handling.bruvzg
Add support for font weight and stretch selection when using system fonts. Add function to get system fallback font from a font name, style, text, and language code. Implement system font support for Android. Use system fonts as a last resort fallback.
2022-11-29Merge pull request #68665 from TokageItLab/cut-unkeyed-gltf-animRémi Verschelde
Add "Trimming" option to cut un-keyed timeline before first key in glTF animation
2022-11-29Add trimming option to cut un-keyed timeline before first key in gltfSilc Renew
2022-11-24Merge pull request #69083 from fire/abstract_gltf_materialRémi Verschelde
Cache materials in gltf as the abstract class of Material in GLTFDocument
2022-11-24Cache materials in gltf as the abstract class of MaterialK. S. Ernest (iFire) Lee
Use the abstract material class instead of BaseMaterial3D. This allows inserting ShaderMaterials into gltf. Like in VRM.
2022-11-22Add unregister for GLTFDocumentExtensionRedMser
2022-11-21Add three new methods to GLTFDocumentExtensionAaron Franke
2022-11-09Change the way GLTFDocumentExtension classes are registeredAaron Franke
Also move GLTFDocumentExtension into the extensions folder
2022-11-01Replace Quaternion Euler constructor with `from_euler` methodAaron Franke
2022-10-14Make some Image methods statickobewi
2022-10-10SCons: Re-enable treating `#warning` as error with `werror`Rémi Verschelde
Replace all TODO uses of `#warning` by proper TODO comments, and will open matching bug reports to keep track of them. We don't have a great track record fixing TODOs, but I'd wager we're even worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-07Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg
change warnings=all to use /W4.
2022-10-03GLTF imports & exports material texture filtersThe Tophat Demon
2022-09-19Add a way to get the GLTF extensions supported by GLTFDocumentExtensionAaron Franke
2022-09-19Make used extensions stored in GLTFStateAaron Franke
This allows GLTFDocumentExtension classes to add to the used extensions array.
2022-09-18Minor enhancements to the GLTF module (lights and docs)Aaron Franke
2022-09-10Fix gltf 8 bone weights condition to check for the second joint arraySarfraz
size.
2022-09-05Rename TileMap/GridMap.`world_to_map` and opposite to `local_to_map`Micky
For both TileMap and GridMap: - `world_to_map` -> `local_to_map` - `map_to_world` -> `map_to_local` Also changes any mention of "world" in this context to "local" to avoid future confusion. Finally, updates the docs of both methods for consistency. In particular, adding a note on how to convert the returned values from local to global coordinates and vice versa.
2022-09-02Merge pull request #65170 from KoBeWi/your_argument_is_TypedArrayRémi Verschelde
2022-09-02Add `is_zero_approx` methods to `Vector2`, `3`, and `4`Jonathan Nicholl
2022-09-01Change Array arguments to TypedArraykobewi
2022-08-30Merge pull request #65066 from aaronfranke/str-path-joinRémi Verschelde
2022-08-29Rename String `plus_file` to `path_join`Aaron Franke
2022-08-28Move GLTF camera conversion code into GLTFCameraAaron Franke
2022-08-28Move GLTF light conversion code into GLTFLightAaron Franke
2022-08-26Rename `str2var` to `str_to_var` and similarMicky
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too. - `var2str` -> `var_to_str` - `str2var` -> `str_to_var` - `bytes2var` -> `bytes_to_var` - `bytes2var_with_objects` -> `bytes_to_var_with_objects` - `var2bytes` -> `var_to_bytes` - `var2bytes_with_objects` -> `var_to_bytes_with_objects` - `linear2db` -> `linear_to_db` - `db2linear` -> `db_to_linear` - `deg2rad` -> `deg_to_rad` - `rad2deg` -> `rad_to_deg` - `dict2inst` -> `dict_to_inst` - `inst2dict` -> `inst_to_dict`
2022-08-22Merge pull request #64400 from aaronfranke/gltf-fix-cameraRémi Verschelde
2022-08-20Expose Basis `set_orthogonal_index` method as a GridMap functionrafallus
2022-08-14GLTF: Fix orthographic cameras, internally store data in GLTF's formatAaron Franke
2022-08-10Prevent AnimationPlayer from being added on GLTF import if the option is ↵Hakim
unchecked. Fixes #63954
2022-07-31Merge pull request #55943 from jvanmourik/masterRémi Verschelde
glTF animation parsing: Changed the 'loop' and 'cycle' animation name keywords to be case-insensitive
2022-07-25Merge pull request #63219 from reduz/implement-vector4-projectionRémi Verschelde
2022-07-24GLTF: Organize structures into a subfolderAaron Franke
2022-07-25Merge pull request #63409 from V-Sekai/gltf-exportRémi Verschelde
2022-07-24Mend duplicate nodes in the gltf export.K. S. Ernest (iFire) Lee
2022-07-24GLTF: Move shared defines into a separate gltf_defines.h fileAaron Franke
Also move GLTFDocument's template conversion functions into gltf_template_convert.h
2022-07-23GLTF: Only list used extensions when they're actually usedAaron Franke
2022-07-23Implement Vector4, Vector4i, Projectionreduz
Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-08Add static methods for creating Image and ImageTexturekobewi
2022-07-05Fix light intensity and attenuation import from GLTFPZerua
2022-07-03glTF: Fix a couple typos in warnings on image parsingRémi Verschelde
2022-05-20Improve gltf extension GLTFDocument api.K. S. Ernest (iFire) Lee
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-03Rename Basis get_axis to get_column, remove redundant methodsAaron Franke
2022-04-23Discard images from gltf import for the animation library.K. S. Ernest (iFire) Lee
This is an optimization.
2022-04-13Color: Rename `to_srgb`/`to_linear` to include base color spaceRémi Verschelde
This helps reduce confusion around sRGB <> Linear conversions by making both input and output color spaces explicit.
2022-04-11Merge pull request #59980 from reduz/animation-librariesRémi Verschelde
2022-04-11Implement Animation Librariesreduz
* Instead of containing single animations, AnimationPlayer now contains libraries. * Libraries, in turn, contain the animations. This paves the way for implementing the possibility of importing scenes as animation libraries, finally allowing to import animations separate from the 3D models. Missing (will be done on separate PRs): * Make it possible to import scenes (dae/fbx/gltf) as animation libraries. * Make it possible for AnimationTree to import animation libraries on its own, so it does not rely on AnimationPlayer for everything.
2022-04-11Make FileAccess and DirAccess classes reference counted.bruvzg
2022-03-29Add support for importing .blend filesK. S. Ernest (iFire) Lee
Lets you drag or place .blend files in the project folder and it will import the files. Checks for Blender 3.0's gltf2 `export_keep_originals` option. Add basepath support to GLTFDocument append_from_file. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>