Commit graph

1028 commits

Author SHA1 Message Date
Rémi Verschelde e5ed515f24
Merge pull request #93337 from bruvzg/rename_img_fnt_imp
Remove `monospace/fixed-width` from the `ResourceImporterImageFont` name and description.
2024-06-19 10:10:21 +02:00
Rémi Verschelde 558054f707
Merge pull request #92640 from AThousandShips/text_value_changed_sname
[Scene] Add `SceneStringNames::text/value_changed`
2024-06-19 10:10:00 +02:00
Rémi Verschelde 0cc321b144
Merge pull request #92639 from AThousandShips/confirmed_sname
[Scene] Add `SceneStringNames::confirmed`
2024-06-19 10:09:56 +02:00
Rémi Verschelde 1609b275b0
Merge pull request #92638 from AThousandShips/item_selected_sname
[Scene] Add `SceneStringNames::item_selected`
2024-06-19 10:09:53 +02:00
A Thousand Ships fbb879debd
[Scene] Add SceneStringNames::text/value_changed 2024-06-19 09:44:38 +02:00
A Thousand Ships ca18a06ecb
[Scene] Add SceneStringNames::confirmed 2024-06-19 09:40:54 +02:00
A Thousand Ships d9e2fc74c7
[Scene] Add SceneStringNames::item_selected 2024-06-19 09:39:05 +02:00
bruvzg 049cf70fbf
Remove monospace/fixed-width from the ResourceImporterImageFont name and description. 2024-06-19 08:42:13 +03:00
tamas e19f0042ca Retain meta data set on imported nodes
During the import process, many importer nodes are replaced with their
engine node counterparts. For example, ImporterMeshInstance3D is
replaced with a MeshInstance3D node. Any meta data set on these
importer nodes, i.e. through a GLTFDocumentExtension, are lost during
the conversion. This change copies over any meta data set on these
importer nodes to their engine counterparts.
2024-06-18 12:39:34 -05:00
A Thousand Ships d519715d94
[Scene] Add SceneStringNames::font(_size/_color) 2024-06-18 17:24:27 +02:00
bruvzg db46eac24c
[Image Font Importer] Adds support for \uXXXX in the kerning config strings. 2024-06-13 09:20:04 +03:00
Rémi Verschelde 2fb296a5cd
Merge pull request #93074 from bruvzg/bmp_imp_adv
[Image Font Importer] Fix reading advance after hex/dec range.
2024-06-12 11:01:43 +02:00
bruvzg 26df66cbad
[Image Font Importer] Fix reading advance after hex/dec range. 2024-06-12 11:38:41 +03:00
Yuri Rubinsky 29fa291317 Fix incorrect camera transform of animation view in the import window 2024-06-10 16:09:36 +03:00
Rémi Verschelde 9c87e8c7b4
Merge pull request #91953 from AThousandShips/use_normal_sname
Use `CoreStringNames::normal` in more places
2024-05-31 14:16:05 +02:00
A Thousand Ships cade5b88d9
Use CoreStringNames::normal in more places 2024-05-30 22:57:54 +02:00
A Thousand Ships 926afccbd8
[Scene] Add SceneStringNames::panel 2024-05-30 22:54:50 +02:00
A Thousand Ships 755a0efbb6
[Scene] Add SceneStringNames::id_pressed 2024-05-30 22:54:04 +02:00
Rémi Verschelde ff242e2e94
Merge pull request #92539 from RandomShaper/no_crash_glsl_headless
Avoid crash when importing .glsl in headless
2024-05-30 15:41:59 +02:00
Pedro J. Estébanez c1d5a2c8c6 Avoid crash when importing .glsl in headless 2024-05-30 13:51:35 +02:00
A Thousand Ships 4ed62665a2
Replace .bind(...).call_deferred() with .call_deferred(...) 2024-05-27 13:29:57 +02:00
Rémi Verschelde 782a0261cb
Merge pull request #92196 from lyuma/gltf_anim_library_import_as_bones
Support Import As Skeleton Bones on glTF and AnimationLibrary import
2024-05-23 08:59:13 +02:00
Rémi Verschelde 4c96dcf6e0
Merge pull request #92179 from aaronp64/image_import_memory
Improve memory usage for image import and `PortableCompressedTexture2D`
2024-05-22 09:26:53 +02:00
Lyuma c433754d34 fbx: change import option defaults
ufbx has special logic to handle animation/trimming, and most users expect trimming to be on.
For existing projects, we should upgrade files0 to FBX2glTF to preserve node compatibility.
2024-05-21 07:58:36 -07:00
Lyuma ef486db569 Support Import As Skeleton Bones on glTF and AnimationLibrary import 2024-05-21 03:19:35 -07:00
aaronp64 f81e0fcbf4 Improve memory usage for image import and PortableCompressedTexture2D
When importing images, we store a compressed version of the image to a .ctex file with ResourceImporterTexture::save_to_ctex_format.  When importing many large images at once, this can use a large amount of memory, especially when the .ctex file uses WebP format.

