This is a breaking change.
For consistency with other exporters, we should use the suffix "-loop",
not "_loop", to indicate that an animation is looping. If we detect the
suffix "_loop" or any variation on the capitilization, we will print a
warning.
While we could be more flexible with the suffix and not break existing
exports, this would set the precedent for needing to support multiple
suffixes in other areas too. It seems safer to get strict as soon as we
can.
Fixes#310.
Relates to https://github.com/godotengine/godot/issues/32678.
This repo only has reference scenes exported from Blender 2.81.
Therefore, only run smoke test for 2.80 exports and run full
regression tests for 2.81 exports.
For the C code we disable the PEP8 check on the long lines.
An alternative would be to wrap before `out float result`, possibly
with a double indentation.
Fixes:
```
io_scene_godot/converters/material/script_shader/shader_functions.py:467:80: E501 line too long (80 > 79 characters)
io_scene_godot/converters/material/script_shader/shader_functions.py:485:80: E501 line too long (81 > 79 characters)
io_scene_godot/converters/material/script_shader/shader_functions.py:491:80: E501 line too long (84 > 79 characters)
io_scene_godot/converters/material/script_shader/shader_functions.py:554:80: E501 line too long (81 > 79 characters)
io_scene_godot/converters/material/script_shader/shader_functions.py:563:80: E501 line too long (82 > 79 characters)
io_scene_godot/converters/material/script_shader/shader_functions.py:647:80: E501 line too long (81 > 79 characters)
```
```
io_scene_godot/__init__.py:214:12: C0415: Import outside toplevel (%s) (import-outside-toplevel)
io_scene_godot/__init__.py:272:4: C0415: Import outside toplevel (%s) (import-outside-toplevel)
```
Blender API is keep changing in Blender master branch, which makes it
hard to do regression tests. Here, switch back to Blender2.80 stable
for all the testing. Will consider testing with up-to-date API when
Blender2.81 releases.
Previously when no texture coordinate input for ImageTexture, always
defaults to Blender Generated Coordinates. However, it is not consistent
with Blender's behaviour, which defaults use UV.
1. Fix crash on RGB and Value const node by adding a new identifier
2. Add support for limited blend type of MixRGB shader node, including
blend type (MIX, ADD, SUB, MUL, DIV, DIFF, DARKEN, LIGHTEN)