Commit Graph

39 Commits

Author SHA1 Message Date
Julien Duroure
3e1dd4b321 Merge branch 'blender-v4.2-release' 2024-06-06 16:44:05 +02:00
Julien Duroure
08d43667c8 glTF importer: Fix bone shape size not always pertinent
We don't have yet the perfect formula, so adding
- An option to disable bone shape for Blender heuristic, if needed
- An option to scale factor the bone shape for Blender heuristic
2024-06-06 16:42:08 +02:00
Julien Duroure
7edb89ac96 Merge branch 'blender-v4.2-release' 2024-06-06 16:36:37 +02:00
Julien Duroure
d9d5597a6c glTF importer: Remove legacy EEVEE blend_method update 2024-06-06 16:35:12 +02:00
Julien Duroure
5372fe2d16 Merge branch 'blender-v4.2-release' 2024-06-06 12:42:47 +02:00
Julien Duroure
b0153f5891 glTF exporter: Collection Export: update filepath when changing format
Update .glb / .gltf extension
Part of #122783

Still remaining the change of default (grayed) value if user didn't set filepath yet
But not sure this can be accessible from python API
2024-06-06 12:40:27 +02:00
Julien Duroure
b4511ba069 Merge branch 'blender-v4.2-release' 2024-06-06 12:19:58 +02:00
Julien Duroure
c6e38d084c glTF exporter: Collection Export: Exporting a center of mass of root objects option 2024-06-06 12:18:52 +02:00
Julien Duroure
835547e6a4 Merge branch 'blender-v4.2-release' 2024-06-06 12:03:47 +02:00
Julien Duroure
8fd9712df9 glTF exporter: add alphamode management backward compatibility
When a file is created with pre- 4.2 version, but is open with 4.2 version:
We can now detect the automatically created node setup
Wrong for the exact value of the cutoff, but better than nothing to get it detected
2024-06-06 12:01:48 +02:00
Julien Duroure
a28540cb13 glTF: Bump addon version to 4.3.0 in main after 4.2 branch creation 2024-06-06 10:48:01 +02:00
Julien Duroure
b28abfaad4 glTF: Bump version after recent update for EEVEE 2024-06-04 21:09:39 +02:00
Jeroen Bakker
c7807a425a EEVEE: Alias/remove legacy RNA material attributes
- `bpy.types.Material.blend_method` aliases `bpy.types.Material.surface_render_method`.
  'Opaque' and 'Alpha Clip' maps to deferred.
- Renamed `show_transparent_back` to `use_transparency_overlap`
- Renamed `use_screen_refraction` to `use_raytrace_refraction`
- Deprecate `use_sss_translucency` and `use_sss_translucency`

Related to: #113976

**NOTE**
The light probe changes will be done in a different patch.
Both patches should land just before we remove EEVEE Legacy
from the code-base.

Pull Request: https://projects.blender.org/blender/blender/pulls/122297
2024-06-04 14:48:40 +02:00
Julien Duroure
c8d77efe27 glTF exporter: fix typo in a previous commit
Checking if mesh has vertex color was wrong
2024-06-01 16:56:53 +02:00
Julien Duroure
04b08bcb40 glTF exporter: Fix glTF vendor extensions declaration 2024-06-01 16:51:26 +02:00
Julien Duroure
cab79018ee glTF exporter: Remove false positive warning 2024-06-01 10:05:43 +02:00
Julien Duroure
c05c08cbff glTF exporter: Allow float socket (ex. Alpha) to get data from Color socket
This is how it works in Blender, but before this commit, only R channel was used
Now, we convert RGB to BW to get float data
2024-05-30 18:59:24 +02:00
Julien Duroure
6a4210ff90 glTF exporter: Perf: Manage drivers on SK when disable viewport option
When trying to optimize performance, we can disable other object in viewport when baking animation
We are now able to bake also drivers on SK with this option
The solution is to copy drivers to temporary created custom properties on armature,
to be able to evaluate them during baking
2024-05-30 15:17:34 +02:00
Julien Duroure
9ba22d4bc7 glTF exporter: Fix #122379: Fix GN data type check 2024-05-30 15:14:00 +02:00
Julien Duroure
018ece5309 glTF: Update user extension ui registration after Blender changes
After Panel UI refactoring for I/O, there is no more Panel class
2024-05-30 15:11:25 +02:00
Julien Duroure
1e802d971a glTF exporter: Draco: fix normalized draco accessors
Fix exporting normalized accessor with Draco enabled.
json was ok, but accessor data itself was not flagged as normalized

