Commit graph

991 commits

Author SHA1 Message Date
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
Jeronimo Schreyer
c3bc768d64
Make Advanced Import lights more like the mesh and material editors
Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
2024-04-16 10:15:25 -07:00
Aaron Franke
e83807ef85
Fix incorrect name of Basis global scale getter 2024-04-16 04:26:52 -07:00
Hugo Locurcio
611d2591d6
Remove unused Make Streamable option from scene import dialog 2024-04-16 00:07:32 +02:00
Rémi Verschelde
d5fd611591
Merge pull request #75787 from Calinou/advanced-import-settings-tweak-environment
Tweak environment in the Advanced Import Settings dialog
2024-04-13 11:30:06 +02:00
jsjtxietian
077e20cd51 Disable mesh compression if vertex position.z is always 0 2024-04-10 11:27:36 +08:00
Hugo Locurcio
72599858fc
Tweak environment in the Advanced Import Settings dialog
Use a gradient sky to improve visibility in shaded areas,
while also helping the user orient themselves. The bottom of the sky
is black, while the top of the sky is white.

This change also makes it so that the Default Clear Color project setting
no longer affects the Advanced Import Settings dialog.
2024-04-09 01:03:49 +02:00
Rémi Verschelde
bfccd57769
Merge pull request #89573 from timothyqiu/hop
Fix crash when columns are skipped in CSV translation
2024-04-08 11:20:09 +02:00
Rémi Verschelde
046816e6b9
Merge pull request #90065 from lyuma/rest_fixer_scaled_position
Fix 2 bugs with scale of position tracks in rest fixer
2024-04-04 14:37:04 +02:00
Rémi Verschelde
96a75d99c4
Merge pull request #90064 from lyuma/remove_immutable_post
Apply "Remove Immutable Tracks" after post-import.
2024-04-04 14:37:01 +02:00
Lyuma
00cf862b54 Fix 2 bugs with scale of position tracks in rest fixer
Both bugs were related to how position animation tracks were adjusted in rest fixer.
First bug: motion scale is applied before subtracting the origin when applying bone roll
Second bug: armature scale was lost when converting basis to quaternion, leading an unscaled position offset to be added to the scaled origin.
2024-03-30 23:54:50 -07:00
Lyuma
b0ce274a52 Apply "Remove Immutable Tracks" after post-import.
Reimplements "Remove Immutable" by comparing to the skeleton rest.
It is necessary to delay removing animation tracks until after the correct rest pose is calculated in rest-fixer.
Preserves the original implementation in the GLTFDocument / FBXDocument API for compatibility.
2024-03-30 23:45:22 -07:00
AlexOtsuka
4d3319eceb Fix Set Animation Save Paths breaking on Windows 2024-03-31 00:46:25 +01:00
Rémi Verschelde
05372773e1
Merge pull request #89599 from timothyqiu/vegetate
Fix unexpected auto translation of editor `Tree` content
2024-03-23 21:15:39 -07:00
Rémi Verschelde
9a8fb26d91
Merge pull request #88824 from V-Sekai/retarget_silhouette_template
Retargeting option to use a template for silhouette.
2024-03-23 21:13:38 -07:00
Lyuma
9db0860c2e Option to use Animation as skeleton rest silhouette.
Adds `rest_pose/external_animation_library` advanced option to replace bone rest with an exported Animation before retargeting.
Together this allows a purely importer based workflow to transfer a known good pose from one FBX to another.
2024-03-23 17:29:02 -07:00
Lyuma
34f284bcc2 Add option to import skeleton rest as RESET animation
Also creates an AnimationPlayer if one does not exist.
Designed to be used in conjunction with loading rest pose in another importer.
2024-03-19 02:27:34 -07:00
Haoyu Qiu
8cd1ebbd6d Fix unexpected auto translation of Tree content 2024-03-18 09:31:00 +08:00
Haoyu Qiu
f98d552214 Fix crash when columns are skipped in csv translation 2024-03-16 23:26:06 +08:00
Rémi Verschelde
453485aede
Merge pull request #89270 from Repiteo/enforce-typename-in-templates
Enforce template syntax `typename` over `class`
2024-03-14 22:34:37 +01:00
Hugo Locurcio
51af186bb6
Default to trimesh for generated collision shapes in Advanced Import Settings
This avoids using convex decomposition every time collision is enabled
on a mesh, which can be extremely slow on complex meshes (such as entire
levels).
2024-03-14 00:06:54 +01:00
bruvzg
fee14eb5e8
[Import] Add "skip file" import option to skip (and exclude from export) importable formats, auto set it for the images used by bitmap font. 2024-03-12 21:34:40 +02:00
bruvzg
911fa38d3a
[Font] Add option to disable embedded bitmaps loading. 2024-03-11 16:31:10 +02:00
Rémi Verschelde
5c1b926610
Merge pull request #88045 from Malcolmnixon/optimize-collider-regeneration
Optimize when colliders are regenerated for imported meshes
2024-03-09 22:19:34 +01:00
Thaddeus Crews
9903e6779b
Enforce template syntax typename over class 2024-03-07 22:39:09 -06:00
DeeJayLSP
7fa3431dca WAV importer: use cubic interpolation on resampler 2024-03-04 00:05:48 -03:00
Rémi Verschelde
21e3b2111e
Merge pull request #88862 from smix8/split_physics_classes
Split monolithic physics class files
2024-02-27 16:37:07 +01:00
smix8
35dafc9fa8 Split monolithic physics class files
Splits monolithic physics class files.
2024-02-27 11:18:16 +01:00
Rémi Verschelde
04e16a27cf
Merge pull request #88821 from lyuma/preserve_initial_pose
Allow preserving the initial bone pose in rest fixer
2024-02-27 10:18:04 +01:00
Rémi Verschelde
3780604d79
Merge pull request #88819 from lyuma/import_nodes_as_skeleton_bones
Add new scene import option to import as Skeleton
2024-02-27 10:18:00 +01:00
Rémi Verschelde
8f98ed65f7
Merge pull request #88738 from clayjohn/mesh_compression-tangents
Multiple fixes for compressed meshes
2024-02-27 10:17:43 +01:00
Muller-Castro
1638c1b28f Add const lvalue ref to editor/* container parameters 2024-02-26 15:28:15 -03:00
Lyuma
6a6bd2307c Add rest fixer toggle to disable bone pose reset
Adds a "Reset All Bone Poses After Import" option to the Skeleton3D Rest Fixer settings.
Default value of true resets the bone poses to rest (usually a t-pose), matching previous behavior.
If disabled, keeps the bones posed as they would have been before silhouette adjustment.
2024-02-26 03:24:01 -08:00
Aaron Franke
c399424db9
Move 3D-only resources to their own folder 2024-02-26 05:23:04 -06:00
Lyuma
652ef966f9 Add new scene import option to import as Skeleton
Adds a bool import option `nodes/import_as_skeleton_bones`.
This is supported in all FBX or GLTF document based formats.
It is especially useful for retargeting and importing animations.
2024-02-26 03:06:07 -08:00
clayjohn
781cd27fe4 Avoid singularity when generated tangents and validate that tangents are good enough when using compression 2024-02-23 16:25:26 -08:00
K. S. Ernest (iFire) Lee
04d43947bf
Add ufbx for FBX importing
This update introduces a new import method for FBX files using ufbx. If the fbx2gltf import fails, it will use the most recently cached scene from the ufbx import. The process is sped up by introducing threads to load the ufbx portion.

Key changes include:

- Support for importing geometry helper nodes in FBX files.
- Addition of cameras and lights with updated names.
- Removal of the fbx importer manager.
- Introduction of ModelDocument3D and updates to its methods.
- Changes to FBX import options and visibility.
- Updating the documentation and handling some errors.
- Store the original non-unique node, mesh and animation names in FBX and glTF.

Co-Authored-By: bqqbarbhg <bqqbarbhg@gmail.com>
2024-02-23 22:33:04 +01:00
Rémi Verschelde
c187d6522b
Merge pull request #84569 from jsjtxietian/Add-ignorable-columns-to-translation-CSVs
Add support for comment (ignorable) column in translation csv
2024-02-20 11:12:03 +01:00