diff options
author | Julien Duroure <julien.duroure@gmail.com> | 2018-12-02 10:33:14 +0300 |
---|---|---|
committer | Julien Duroure <julien.duroure@gmail.com> | 2018-12-02 10:33:14 +0300 |
commit | dcfaadf5feb1e6c92a889bf2bb162a8a1f74fcd3 (patch) | |
tree | fbc759ab8eba56510e83d7807ffab95ba6650457 /io_scene_gltf2/blender/imp/gltf2_blender_mesh.py | |
parent | 9fcbabfcab0f60910c196226c79874edcae80b65 (diff) |
glTF: fix vertex color import + export option tweaks
Diffstat (limited to 'io_scene_gltf2/blender/imp/gltf2_blender_mesh.py')
-rwxr-xr-x | io_scene_gltf2/blender/imp/gltf2_blender_mesh.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/io_scene_gltf2/blender/imp/gltf2_blender_mesh.py b/io_scene_gltf2/blender/imp/gltf2_blender_mesh.py index 88396455..aafb9498 100755 --- a/io_scene_gltf2/blender/imp/gltf2_blender_mesh.py +++ b/io_scene_gltf2/blender/imp/gltf2_blender_mesh.py @@ -143,7 +143,7 @@ class BlenderMesh(): if 'COLOR_0' in prim.attributes.keys(): # Create vertex color, once only per object if vertex_color is None: - vertex_color = obj.data.vertex_colors.new("COLOR_0") + vertex_color = obj.data.vertex_colors.new(name="COLOR_0") color_data = BinaryData.get_data_from_accessor(gltf, prim.attributes['COLOR_0']) @@ -152,7 +152,11 @@ class BlenderMesh(): vert_idx = mesh.loops[loop_idx].vertex_index if vert_idx in range(offset, offset + prim.vertices_length): cpt_idx = vert_idx - offset - vertex_color.data[loop_idx].color = color_data[cpt_idx][0:3] - # TODO : no alpha in vertex color + # check dimension, and add alpha if needed + if len(color_data[cpt_idx]) == 3: + vertex_color_data = color_data[cpt_idx] + (1.0,) + else: + vertex_color_data = color_data[cpt_idx] + vertex_color.data[loop_idx].color = vertex_color_data offset = offset + prim.vertices_length |