ARKit + SceneKit几何图形教程(第1部分)

越来越多的iOS开发人员正在使用ARKit创建有趣的应用程序,但是这些开发人员中的许多人总体上并未接触过3D图形。 我在这篇文章中谈论的3D图形的特定部分是几何。 这是学习OpenGL的人的起点,但使用SceneKit似乎更有吸引力,既可以使用内置几何类型,也可以从在另一个3D建模程序中创建的SCNScene文件导入节点。 自己生成这些几何图形有好处的地方,主要是因为您在沿途学习的东西!

GitHub上的这个项目包含下面显示的所有示例

在本教程和第2部分结束时,您应该能够像下面这样在SceneKit中创建一个动画网格物体:

我们之前看过这个吗? 重点是什么?

关键是,一旦有了这些基础,您只需稍加戳戳即可创建稍微不同的几何形状,而无需引入外部模型。

上述立方体的尺寸为0.2×0.2×0.2。 如果创建一个我称为的新几何类型,例如SkewBox,它会引入一个额外的参数skew: CGPoint我可以这样更改顶点(也在GitHub上):

   src = SCNGeometrySource(vertices:[ 
//底部4个顶点
SCNVector3(-w,-h,-l),
SCNVector3(w,-h,-l),
SCNVector3(w,-h,l),
SCNVector3(-w,-h,l),
//前4个顶点
SCNVector3(-w + skew.x,h,-l + skew.y),
SCNVector3(w + skew.x,h,-l + skew.y),
SCNVector3(w + skew.x,h,l + skew.y),
SCNVector3(-w + skew.x,h,l + skew.y),
])

输出:

从这里您可以创建任何六面体! 然后达到任何其他形状。

下一步是对几何图形进行动画处理以使其伸展和倾斜,这种方式无法简单地通过缩放节点,仅通过更改几何图形来完成,例如此处的示例:

单击此处查看第2部分。如果有任何不清楚的地方或对以后的帖子有任何建议,请随时在Twitter或LinkedIn上关注我/向我发送消息。 查看我的GitHub上的其他项目。