Remove Blender ESCN exporter pages.

This commit is contained in:
tetrapod00
2024-10-08 16:45:13 -07:00
parent 3ed0339c87
commit d8af389550
25 changed files with 13 additions and 352 deletions

View File

@@ -108,13 +108,13 @@ source,destination
/getting_started/step_by_step/resources.html,/tutorials/scripting/resources.html
/getting_started/step_by_step/scene_tree.html,/tutorials/scripting/scene_tree.html
/getting_started/step_by_step/singletons_autoload.html,/tutorials/scripting/singletons_autoload.html
/getting_started/workflow/assets/escn_exporter/animation.html,/tutorials/assets_pipeline/escn_exporter/animation.html
/getting_started/workflow/assets/escn_exporter/animation.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/escn_exporter/index.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/escn_exporter/lights.html,/tutorials/assets_pipeline/escn_exporter/lights.html
/getting_started/workflow/assets/escn_exporter/material.html,/tutorials/assets_pipeline/escn_exporter/material.html
/getting_started/workflow/assets/escn_exporter/mesh.html,/tutorials/assets_pipeline/escn_exporter/mesh.html
/getting_started/workflow/assets/escn_exporter/physics.html,/tutorials/assets_pipeline/escn_exporter/physics.html
/getting_started/workflow/assets/escn_exporter/skeleton.html,/tutorials/assets_pipeline/escn_exporter/skeleton.html
/getting_started/workflow/assets/escn_exporter/lights.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/escn_exporter/material.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/escn_exporter/mesh.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/escn_exporter/physics.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/escn_exporter/skeleton.html,/tutorials/assets_pipeline/escn_exporter/index.html
/getting_started/workflow/assets/import_process.html,/tutorials/assets_pipeline/import_process.html
/getting_started/workflow/assets/importing_audio_samples.html,/tutorials/assets_pipeline/importing_audio_samples.html
/getting_started/workflow/assets/importing_images.html,/tutorials/assets_pipeline/importing_images.html
1 source destination
108 /getting_started/step_by_step/resources.html /tutorials/scripting/resources.html
109 /getting_started/step_by_step/scene_tree.html /tutorials/scripting/scene_tree.html
110 /getting_started/step_by_step/singletons_autoload.html /tutorials/scripting/singletons_autoload.html
111 /getting_started/workflow/assets/escn_exporter/animation.html /tutorials/assets_pipeline/escn_exporter/animation.html /tutorials/assets_pipeline/escn_exporter/index.html
112 /getting_started/workflow/assets/escn_exporter/index.html /tutorials/assets_pipeline/escn_exporter/index.html
113 /getting_started/workflow/assets/escn_exporter/lights.html /tutorials/assets_pipeline/escn_exporter/lights.html /tutorials/assets_pipeline/escn_exporter/index.html
114 /getting_started/workflow/assets/escn_exporter/material.html /tutorials/assets_pipeline/escn_exporter/material.html /tutorials/assets_pipeline/escn_exporter/index.html
115 /getting_started/workflow/assets/escn_exporter/mesh.html /tutorials/assets_pipeline/escn_exporter/mesh.html /tutorials/assets_pipeline/escn_exporter/index.html
116 /getting_started/workflow/assets/escn_exporter/physics.html /tutorials/assets_pipeline/escn_exporter/physics.html /tutorials/assets_pipeline/escn_exporter/index.html
117 /getting_started/workflow/assets/escn_exporter/skeleton.html /tutorials/assets_pipeline/escn_exporter/skeleton.html /tutorials/assets_pipeline/escn_exporter/index.html
118 /getting_started/workflow/assets/import_process.html /tutorials/assets_pipeline/import_process.html
119 /getting_started/workflow/assets/importing_audio_samples.html /tutorials/assets_pipeline/importing_audio_samples.html
120 /getting_started/workflow/assets/importing_images.html /tutorials/assets_pipeline/importing_images.html

