Sketchup позволяет создавать компоненты для облегчения повторного использования геометрии. Например, колесо автомобиля может быть превращено в компонент, и 4 экземпляра компонента могут использоваться для 4 колес автомобиля.Сетчатые группы не видны. Three.JS ColladaLoader
Вопрос заключается в том, чтобы поместить каждый повторно используемый компонент в своем собственном отдельном THREE.Object3d случае (который затем может быть повернут, расположенный ... т.е.. Управляется индивидуально)
т.е. как извлекать каждый из 4 колеса автомобиля как 4 отдельных экземпляра THREE.Object3D.
Для этого я экспортировал DAE из эскиза и загрузил его с помощью Three.js ColladaLoader. Однако сгруппированные геометрии не отображаются в файле Three.js. Разгруппированная геометрия внутри одного и того же dae делает нормально.
Пробовал некоторые обходные пути, такие как импорт dae в belnder и дальнейший экспорт в .obj и JSON с использованием exp.js экспортера блендера. С помощью этих обходных решений информация о группировке теряется.
Я пытаюсь вычислить код ColladaLoader.js, чтобы увидеть, есть ли там решение.
This stackoverflow question похоже на (для блендера вместо эскиза) и имеет один ответ, но ответ не тот, что я ищу.
BTW, пример сгруппированной и негруппированной геометрии в DAE, можно увидеть в следующем фрагменте.
<library_visual_scenes> <visual_scene id="ID1"> <node name="SketchUp"> <instance_geometry url="#ID19"> <!-- UN-GROUPED GEOMETRY --> <bind_material> <technique_common> <instance_material symbol="Material2" target="#ID6"> <bind_vertex_input semantic="UVSET0" input_semantic="TEXCOORD" input_set="0" /> </instance_material> </technique_common> </bind_material> </instance_geometry> <node id="ID2" name="wheel1"> <!-- A RE-USE OF A COMPONENT --> <matrix>1.0000000 0.0000000 0.0000000 7.0639700 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000 0.0000000 1.0000000</matrix> <instance_node url="#ID3" /> </node> </node> </visual_scene> </library_visual_scenes>
выше DAE фрагмент показывает только повторное использование компонента. Фактическая геометрия компонента появляется в dae под <library_nodes>
.
</library_visual_scenes> <library_nodes> <node id="ID3" name="WheelComponent"> <instance_geometry url="#ID4"> <!-- GEOMETRY OF A GROUP (COMPONENT) --> <bind_material> <technique_common> ...
будет признателен за любую помощь.