Commit Graph

167 Commits

Author SHA1 Message Date
Julien Duroure
8f79bf6a8a Merge branch 'blender-v4.4-release' 2025-03-09 05:36:28 +01:00
Julien Duroure
1326eaff09 Fix #135549 - glTF: Fix exporting only def bones + add leaf bones 2025-03-09 05:35:19 +01:00
Julien Duroure
2810c16e92 Merge branch 'blender-v4.4-release' 2025-03-02 08:03:51 +01:00
Julien Duroure
5ddff2562b Fix: glTF Exporter: Another sanity check about slot 2025-03-02 08:02:56 +01:00
Julien Duroure
3c4c026efe Merge branch 'blender-v4.4-release' 2025-03-02 08:00:40 +01:00
Julien Duroure
bb2f74e8ce Fix: glTF Exporter: Avoid crash when action has no slot assigned 2025-03-02 07:59:42 +01:00
Julien Duroure
2614a43c92 glTF: New option to export Vertex Color with a given name 2025-02-28 15:49:57 +01:00
Julien Duroure
ac061e3626 Merge branch 'blender-v4.4-release' 2025-02-27 18:59:28 +01:00
Julien Duroure
9b67e27fc3 Fix: glTF exporter: fix missing check that a SK slot is assigned 2025-02-27 18:58:45 +01:00
Julien Duroure
8fbf067314 Merge branch 'blender-v4.4-release' 2025-02-27 11:50:28 +01:00
Julien Duroure
a8e476531b glTF: Fix: bad check type in a previous commit 2025-02-27 11:49:44 +01:00
Julien Duroure
a3ff71f80f Merge branch 'blender-v4.4-release' 2025-02-26 16:42:21 +01:00
Julien Duroure
22aa2fbfa8 Fix #135129 glTF Collection Exporter: Avoid to export multiple scene info when Collection Export 2025-02-26 16:40:37 +01:00
Julien Duroure
bd64807fde Merge branch 'blender-v4.4-release' 2025-02-26 16:36:04 +01:00
Julien Duroure
0778ad776e glTF exporter: Better slot management:
Avoid non valid glTF file by avoiding exporting multiple slots with same target_id_type in the same animation for a single object:
- Make sure to create multiple animation when needed
- Use action.name for active slots (can have multiple slots when different target_id_type)
- Use action.name - slot.name_display for additional animations
2025-02-26 16:34:50 +01:00
Julien Duroure
4137678033 Merge branch 'blender-v4.4-release' 2025-02-22 09:03:09 +01:00
Julien Duroure
dafff07ad9 Fix: glTF exporter: remove empty action in filter list when refresh 2025-02-22 09:02:06 +01:00
Julien Duroure
a94c31e8c7 Merge branch 'blender-v4.4-release' 2025-02-22 08:59:39 +01:00
Julien Duroure
1fcbab0503 Fix: glTF exporter: Fix typo in gltfpack option 2025-02-22 08:59:01 +01:00
Julien Duroure
63d086d8a9 Merge branch 'blender-v4.4-release' 2025-02-22 08:57:01 +01:00
Julien Duroure
9ea0655edf Fix: glTF exporter: Fix typo in cache system, leading to endless loop 2025-02-22 08:56:08 +01:00
Julien Duroure
8d61eb49c0 Merge branch 'blender-v4.4-release' 2025-02-22 08:54:16 +01:00
Julien Duroure
69adbd3af1 Fix: glTF exporter: fix filter on collection when using both collection exporter and full collection hierarchy" 2025-02-22 08:53:01 +01:00
Julien Duroure
a05aaec6d4 Merge branch 'blender-v4.4-release' 2025-02-22 08:51:31 +01:00
Julien Duroure
a2aabd75bc Fix: glTF exporter: export all single armature actions only when "actions" mode
Other modes are not compatible with this option
2025-02-22 08:50:14 +01:00
Julien Duroure
eadc6bee55 Merge branch 'blender-v4.4-release' 2025-02-22 08:47:33 +01:00
Julien Duroure
3af38e1132 Fix: glTF exporter: Reset skin if mesh failed to export 2025-02-22 08:46:14 +01:00
Campbell Barton
5087246f39 Cleanup: strip trailing space, sort file lists 2025-02-16 20:42:16 +11:00
Julien Duroure
b768b0d91d glTF: Bump version to 4.5.0 after 4.4 branch creation 2025-02-06 08:04:33 +01:00
Julien Duroure
6999f34ec1 glTF: Bump version to 4.4.42 after recent changes 2025-02-03 20:35:05 +01:00
Julien Duroure
c089c176cb Refactor: glTF: followup ActionKeyframeStrip.channels() rename
- Use slot identifier instead of slot handle
- Change API calls after changes in Blender (in PR #133868)
- Refactoring, avoiding duplicate functions

Pull Request: https://projects.blender.org/blender/blender/pulls/133915
2025-02-03 20:32:00 +01:00
Julien Duroure
8abac73cbd glTF exporter: avoid crash when no tracks are exported 2025-02-01 19:06:45 +01:00
Julien Duroure
196cda9eef glTF exporter: Fix typo leading to crash at animation export (nla track mode) 2025-02-01 19:05:14 +01:00
Julien Duroure
83f9ed8771 glTF: New way of registering UI for hooks
- Explicit registration for hook UI
- Added some example in upstream repo: https://github.com/KhronosGroup/glTF-Blender-IO/blob/main/example-addons/example_gltf_exporter_extension/__init__.py
2025-02-01 18:59:03 +01:00
Julien Duroure
cccd45e32a glTF exporter: Create output directory if not exists
This should happen mainly for Collection Exporter or using api
2025-02-01 18:55:46 +01:00
Julien Duroure
3d2f45b408 glTF: Collection Exporter: Set collection custom props as glTF Scene extras
As we are exporting Collection only, it makes sense that the collection customs props
can be exported as glTF Scene extras, as the scene includes only objects from the collection
2025-02-01 18:52:53 +01:00
Julien Duroure
6aae3004fc glTF exporter: add pre & post export hooks 2025-02-01 18:49:38 +01:00
Julien Duroure
16f728cfe5 glTF exporter: Missed background check in previous commit 2025-01-22 09:19:32 +01:00
Julien Duroure
71d3e32974 glTF exporter: Tweak for action filter in Collection Export
Waiting a proper solution for props declaration:

- Filter now happen even if the list is not displayed
- Avoid spaming console with error, display a label saying what to do
2025-01-22 09:09:40 +01:00
Julien Duroure
748c91ce27 glTF exporter: add fallback interpolation option
Before, any sampled properties that are not keyed was exported with LINEAR interpolation
Now, user can choose the interpolation for these not keyed values (LINEAR or CONSTANT/STEP)

Example of not keyed properties: Deformation bones when animators animated other bones
2025-01-21 21:46:25 +01:00
Nathan Vegdahl
9f2ab9cba0 Anim: rename RNA Slot.id_root to Slot.target_id_type
The name `id_root` was not descriptive, and was just a hold-over from the
equivalent (now deprecated) property on the Action itself.  `target_id_type`
is more clear, reflecting that this is the type of ID the Slot is intended
to animate.

This PR also renames the corresponding `id_root_icon` to
`target_id_type_icon`.

Note that this PR updates the GLTF import/export core addon to adhere to
these name changes as well.

Pull Request: https://projects.blender.org/blender/blender/pulls/133164
2025-01-20 15:24:08 +01:00
Julien Duroure
312289ca60 glTF export: fix recursivity check on gpu instances 2025-01-16 21:34:45 +01:00
Julien Duroure
4dccaf5fae glTF export: ignore variant extras 2025-01-16 21:29:37 +01:00
Julien Duroure
b71d8484e2 glTF exporter: make sure color is white if only alpha is used 2025-01-16 21:26:54 +01:00
Julien Duroure
96369594f4 glTF import: tweak option UI 2025-01-16 21:25:12 +01:00
Julien Duroure
3f68656c7a glTF export: add keep named node flag for gltfpack 2025-01-16 21:24:00 +01:00
Julien Duroure
d51282d732 Fix #132702: UI: glTF UI string capitilization 2025-01-13 17:12:54 +01:00
Julien Duroure
cf08594a8c Cleanup: glTF: format 2025-01-13 17:07:17 +01:00
Julien Duroure
cf08856ccd glTF: Manage slotted Actions
- At import => Create some multi-slot action if multiple node are impacted by the glTF animation
- At export =>
     - Multi-slot actions are exported as a single glTF animation by default
     - There is still an option to get back to previous feature, merging by track name instead of by action

KHR_animation_pointer is not part of this PR.
animation pointer data are still exported only when using full baking (NLA track or scene export mode).
Using animation pointer related slots for other mode will come in a second step, not planned yet (and will not be part of 4.4)

Some hooks definition changed, and some hook locations changed because of this new behavior.
Communication for hook devs still need to be done

PR: #132771
Pull Request: https://projects.blender.org/blender/blender/pulls/132771
2025-01-13 17:00:46 +01:00
Julien Duroure
2add9e8224 glTF: Revert last changes, as these changes are reverted in core too 2025-01-03 21:08:42 +01:00