Я пытаюсь создать настраиваемый компонент Qt3D путем объединения трех ConeMeshes в одну сущность.Пользователь должен иметь возможность взаимодействовать с пользовательской сущностью, поэтому я добавил ObjectPicker в файл.Обычно я бы использовал предопределенный масштабированный файл .obj, но мой менеджер хочет, чтобы объекты рисовались непосредственно с помощью Qt.
Две сетки, которые я хочу объединить, определены в отдельном файле qml, поэтому я могу вызватьэто внутри моего Scene3D.
Entity {
ObjectPicker {
id: combinedPicker
}
ConeMesh {
id: conemesh1
...
}
ConeMesh {
id: conemesh2
...
}
Transform {
id: conetransform1
}
Transform {
id: conetransform2
}
Entity {
components: [conemesh1, conetransform1, conemesh2, conetransform2, combinedPicker]
}
}
Мой подход к объединению сеток состоит в том, чтобы заключить их как компоненты в отдельную область видимости сущности, как показано в последней строке.Но этот подход отображает только последнюю запись в массиве компонентов.Выше это было бы conemesh2.
Ранее я пытался создать несколько экземпляров Entity и передать каждому из них идентификатор ObjectPicker,
Entity {
components: [conemesh1, conetransform1, combinedPicker]
}
Entity {
components: [conemesh2, conetransform2, combinedPicker]
}
Но согласно документации ObjectPicker , средство выбора объектов не предназначено для совместного использования несколькими компонентами.
Итак мой вопрос заключается в следующем: каков правильный подход при объединении нескольких сеток в одну сетку вQML?