Оказывается, вам нужно сделать несколько вещей, чтобы заставить эту работу работать, это еще не описано в документации.
Прежде всего, это помогает узнать, что делает базовый класс ImportHelper, когда используя его в сценарии импорта. При инициализации сценарий вызывает context.window_manager.fileselect_add (self), который добавляет несколько объектов в ваш класс. Эта строка в исходном коде выдавала это:
"Свойства строки 'filepath', 'filename', 'directory' и 'files'" "коллекции присваиваются, когда они присутствуют в операторе"
Объект 'files' - это то, что нам нужно, но он присутствует только в том случае, если у вас также есть правильное свойство, присутствующее в вашем классе, например:
files: CollectionProperty(
type=bpy.types.OperatorFileListElement,
options={'HIDDEN', 'SKIP_SAVE'},
)
тогда, если который присутствует, вы можете получить доступ к нему в методе своего класса 'execute', чтобы перебрать все файлы в вашем выборе:
for meshfile in self.files:
filepath = meshfile.name
print(filepath)
Кроме того, не забудьте включить правильные свойства, я включаю их в свой импортер:
from bpy.props import (
BoolProperty,
CollectionProperty,
StringProperty,
)