如何在Swift 2.0 for iOS中使用Metal制作球体?

时间:2015-12-26 07:49:28

标签: ios xcode swift metal

有没有人知道如何在iOS中使用Metal制作球体? 我按照这个tutorial来学习一些金属东西。

但我无法弄清楚如何用3D渲染球体。

2 个答案:

答案 0 :(得分:1)

你必须改变网格数据,但手工完成所有事情都是艰辛的。总而言之,您有几个选择:

  1. 您可以在像Blender这样的3D建模程序中绘制球体,并将其导出为OBJ文件。然后,您可以使用模型I / O(请参阅WWDC视频)甚至您自己的框架来读取OBJ文件。
  2. 如果你有点勇敢和雄心勃勃,你可以尝试使用数学方法在程序上创建球体的顶点数组。我会说它比第一个更难,但嘿,这很酷。
  3. 在顶点数组中手动​​键入所有顶点位置。我不建议这样做,因为它会浪费时间,你不会做太多的事情来发展你的编程知识。
  4. 您可以使用其他方法。取决于你的创造力。

答案 1 :(得分:0)

执行此操作的最佳方法是使用模型I / O框架创建表示球体网格的MDLMesh。可以这样做:

let sphereMesh = MDLMesh(sphereWithExtent: vector3(0.1, 0.1, 0.1), segments: vector2(50, 50), inwardNormals: false, geometryType: .triangles, allocator: metalAllocator)

有关更多信息,您可以检查documentation以及this tutorial