This change is for ResourceImporterTexture::save_to_ctex_format to use the original Image object instead of p_image->get_image_from_mipmap(0), to avoid creating a copy of the full uncompressed image when looping through the base Image and mipmaps.  This reduces the import memory usage for large images by around 10% when using WebP, and 35-40% when Project Settings/Rendering/Textures/Lossless Compression/Force PNG is enabled, may vary depending on the image and number of import threads running.  Same change applied to PortableCompressedTexture2D::create_from_image, which has similar logic.

This helps with #92084, but does not fully resolve the issue on its own, as compressing with WebP on many threads can still use a large amount of memory - this just lowers that amount, and makes it more likely that enabling "Force PNG" will reduce memory usage enough to import the files.
2024-05-20 19:40:39 -04:00
Rémi Verschelde e1f72c7ca6
Merge pull request #92012 from lyuma/rest_fixer_anim_scale
Skeleton rest fixer: Apply orthonormalized scale to anims
2024-05-17 11:14:11 +02:00
Rémi Verschelde 54b2e5dc78
Merge pull request #90647 from Gaktan/master
Fix decimal and hex ranges not working with image fonts
2024-05-17 11:13:39 +02:00
Lyuma 25ddb3dd7f rest fixer: Apply orthonormalized scale to anims
Adjust the logic for position and scale animation tracks in the Apply Node Transforms case
To match how we adjust bone pose/rest, use basis.orthonormalized() for parentless bones.
2024-05-16 02:45:42 -07:00
A Thousand Ships ee79386f7b
[Scene] Add SceneStringNames::pressed 2024-05-14 15:51:28 +02:00
kobewi 413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
Gaktan 7b740124f0 Fixed decimal and hex ranges not working with image fonts 2024-05-13 21:18:13 +02:00
Alistair Leslie-Hughes b973a01216 Editor: Disallow font image rows/columns to be zero or less
Fixes #91812
2024-05-12 07:53:06 +10:00
Rémi Verschelde a9a1d0a162
Merge pull request #91619 from AThousandShips/find_improve
Replace `find` with `contains/has` where applicable
2024-05-08 14:35:44 +02:00
A Thousand Ships b4c6cc7d82
[Core] Add case-insensitive String::containsn 2024-05-08 12:48:01 +02:00
A Thousand Ships a0dbdcc3ab
Replace find with contains/has where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
yds ca58715c06 Keep global rest of unmapped bones if no mapped bone descendants 2024-05-07 09:38:39 -03:00
Rémi Verschelde 4eb614568d
Merge pull request #91641 from TokageItLab/silhouette-visibility
Make silhouette fixer option visibility dependent on availability
2024-05-07 13:49:00 +02:00
Silc Lizard (Tokage) Renew c7cb65f159 Make silhouette fixer option visibility dependent on availability 2024-05-07 09:55:16 +09:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to List
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Rémi Verschelde 8efe58476d
Merge pull request #89461 from Calinou/3d-import-collision-default-trimesh
Default to trimesh for generated collision shapes in Advanced Import Settings
2024-05-04 11:52:11 +02:00
Rémi Verschelde 9cb3a16a8e
Merge pull request #91014 from DeeJayLSP/qoa-wav-playback
Add QOA (Quite OK Audio) as a WAV compression mode
2024-05-02 12:46:32 +02:00
DeeJayLSP b9cbf2c96f Add QOA (Quite OK Audio) as a WAV compression mode 2024-05-01 19:05:14 -03:00
Rémi Verschelde 4f1d4ace09
Merge pull request #91214 from DeeJayLSP/patch-1
ResourceImporterWAV: Remove unnecessary var declaration
2024-04-29 10:10:09 +02:00
Aaron Franke 1bcbbe96c4
Organize existing code for editor plugins 2024-04-27 11:59:58 -07:00
Douglas Leão 9c5bff1e87
ResourceImporterWAV: remove unnecessary var declaration 2024-04-26 12:39:18 -03:00
Rémi Verschelde 17d9c52ad9
Merge pull request #90894 from lyuma/animation_step_30
Set animation step from importers. Increase default step from 10 to 30FPS
2024-04-24 09:59:21 +02:00
Rémi Verschelde 61d146c89e
Merge pull request #90748 from aaronfranke/fix-basis-scale-global
Fix incorrect name of internal Basis global scale getter
2024-04-22 12:52:52 +02:00
A Thousand Ships 49ae632b7d
Fix import and saving related crashes
* Don't add empty mesh to result when importing obj files
* Check for null resources in `ResourceSaver`
2024-04-22 12:13:19 +02:00
Lyuma bb9674c1b1 Set animation step from importers. Increase default step from 10 to 30 FPS. 2024-04-19 03:02:20 -07:00