批量转换dae到scn

时间:2017-12-03 07:21:57

标签: scenekit arkit

有没有办法将Collada dae文件批量转换为Scenekit scn文件?

我的项目使用在sketchup中创建的大约50个模型,这些模型定期更新,这些模型被导出到DAE,但也需要转换为SCN文件以便在xCode中使用。我知道它可以通过xCode和"转换为SceneKit场景文件格式(scn)"手动完成。但这需要大量的体力劳动。

2 个答案:

答案 0 :(得分:2)

基于https://the-nerd.be/2014/11/07/dynamically-load-collada-files-in-scenekit-at-runtime/我发现scntool能够通过命令行转换它并编写以下脚本:

find ./dae -name "*.dae" | while read f ; do 
inputfilename=$(basename $f)
echo $inputfilename
./scntool --convert $f --format scn --output ./scn/$inputfilename
done
for file in ./scn/*.dae; do
    mv "$file" "./scn/$(basename "$file" .dae).scn"
done

答案 1 :(得分:0)

@HixField有一个很好的shell脚本来调用scntool。另一种方法是利用Xcode的构建系统,它对您放入项目的.dae文件夹中的任何scnassets文件执行相同的操作。即使您没有在应用程序中捆绑这些文件,也可以创建包含要转换的所有资产的虚拟Xcode目标或项目,并且只要您构建目标,它就会将它们全部转换。 (然后您可以将其集成到CI系统或其他自动化系统中。)