Pull Request: https://projects.blender.org/blender/blender/pulls/122224
2024-05-24 16:25:56 +02:00
Julien Duroure
5bf160818f glTF exporter: Cleanup: quiet warning for debug builds on startup 2024-05-24 14:33:16 +02:00
Julien Duroure
4aadff7e97 glTF exporter: Fix retrieving attribute after recent merged 2024-05-24 10:22:40 +02:00
Julien Duroure
0f0a8df8a9 glTF exporter: Option to export VC even if not used in node tree
glTF specification says that VC must be used as a base color multiplier, so you should add it to your node tree to see it.
But seems common usage of VC is to use it for custom data. Custom properties/attribute is the best place for these data,
but in order not to break production workflow/pipeline, we add an option to export active VC
2024-05-24 09:36:14 +02:00
Julien Duroure
d80a1dd5f8 glTF exporter: Fix exporter both VertexColor & colorFactor in the same time 2024-05-24 09:32:42 +02:00
Julien Duroure
f8b8a1a5b6 glTF exporter: cleanup user warnings 2024-05-24 09:30:37 +02:00
Julien Duroure
ac97907841 glTF exporter: Fix UVMap export when is set from an attribute node 2024-05-24 09:28:53 +02:00
Julien Duroure
a71027d37f glTF exporter: UDIM for merged channel textures
Was never implemented
2024-05-24 09:26:27 +02:00
Julien Duroure
c297a9513e glTF exporter: Fix material check on evaluated data 2024-05-24 09:23:36 +02:00
Julien Duroure
be96d5144a glTF exporter: Instanced collection can have regular children 2024-05-24 09:21:43 +02:00
Julien Duroure
f86fe707ce glTF exporter: Fix merge after extra anim feature merge 2024-05-24 09:19:36 +02:00
Julien Duroure
c9daea2d5b glTF exporter: Fix typo in socket name 2024-05-24 09:17:41 +02:00
Julien Duroure
5789031072 glTF exporter: fix invalid escape sequence 2024-05-24 09:15:13 +02:00
Julien Duroure
20d8f48500 glTF exporter: Allow custom attribute UVMap to be on point domain
Fixes the root cause of #121204
2024-05-18 08:54:35 +02:00
Julien Duroure
876bfdcbdf glTF exporter: Fix #121878 crash when exporting without animation 2024-05-18 08:50:21 +02:00
Julien Duroure
733bd00432 glTF exporter: fix typo in Vertex Color Alpha management 2024-05-18 07:00:58 +02:00
Julien Duroure
b583b6ec39 glTF I/O: Use nodes for alpha clipping
Replace the use of Blend Mode on EEVEE (legacy), not existing on EEVEE-Next
2024-05-16 13:14:41 +02:00
Campbell Barton
c4a0bbb1f4 Extensions: Support online extensions and move add-ons outside Blender
The extensions system allows to extend Blender with connectivity to the internet. Right now it means Blender can
discover and install add-ons and themes directly from the internet, and notify users about their updates.

By default this is disabled (opt-in), and users can enable it the first time they try to install an extension or visit
the Prefences > Extensions tab. If this is enabled, Blender will automatically check for updates for
extensions.blender.org upon startup.

When will Blender access the remote repositories:

* Every time you open the Preferences → Extensions: ALL the enabled repositories get checked for the latest info (json)
* Every time you try to install by dragging: ALL the enabled repositories get checked for the latest info (json).
* Every time you start Blender: selected repositories get checked for the latest info (json).

------------------

From the Blender code point of view, this means that most of the add-ons and themes originally bundled with Blender
will now be available from the online platform, instead of bundled with Blender. The exception are add-ons which are
deemed core functionality which just happened to be written as Python add-ons.

Links:
* Original Extenesions Platform Announcement: https://code.blender.org/2022/10/blender-extensions-platform/
* Extensions website: https://extensions.blender.org/
* User Manual: https://docs.blender.org/manual/en/4.2/extensions/index.html#extensions-index
* Technical specifications: https://developer.blender.org/docs/features/extensions/
* Changes on add-ons bundling: https://devtalk.blender.org/t/changes-to-add-on-bundling-4-2-onwards/34593

------------------

This PR does the following:

* Move extensions out of experimental.
* No longer install `scripts/addons` & `scripts/addons_contrib`.
* Add `scripts/addons_core` to blender's repository.

These add-ons will still be bundled with Blender and will be always enabled in the future, with their preferences
moved to be more closely integrated with the rest of Blender. This will happen during the remaining bcon2 period.
For more details, see #121830

From scripts/addons:

* copy_global_transform.py
* hydra_storm
* io_anim_bvh
* io_curve_svg
* io_mesh_uv_layout
* io_scene_fbx
* io_scene_gltf2
* pose_library
* ui_translate
* viewport_vr_preview

Extra: bl_pkg (scripts/addons_contrib)

Note: The STL (legacy) add-on is going to be moved to the extensions platform. There is already a C++ version on core
which is enabled by default.

All the other add-ons are already available at extensions.blender.org. To use them you need to:

* Go to User Preferences > Extensions
* You will be greated with an "Online Extensions" message, click on "Enable Repository".
* Search the add-on you are looking for (e.g, Import Images as Planes).
* Click on Install

Over time their maintaince will be transferred over to the community so their development can carry on. If you used to
help maintain a bundled add-on please read: https://devtalk.blender.org/t/changes-to-add-on-bundling-4-2-onwards/34593

Ref: !121825
2024-05-15 19:26:29 +02:00
Campbell Barton
13a3603578 Move addons from the addons repo to "addons_core"
Ref: !121825
2024-05-15 19:26:29 +02:00