summaryrefslogtreecommitdiff
path: root/modules/gltf
AgeCommit message (Collapse)Author
2022-09-26SCons: Unify tools/target build type configurationRémi Verschelde
Implements https://github.com/godotengine/godot-proposals/issues/3371. New `target` presets ==================== The `tools` option is removed and `target` changes to use three new presets, which match the builds users are familiar with. These targets control the default optimization level and enable editor-specific and debugging code: - `editor`: Replaces `tools=yes target=release_debug`. * Defines: `TOOLS_ENABLED`, `DEBUG_ENABLED`, `-O2`/`/O2` - `template_debug`: Replaces `tools=no target=release_debug`. * Defines: `DEBUG_ENABLED`, `-O2`/`/O2` - `template_release`: Replaces `tools=no target=release`. * Defines: `-O3`/`/O2` New `dev_build` option ====================== The previous `target=debug` is now replaced by a separate `dev_build=yes` option, which can be used in combination with either of the three targets, and changes the following: - `dev_build`: Defines `DEV_ENABLED`, disables optimization (`-O0`/`/0d`), enables generating debug symbols, does not define `NDEBUG` so `assert()` works in thirdparty libraries, adds a `.dev` suffix to the binary name. Note: Unlike previously, `dev_build` defaults to off so that users who compile Godot from source get an optimized and small build by default. Engine contributors should now set `dev_build=yes` in their build scripts or IDE configuration manually. Changed binary names ==================== The name of generated binaries and object files are changed too, to follow this format: `godot.<platform>.<target>[.dev][.double].<arch>[.<extra_suffix>][.<ext>]` For example: - `godot.linuxbsd.editor.dev.arm64` - `godot.windows.template_release.double.x86_64.mono.exe` Be sure to update your links/scripts/IDE config accordingly. More flexible `optimize` and `debug_symbols` options ==================================================== The optimization level and whether to generate debug symbols can be further specified with the `optimize` and `debug_symbols` options. So the default values listed above for the various `target` and `dev_build` combinations are indicative and can be replaced when compiling, e.g.: `scons p=linuxbsd target=template_debug dev_build=yes optimize=debug` will make a "debug" export template with dev-only code enabled, `-Og` optimization level for GCC/Clang, and debug symbols. Perfect for debugging complex crashes at runtime in an exported project.
2022-09-26Style: Cleanup header guards for consistencyRémi Verschelde
Fix file names for {Static,Lightmap}RaycasterEmbree.
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-13Merge pull request #65611 from Sarfraz-droid/Issue65602Rémi Verschelde
2022-09-12Fix some errors affecting the Web editorRémi Verschelde
- Don't warn about minimized/maximized modes not being available. - Blender and FBX export both depend on running thirdparty applications, which can't be done (easily at least) for Web and Android editors. - Editor theme complained about not being able to retrieve texture data for an icon. It was only used once so instead of flipping at runtime, let's just add a flipped icon. Part of #65702.
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-04Don't try to read values from null cameras and lights in GLTFAaron Franke
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-27Rename `hint_tooltip` to `tooltip_text` & setgetMicky
`hint_tooltip` -> `tooltip_text` `set_tooltip` -> `set_tooltip_text` `_get_tooltip` -> `get_tooltip_text` Updates documentation, too.
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-24Fix Blender file path check to require a directoryJonathan Nicholl
2022-08-24Replace Array return types with TypedArray 3kobewi
2022-08-22Update messages for missing FBX2glTF, add similar messages for BlenderJonathan Nicholl
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-14Document GLTFLight and GLTFSpecGlossAaron Franke
2022-08-10Prevent AnimationPlayer from being added on GLTF import if the option is ↵Hakim
unchecked. Fixes #63954
2022-08-08Rename the argument tag to param in XML documentationYuri Sizov
2022-08-05Make "Godot source files" comment consistent in modulesAaron Franke
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-25Code quality: Fix header guards consistencyRémi Verschelde
Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
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-21Rename OSX to macOS and iPhoneOS to iOS.bruvzg
2022-07-13Merge pull request #62827 from fire-forge/ok-cancelRémi Verschelde
Add `ok_button_text` to AcceptDialog and `cancel_button_text` to ConfirmationDialog
2022-07-09Add ok_button_text to AcceptDialog and cancel_button_text to ConfirmationDialogFireForge
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-23Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git.
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
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-04Merge pull request #60723 from reduz/refactor-module-initializationRémi Verschelde
2022-05-04Refactor module initializationreduz
* Changed to use the same stages as extensions. * Makes the initialization more coherent, helping solve problems due to lack of stages. * Makes it easier to port between module and extension. * removed the DRIVER initialization level (no longer needed).