Xcode的默认游戏示例有一个SceneKit,显示旋转的飞机,资产是.dae文件,但我没有看到任何关于如何从3D模型创建其中一个的文档,以及如何正确应用纹理到它.
解决方法 要创建3D模型并将其导出为Collada .dae文件,您可以使用以下任何3D创作工具:Blender,autodesk Maya,autodesk 3dsMax,The Foundry Modo,Maxon Cinema 4D,SIDeFX Houdini等.最简单的方法是使用autodesk Maya 2018的非商业学生版本.它是免费的.你可以从 HERE下载它.YouTube中有无数的例子如何在Maya软件中建模和uv-map. Look at this example of UV-mapping in Maya.所以,当您的3D模型(及其UV纹理)可以使用时,您可以将其导出为SceneKit支持的四种格式之一:
>动画Collada DAE
>动画皮克斯USDZ(iOS 12及更高版本支持)
>单帧Sony Alembic
>单帧Wavefront OBJ
在Maya中,3D几何体的导出类型必须为DAE_FBX导出:
您可以将纹理模型(方形UV映射1K,2K,4K等)导出为JPEG或PNG文件.它可能看起来像这样:
必须在“显示材质检查器”中的“照明模型”(着色器)中为此属性的“漫反射”插槽指定此UV平方纹理.
And here’s some Swift 4.1 code if you wanna make it programmatically:
let scene = SCNScene(named: "art.scnassets/mushroom.scn")!let mushroom = scene.rootNode.childNode(withname: "mushroom",recursively: true)!let mushroomMaterial = SCNMaterial()mushroomMaterial.diffuse.contents = UIImage(named: "mushroom.png")
附:使用Pixar的USD文件格式:
如果您的3D场景使用.usda模型而不是.usdz,则可以使用终端中的命令行方法转换.usda:
xcrun usdz_convertor file.usda file.usdz
usdz_convertor方法仅在安装Xcode 10时可用.
@H_301_62@ 总结以上是内存溢出为你收集整理的swift – 如何创建要在SceneKit中使用的DAE文件?全部内容,希望文章能够帮你解决swift – 如何创建要在SceneKit中使用的DAE文件?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)