mirror of
https://github.com/DarklightGames/io_scene_psk_psa.git
synced 2025-02-01 03:55:44 +01:00
Added option to include or exclude shape keys from PSK import.
This commit is contained in:
parent
db6204d592
commit
e4e2354834
@ -25,6 +25,7 @@ class PskImportOptions(object):
|
|||||||
self.should_import_vertex_normals = True
|
self.should_import_vertex_normals = True
|
||||||
self.should_import_extra_uvs = True
|
self.should_import_extra_uvs = True
|
||||||
self.should_import_skeleton = True
|
self.should_import_skeleton = True
|
||||||
|
self.should_import_shape_keys = True
|
||||||
self.bone_length = 1.0
|
self.bone_length = 1.0
|
||||||
|
|
||||||
|
|
||||||
@ -232,6 +233,7 @@ def import_psk(psk: Psk, context, options: PskImportOptions) -> PskImportResult:
|
|||||||
vertex_groups[weight.bone_index].add((weight.point_index,), weight.weight, 'ADD')
|
vertex_groups[weight.bone_index].add((weight.point_index,), weight.weight, 'ADD')
|
||||||
|
|
||||||
# MORPHS (SHAPE KEYS)
|
# MORPHS (SHAPE KEYS)
|
||||||
|
if options.should_import_shape_keys:
|
||||||
morph_data_iterator = iter(psk.morph_data)
|
morph_data_iterator = iter(psk.morph_data)
|
||||||
|
|
||||||
if psk.has_morph_data:
|
if psk.has_morph_data:
|
||||||
@ -285,13 +287,13 @@ class PskImportPropertyGroup(PropertyGroup):
|
|||||||
default=True,
|
default=True,
|
||||||
name='Vertex Normals',
|
name='Vertex Normals',
|
||||||
options=empty_set,
|
options=empty_set,
|
||||||
description='Import vertex normals from PSKX files, if available'
|
description='Import vertex normals, if available'
|
||||||
)
|
)
|
||||||
should_import_extra_uvs: BoolProperty(
|
should_import_extra_uvs: BoolProperty(
|
||||||
default=True,
|
default=True,
|
||||||
name='Extra UVs',
|
name='Extra UVs',
|
||||||
options=empty_set,
|
options=empty_set,
|
||||||
description='Import extra UV maps from PSKX files, if available'
|
description='Import extra UV maps, if available'
|
||||||
)
|
)
|
||||||
should_import_mesh: BoolProperty(
|
should_import_mesh: BoolProperty(
|
||||||
default=True,
|
default=True,
|
||||||
@ -314,6 +316,12 @@ class PskImportPropertyGroup(PropertyGroup):
|
|||||||
options=empty_set,
|
options=empty_set,
|
||||||
description='Length of the bones'
|
description='Length of the bones'
|
||||||
)
|
)
|
||||||
|
should_import_shape_keys: BoolProperty(
|
||||||
|
default=True,
|
||||||
|
name='Import Shape Keys',
|
||||||
|
options=empty_set,
|
||||||
|
description='Import shape keys, if available'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class PskImportOperator(Operator, ImportHelper):
|
class PskImportOperator(Operator, ImportHelper):
|
||||||
@ -342,6 +350,7 @@ class PskImportOperator(Operator, ImportHelper):
|
|||||||
options.should_import_vertex_normals = pg.should_import_vertex_normals
|
options.should_import_vertex_normals = pg.should_import_vertex_normals
|
||||||
options.vertex_color_space = pg.vertex_color_space
|
options.vertex_color_space = pg.vertex_color_space
|
||||||
options.should_import_skeleton = pg.should_import_skeleton
|
options.should_import_skeleton = pg.should_import_skeleton
|
||||||
|
options.should_import_shape_keys = pg.should_import_shape_keys
|
||||||
options.bone_length = pg.bone_length
|
options.bone_length = pg.bone_length
|
||||||
|
|
||||||
result = import_psk(psk, context, options)
|
result = import_psk(psk, context, options)
|
||||||
@ -374,6 +383,7 @@ class PskImportOperator(Operator, ImportHelper):
|
|||||||
row.use_property_decorate = False
|
row.use_property_decorate = False
|
||||||
if pg.should_import_skeleton:
|
if pg.should_import_skeleton:
|
||||||
row.prop(pg, 'bone_length')
|
row.prop(pg, 'bone_length')
|
||||||
|
layout.prop(pg, 'should_import_shape_keys')
|
||||||
|
|
||||||
|
|
||||||
classes = (
|
classes = (
|
||||||
|
Loading…
x
Reference in New Issue
Block a user