我已经看过使用其他API,例如SpriteKit和SceneKit,但我发现它们不支持着色器,并且没有Metal那么强大.
我能想到如何实现这一目标的唯一方法是创建60种不同的模型,然后依次加载每种模型,以产生“停止运动”的效果,但我认为这样做可能是非常低效,并希望有一个更容易的答案?
非常感谢!
解决方法 是的,还有其他更有效的动画制作方法.但在进入之前,一个警告:看起来你真的在这里咆哮错误的树.Metal是(概念上)非常低级的接口.你使用Metal(几乎)直接与GPU交谈,所以要使用它你需要像GPU一样思考(类似):在数据缓冲区,顶点转换等方面你似乎工作得更高概念级别,所以你可能会更好地服务于其中一个高级游戏引擎:SpriteKit for 2D或SceneKit for 3D. (或者像Cocos或Unity这样的第三方引擎.)另一方面,Metal更适合构建这些游戏引擎.
SpriteKit和SceneKit支持着色器.查看文档中的SKShader
和SCNShadable
(并确保单击“更多”链接以阅读完整概述). SceneKit还支持角色动画(也称为骨骼动画,也称为蒙皮):通常在外部创作工具(Maya,Blender等)中设计和装配动画模型,然后使用SceneKit在运行时使用动画.
可以在Metal中执行基于GPU的骨架动画等 *** 作.但我还没有看过任何关于它的教程或类似内容,可能是因为Metal是一项新技术.但从根本上说,它基于你在OpenGL或Direct3D中用于骨骼动画的相同技术 – 并且已经有很多关于这些技术的动画的文章.如果您愿意将时间和精力投入到低水平的工作中,那么从GL / D3D教程中调整主题相对容易.
总结以上是内存溢出为你收集整理的ios – 金属角色动画全部内容,希望文章能够帮你解决ios – 金属角色动画所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)