ios - 为 iPhone/iPad 应用程序/游戏创建图像/ Sprite 的正确步骤是什么?

标签 ios iphone sprite-kit

我是使用 Xcode 为 iPhone/iPad 开发游戏的新手。因此,我需要一些帮助来了解正确的程序来为游戏创建图像/ Sprite 。

到目前为止,我已经使用 Illustrator 创建了 Sprite ,并将它们导出为 PDF 文件。在 Xcode 中,我创建了这个单一比例资源并将 PDF 放入其中。

如果我正确理解文档,Xcode 会自动从 PDF 生成 @1x@2x@3x 处的图像文件。它会生成 PNG 文件吗?

然后我创建一个 SKSpriteNode 并设置如下大小:abc.size = CGSize(width: 123, height: 123)。我填充了与我在 Illustrator 中设置的框架/图像尺寸相对应的宽度和高度,而不是 123。它是否正确?我想是的,因为这是 @1x 版本?!

但是,如果我需要在 iPhone 和 iPad 上使用不同尺寸的相同图像,我不能简单地调整它的大小,因为 @1x 图像版本不再是矢量并且受限于框架我在 Illustrator 中选择的尺寸?那该怎么办呢?我是否必须在 Illustrator 中调整图像大小并将其导出为不同的尺寸?

正确的步骤是什么?我必须先用铅笔在纸上画草图,然后用尺子测量吗?然后我会去插画家并将框架宽度高度设置为我手动测量的值?

这么多问题。我对这些图像的大小、分辨率和 @1x@2x@3x 版本感到非常困惑。如果我仍然无法在开发过程中按照我的意愿调整图像大小,我不确定为什么应该使用矢量文件,因为它们仍然与我在 Illustrator 中选择的帧大小绑定(bind)。

是否无法设置所有图像之间的比例,然后仅使用矢量 PDF 文件? 我应该如何设置我的 Illustrator?

我希望有人能为黑暗带来一些光明。谢谢。

最佳答案

您的 pdf 大小应以磅@1x(而不是像素)为单位。这些点在手机和 ipad 上的物理尺寸应该相同,但如果您希望它们在手机上更小,则需要第二组图像; Assets 目录可让您更换基于 iphone/ipad 的图像。 Xcode 将您的 pdf 渲染为 png 的 @1x、@2x 和 @3x,您的应用程序将根据设备的分辨率选择正确的 png。您是对的,这些不再是矢量资源,并且放大它们可能会给您留下模糊/像素化的图像。您有几个选择:

1) 在应用程序中包含图像最大比例的放大版本,并且仅在需要放大时才使用此版本(否则,如果您始终渲染小得多的图像,则会浪费内存和处理)。这可能是最简单的解决方案。

2) 将您的资源保留为矢量并将其加载为矢量,您仍然可以将它们渲染为图像以实现恒定比例或比例范围的性能,但如果需要,您始终可以以任何比例重新渲染它们。您很可能想使用 SVG library为此。

3) 您可以使用 paint code 等程序直接将 Assets 作为代码导入。以前有类似的 illustrator 插件,但我还没有看到 Swift 3/Illustrator CC 的插件。这显然比#2 更快,因为不需要解码矢量文件。如果您的文件有大量过度绘制,您可能仍希望光栅化为图像以​​提高性能。

关于ios - 为 iPhone/iPad 应用程序/游戏创建图像/ Sprite 的正确步骤是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41768582/

相关文章:

iOS Sprite Kit 平台跳线问题

ios - 对 Sprite 应用滤镜?

ios - 马丁的 Meteor iOS DDP 包,如何使用用户名登录

ios - HTML标记会使JSON文件无效吗?

ios - NSLocalizedString 只检索键,不检索 Localizable.strings 中的值(IOS)

objective-c - 如何动态更改 View 的位置(x,y 坐标)

ios - 在 Swift 3 中以编程方式创建的 UISlider 中未触发事件

iphone - NSMutableString 与 NSString 的用法?

iphone - 在应用商店更新应用等

swift - 添加 SpriteNodes 并根据时间删除或使用 SpriteKit 单击