View File

@@ -1,87 +0,0 @@
Animation
=========
Animation supported:
- transform animation of all types of objects
- transform animation of pose bones
- shape key animation
- light animation
- camera animation
Multiple Actions For Single Object
----------------------------------
In most games, one object would have several animations to switch between.
This add-on has support for exporting multiple actions all at once into
a single AnimationPlayer and makes it easy to switch actions.
This workflow makes use of blender nla_tracks. Here is a brief guide on how
to use this feature:
**1. Stash active action**
New created action is always an active action bound to object. There are
several ways to place an active action into NLA track,
one is of course doing it in ``NLA Editor``
.. image:: img/nla_editor.jpg
.. image:: img/nla_pushdown.jpg
Or it can be done stashing the action in ``Dope Sheet``
.. image:: img/dope_sheet.jpg
.. image:: img/stash_action.jpg
**2. Check mute status of NLA tracks**
An NLA track can be ``mute`` or ``unmute``, the exporter will export all
the ``mute`` NLA track as a separate action, while blends all the ``unmute``
NLA tracks into every action (including the action) being exported.
.. image:: img/nla_strip.jpg
**3. Export the scene**
Make sure the ``Export Stashed Actions`` option has been turned on.
.. image:: img/stash_action_option.jpg
Then all the stashed actions, as well as the active action, are exported
to an AnimationPlayer.
.. image:: img/in_godot.jpg
Constraints
-----------
Sometimes complicated animation is built with object constraint; a usual
example is inverse kinematics. The add-on would automatically check if an
object has some constraint; if it does, all the constraints are baked into
actions and then exported along with the object.
Animation Mode
---------------------------
Godot and Blender have different structure to store animation data.
In Godot animation data is stored in an AnimationPlayer node, instead
of in each animated node. In order to fix this inconsistency and still
make the animation play versatile, this add-on has three animation exporting
modes.
**Mode 'Animation as Actions'**
Treat all the animations as object actions, so in the exported scene, every
object would have its own AnimationPlayer and hold its actions.
**Mode 'Scene Animation'**
If you want your animation to generate the same result as playing at Blender's
timeline, this is what you want. In this mode, all the animations in the scene
are placed in just one AnimationPlayer in the scene root.
**Mode 'Animation as Action with Squash'**
This mode has very similar behavior of mode 'Animation as Action', but it
can generate fewer AnimationPlayers; objects in parent-children relationship would
share their AnimationPlayer. It is useful when you have several rigs, and each
Skeleton and Mesh has actions; then one rig would have just one AnimationPlayer.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

View File

@@ -3,48 +3,12 @@
Blender ESCN exporter
=====================
.. note:: This chapter relates to the Blender plugin called "Godot Blender Exporter",
which can be downloaded here: https://github.com/godotengine/godot-blender-exporter
To export from Blender to Godot 4.x, use one of the
:ref:`available 3D formats <doc_importing_3d_scenes_available_formats>`.
This plugin can be used to export Blender scenes in a Godot-specific scene format
called ESCN, which is similar to TSCN (text format) but will be imported as binary
SCN for performance.
The plugin `Godot Blender Exporter <https://github.com/godotengine/godot-blender-exporter>`__
is not maintained or supported in Godot 4.x. While not officially supported, the plugin may
partially work for some Godot and Blender versions, particularly before Blender version 4.0.
For complete docs on the Blender exporter, see the
`previous version of this page <https://docs.godotengine.org/en/4.0/tutorials/assets_pipeline/escn_exporter/index.html>`__.
Details on exporting
--------------------
.. toctree::
:maxdepth: 1
:name: toc-learn-workflow-assets-escn_exporter
material
physics
lights
mesh
skeleton
animation
Disabling specific objects
--------------------------
Sometimes you don't want some objects exported (e.g. high-res models used for
baking). An object will not be exported if it is not rendered in the scene.
This can be set in the outliner:
.. image:: img/hide.jpg
Objects hidden in the viewport will be exported, but will be hidden in the
Godot scene.
Build pipeline integration
--------------------------
If you have hundreds of model files, you don't want your artists to waste time
manually exporting their blend files. To combat this, the exporter provides a
Python function ``io_scene_godot.export(out_file_path)`` that can be called to
export a file. This allows easy integration with other build systems. An
example Makefile and Python script that exports all the blends in a directory
are present in the
`godot-blender-exporter repository <https://github.com/godotengine/godot-blender-exporter>`__.

View File

@@ -1,26 +0,0 @@
Lights
======
.. warning::
By default, lamps in Blender have shadows enabled. This can cause
performance issues in Godot.
.. warning::
Lamps are exported using their "Blender Render" settings. When Blender 2.8
is released, this will be removed and this part of the exporter will change.
Sun, point and spot lamps are all exported from Blender along with many of their
properties:
.. image:: img/light_properties.jpg
There are some things to note:
- In Blender, a light casts light all the way to infinity. In Godot, it is
clamped by the attenuation distance. To most closely match between the
viewport and Godot, enable the "Sphere" checkbox. (Highlighted green)
- Light attenuation models differ between Godot and Blender. The exporter
attempts to make them match, but it isn't always very good.
- Spotlight angular attenuation models also differ between Godot and Blender.
The exporter attempts to make them similar, but it doesn't always look the
same.
- There is no difference between buffer shadow and ray shadow in the export.

View File

@@ -1,69 +0,0 @@
Materials
=========
Using existing Godot materials
------------------------------
One way in which the exporter can handle materials is to attempt to match
the Blender material with an existing Godot material. This has the advantage of
being able to use all of the features of Godot's material system, but it means
that you cannot see your model with the material applied inside Blender.
To do this, the exporter attempts to find Godot materials with names that match
those of the material name in Blender. So if you export an object in Blender
with the material name ``PurpleDots`` then the exporter will search for the
file ``PurpleDots.tres`` and assign it to the object. If this file is not a
``StandardMaterial3D`` or ``ShaderMaterial`` or if it cannot be found, then the
exporter will fall back to exporting the material from Blender.
Where the exporter searches for the ``.tres`` file is determined by the "Material
Search Paths" option:
.. image:: img/material_search.jpg
This can take the value of:
- Project Directory - Attempts to find the ``project.Godot`` and recursively
searches through subdirectories. If ``project.Godot`` cannot be found it
will throw an error. This is useful for most projects where naming conflicts
are unlikely.
- Export Directory - Look for materials in subdirectories of the export
location. This is useful for projects where you may have duplicate
material names and need more control over what material gets assigned.
- None - Do not search for materials. Export them from the Blender file.
Export of Cycles/EEVEE materials
--------------------------------
The exporter has a primitive support for converting Cycles/EEVEE material node tree
to Godot Shader Material. Note that some of the Shader Node are not supported yet due to
difficulties in implementation, which are:
- all the ``noisy textures``
- ``generated texture coordinates``
- ``group node``
- shader nodes except ``PrincipledBSDF``, ``Diffuse``, ``Glossy``, ``Glass``, ``add shader`` and ``mix shader``
.. warning::
If possible, try to use PrincipledBSDF node with GGX distribution as the output shader
node, it is the only one guaranteed to be exactly correct. Others are just based on approximation.
Sometimes materials may not be valid for exporting (e.g. has some unsupported node) or it
is using Blender Internal Engine, only the diffuse color and a few flags (e.g. unshaded) are
exported and form a StandardMaterial3D.
Generate external materials
---------------------------
The default configuration of material exporting would keep all the materials internal to
the ``escn`` file. There is an option which could enable generating external ``.material``
file when the ``escn`` file opens in Godot.
.. image:: img/external_mat_option.jpg
``.material`` file can be assigned to any material slot to be an external resource.
.. image:: img/gd_dot_material.jpg

View File

@@ -1,23 +0,0 @@
Mesh
====
Modifiers
---------
There is an exporting option :code:`Apply Modifiers` to
control whether mesh modifiers are applied to the exported mesh.
Shape Key
---------
Exporting mesh shape key is supported, however exporting each shape key
is almost like exporting the mesh again, so don't be surprised
it takes a relatively long time.
.. warning::
A lot of modifiers are not compatible with shape keys
(e.g. subsurface modifier), so if you found you have
incorrect shape keys exported, try to disable :code:`Apply Modifiers`
and do the exporting again. Besides, it is worthwhile to report the
incompatible modifier to the `issue list
<https://github.com/godotengine/godot-blender-exporter/issues>`__,
which helps to develop the exporter to have a more precise check of modifiers.

View File

@@ -1,58 +0,0 @@
Physics properties
==================
Exporting physics properties is done by enabling "Rigid Body" in Blender's
physics tab:
.. image:: img/enable_physics.png
.. important::
By default, a single Blender object with rigid body enabled will export as
three nodes: a PhysicsBody, a CollisionShape, and a MeshInstance3D.
Body type
---------
Blender only has the concept of "Active" and "Passive" rigid bodies. These
turn into Static and RigidBody nodes. To create a kinematic body, enable the
"animated" checkbox on an "Active" body:
.. image:: img/body_type.jpg
Collision shapes
----------------
Many of the parameters for collision shapes are missing from Blender, and many
of the collision shapes are also not present. However, almost all of the
options in Blender's rigid body collision and rigid body dynamics interfaces
are supported:
.. image:: img/collision_shapes.jpg
There are the following caveats:
- Not all of the collision shapes are supported. Only ``Mesh``, ``Convex
Hull``, ``Capsule``, ``Sphere`` and ``Box`` are supported in both Blender and
Godot
- In Godot, you can have different collision groups and collision masks. In
Blender you only have collision groups. As a result, the exported object's
collision mask is equal to its collision group. Most of the time, this is
what you want.
.. important::
To build compound physics shapes, parent together multiple objects with
rigid body enabled. The physics properties are taken from the parent-most
rigid body, and the rest are used as collision shapes.
Collision geometry only
-----------------------
Frequently you want different geometry for your collision meshes and your
graphical meshes, but by default, the exporter will export a mesh along with the
collision shape. To only export the collision shape, set the object's maximum
draw type to Wire:
.. image:: img/col_only.png
This will also influence how the object is shown in Blender's viewport.
Most of the time, you want your collision geometry to be shown see-through when
working on the models, so this works out fairly nicely.

View File

@@ -1,40 +0,0 @@
Skeleton
========
.. image:: img/armature.jpg
Rest Bone
---------
Armature object in Blender is exported as a Skeleton node along with
rest position (transform in Godot) of bones.
.. warning::
The three check boxes :code:`Inherit Rotation`, :code:`Inherit Scale`,
:code:`Local Location` (colored in red) must be ticked when building
armature in Blender, so that the exported bone transform be
consistent between Blender and Godot
It is important that the mesh is not deformed by bones when exporting in Blender. Make sure
that the skeleton is reset to its T-pose or default rest pose.
Bone Weights
------------
Blender puts rigged mesh vertices which have no bone weights at their original
position, but these vertices would be placed at (0, 0, 0) in Godot, making the mesh
deformed. Therefore, the exporter will raise an error for any vertex with no bone weights
detected in a rigged mesh.
Non-Deform Bone
---------------
Note that the non-deform bone can be configured as not exported
by enabling the :code:`Exclude Control Bones`; the deform bone
checkbox is shown in the picture.
Bone Attachment
---------------
A bone can be the parent of an object in Blender; this relation is exported
as a BoneAttachment node in the Godot scene.