OStack程序员社区-中国程序员成长平台

标题: ios - spritekit 游戏中的动态贝塞尔绘图 - 最佳(性能)方法? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 08:49
标题: ios - spritekit 游戏中的动态贝塞尔绘图 - 最佳(性能)方法?

我不是 iOS 开发者,我刚刚开始实现我的游戏,我已经在 flash 中完成了,希望使用原生环境会 super 快。

该项目是一个 2d 游戏,有很多基于用户交互的动态贝塞尔绘图。基本上我绘制动态 Blob (变形虫类型的形状)。

首先我尝试了 Swift,它与 actionscript 非常相似,但事实证明,Apple 将无法接受在 Xcode6 最终版本之前使用 Swift 构建的应用程序,因为我想在 9 月之前发布我的游戏,所以我去了 objective-c 路线。

由于集成了物理引擎、 Sprite 层次结构等,我想使用 Sprite 套件。

我尝试使用SKSphapeNode进行绘图,但我很快意识到它不适合我的需求。 (如果超过 2 个像素,则无法绘制笔画,它有内存泄漏等)

所以我使用了放入 UIImage 的 UIBezierPath,但我对性能不满意,因为我必须使用新的动态生成的贝塞尔形状创建新的 UIImage。

这些是我目前找到的选项:

  1. SkShapeNode - 不适合我的游戏
  2. UIBezierPath - UIImage > 我必须每帧创建一个新的 UIImage,所以速度很慢
  3. OpenGL - 我还没有尝试过,我不确定它是否可以与 Sprite 套件一起使用
  4. CALayer - 目前我正在尝试将它与 spritekit 集成,但我感觉我会遇到与 UIImage 方法相同的问题。

有没有人知道,提示哪种方法在性能方面是最好的?

提前感谢您的帮助!



Best Answer-推荐答案


我尝试使用 SpriteKit 创建闪电效果,请查看我的文章:https://andreygordeev.com/2014/11/01/lightning-with-srite-kit.html

有些方法使用 UIBezierPath,所以你可能会觉得这很有用。

关于ios - spritekit 游戏中的动态贝塞尔绘图 - 最佳(性能)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25213379/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4