【发布时间】:2013-12-06 23:01:49
【问题描述】:
我正在为幼儿制作形状匹配游戏。 我在我的 Mac 上使用 gimp 绘制了形状。
所有图像在安卓设备上似乎都被拉长了。
有没有一些数学方法可以计算出我必须在 mac 计算机上制作多短的图像才能使它们在 android 设备上正确显示?
【问题讨论】:
标签: c# android aspect-ratio
我正在为幼儿制作形状匹配游戏。 我在我的 Mac 上使用 gimp 绘制了形状。
所有图像在安卓设备上似乎都被拉长了。
有没有一些数学方法可以计算出我必须在 mac 计算机上制作多短的图像才能使它们在 android 设备上正确显示?
【问题讨论】:
标签: c# android aspect-ratio
这是一个棘手的问题。我已经为 iOS 制作了几个应用程序,并且在 iPhone 和 iPad 之间切换时,按钮和背景的图形问题几乎相同,它们具有不同的纵横比(我怀疑这是你遇到的问题)。将方向也加入到组合中。
我使用 Gimp、Inkscape、Spine、Cocos2d-x 和许多其他工具作为参考(请参阅 here)。
据我所知,“不同屏幕几何形状”问题的一般选项是(如果还有其他问题,请告诉我):
选项 1 意味着额外的工作......对于业余爱好者或独立(如我)开发人员来说是不可接受的。 选项 2 通常看起来像垃圾。沮丧和悲伤通常会随之而来。 选项 3 是我最常使用的选项。我发现有时我必须根据设备或几何形状添加小的更改(阅读:hacks)。在 iOS 的情况下,这还不算太糟糕,因为只有两个几何图形需要处理。在 Android 的情况下,有许多不同的平板电脑几何形状,您可以通过使用几何形状范围并为您的应用程序选择一个固定的方向来减少它。
归根结底,按单个维度(高度或宽度)的比例缩放让我获得了最大的收益。
我通常使图形比我需要的“大”一点,所以我只需要按比例缩小。这会消耗更多的内存,但我会重复使用很多,使用精灵表等。管理每一点内存(在大型 AAA 级游戏中必须这样做)和你能得到什么都有一个明确的权衡在一个小的独立应用程序中。我不鼓励马虎或记忆管理不善;我鼓励平衡资源与简单性的发展需求……为不同的情况制作相同的图形会消耗大量的日光。
更多注意事项: 对于我使用图形框架的应用程序(即游戏),我使用“视口”让我将物理与图形相匹配......也就是说,根据多少动态缩放图形的大小我希望用户看到的整个场景。这让我可以将“body”的图形放在它上面,并根据需要静态或动态匹配大小。代码是 C++ 并且只是松散地绑定到框架......并且这个概念适用于游戏的一般情况(即根据需要缩放图形)。有兴趣可以找一些描述和代码here。
这有帮助吗?
【讨论】:
您需要设计您的应用程序,以便无论设备分辨率如何,它都能正常运行,因为许多移动设备具有许多不同的纵横比和分辨率。
如果您的图像被拉伸,那么您需要更改 ui 设计,以便将它们放大并隔开以利用任何空间。
【讨论】: