-
Notifications
You must be signed in to change notification settings - Fork 3
Home
The blender godot exporter converts models from .blend files into escn files. Going directly from blender to godot allows better preservation of values as you aren't going through an intermediary format.
One of the most frustrating things about asset pipelines are materials. Unless you are using a well defined material workflow (eg PBR), converting materials from the design tool into ones in the engine can be quite frustrating. The blender->godot exporter handles this in two ways:
First it searches for existing godot materials where the name of the resource file matches the name of the material in blender. So if you export an object with the material PurpleDots
then the exporter will search for the file PurpleDots.tres
. It will do this either through the entire project directory, or limited to sub-directories of the export path. If it cannot find a PurpleDots.tres
file that is a SpatialMaterial or ShaderMaterial, or if searching for materials is disabled, the exporter will attempt to export the material from blender.
In blender 2.8 the materials system will change significantly, so while the exporter currently supports some blender internal material properties, integration of cycles/eevee materials will wait until after the 2.8 release
The exporter looks at various object properties in order to determine additional properties to export beyond the geometry. The most basic of these is the "allow_render" button which prevents the object from being exported:
Objects hidden from the editor (the eye icon) will be exported, and will also be hidden in godot.
Exporting physics properties is done by enabling "Rigid Body" in the physics tab. The highlighted properties are exported:
Most things match fairly well but:
- Collision group is exported to both collision group and collision mask
- Active vs Passive is rigid body vs static body
- The animated checkbox enabled "kinematic"
- Cone and cylinder will not be supported (Godot doesn't support them)
In games it is quite common to export a mesh just as collision geometry. Unfortunately in blender there is no obvious option for this. Instead, if the object is a physics object and has a maximum draw type of wire, only it's collision geometry is exported:
Sun, spot and point lamps are exported, along with the highlighted properties
For most accurate reproduction of spot and omni lamps, enable the "sphere" checkbox. A warning will be reported if sphere is not enabled, but this is only to warn you that it may not look the same between blender/godot.
- Disabling/enabling shadows is also exported, although you have to be careful because blender default to casting shadows. Anything other than "No Shadow" will cast a shadow.
- Spotlight angular attenuation is exported, although the models for attenuation in blender and godot differ enough that they don't match very well.