Unity3d中导入的精灵的物理大小

d12磨砂

我当时正在Unity3d中为iOS开发一款游戏,在构建完游戏并将其发送到设备后,我注意到安装的应用程序的实际大小非常大(“非常大”是指超过2GB,大声笑)。

我在流浪,为什么呢?因此,我创建了测试项目,创建了场景,并向其中添加了一张大小为2048x2048的图像。所以我得到了与此文件的项目:

  • 我的精灵
  • MyScene

使用以下设置导入了MySprite:

  • 贴图类型:雪碧
  • 精灵模式:单人
  • 像素至单位:100
  • 过滤模式:点
  • 最大大小:2048
  • 格式:真彩色

而且,我什至没有忘记取消选中覆盖iOS的此设置。因此,MySprite在未压缩状态下的大小为16 MB。很好。没有质量损失,每个像素32位。

然后,我创建了Xcode项目。并在数据文件夹文件sharedassets0.assets找到了,它的大小16.1 MB!我进行了一些研究,发现由于MySprite,此文件很大。所以...我很困惑。一点点。然后,我从这个Xcode项目和解压冷game.ipa文件所做的ipa文件,并再次发现sharedassets0.assets该倩女幽魂TA-DA-DA 16.1 MB!

我不喜欢这种行为。为什么MySprite的物理大小为16 MB?我了解,在内存处于未压缩状态时,无论如何将占用16 MB。但是我想在设备上压缩文件并在运行时将其解压缩。因为我不喜欢大小为16 MB * 100的应用程序:)

因此,是否可以要求Unity3d在构建时压缩图像?

PS我正在使用OS X 10.9.3,Unity3d v.4.5。我有Unity3d Pro,但没有iOS Pro。

d12磨砂

我找到了下一个解决方案。

我将需要物理处理的所有图像放入带有.bytes扩展名的Resources文件夹中然后我通过加载

var binImage = Resources.Load<TextAsset>(imagePathInResourcesFolder);
myTexture2D.LoadImage(binImage.bytes);

如果您需要Sprite,Texture2D可以随时使用Sprite.Create()function。

这对我有好处,因为我可以轻松加载图像并将其卸载以释放内存使用量。但是这种解决方案有很大的缺点。没有任何Unity3d扩展,我们将失去常规的Unity工作流程。真伤心 但这只是我发现有效的解决方案。

PS实际上,您可以使用WWW类加载图像。但是目前,我更喜欢使用Resources。

PPS记住Unity3d包含了它可以使用的所有内容,这些资源可以从Resources文件夹进入构建。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Unity3d中导入的精灵的物理大小

来自分类Dev

无法在Unity3D 4.5.5中导入资产

来自分类Dev

Unity3d从Textures文件夹加载精灵

来自分类Dev

如何获得精灵的平均颜色?(Unity3d)

来自分类Dev

Unity3d从Textures文件夹加载精灵

来自分类Dev

UNITY3D 将数组中的精灵样式应用到精灵 /////// 错误 CS1061:“精灵”不包含“精灵”的定义

来自分类Dev

在Unity3D上使用精灵时出现2个问题

来自分类Dev

Unity3D - 在运行时切片精灵?

来自分类Dev

Unity3D Player大小更改了吗?

来自分类Dev

Unity3D Player大小更改了吗?

来自分类Dev

如何使用Unity3d的内置物理引擎绘制弹丸轨迹?

来自分类Dev

如何使用Unity3d的内置物理引擎绘制弹道?

来自分类Dev

2019 年 Unity3d 的物理有多少确定性?

来自分类Dev

在Unity3D中导出Nao机器人模拟器

来自分类Dev

仅选择一堆精灵中的第一个精灵(Unity3D 2D游戏)

来自分类Dev

导入Unity3d后3d模型在其网格外的枢轴

来自分类Dev

导入Unity3d后3d模型在其网格外的枢轴

来自分类Dev

如何在unity3D 4.5中在具有精灵渲染器组件的图像后发送GUI纹理

来自分类Dev

nullreferenceexception:unity3d

来自分类Dev

Unity3D:高分

来自分类Dev

nullreferenceexception:unity3d

来自分类Dev

从 Unity3D 导入后,Xcode 中架构 armv7 的未定义符号

来自分类Dev

Unity3D C#:如何根据设置为动态的内容调整输入字段的大小

来自分类Dev

Unity3d SelectionGrid单元格大小调整

来自分类Dev

制作场景时的Assetbundle大小问题(.unity3d文件)

来自分类Dev

如何在Unity3D中计算组按钮的自动大小

来自分类Dev

Unity3D:将所有游戏对象转换为相同大小,而不考虑其大小

来自分类Dev

当在UNITY3D的X轴上将相机旋转30度时,如何在鼠标位置上跟随精灵?

来自分类Dev

Unity3d的增强现实SDK

Related 相关文章

  1. 1

    Unity3d中导入的精灵的物理大小

  2. 2

    无法在Unity3D 4.5.5中导入资产

  3. 3

    Unity3d从Textures文件夹加载精灵

  4. 4

    如何获得精灵的平均颜色?(Unity3d)

  5. 5

    Unity3d从Textures文件夹加载精灵

  6. 6

    UNITY3D 将数组中的精灵样式应用到精灵 /////// 错误 CS1061:“精灵”不包含“精灵”的定义

  7. 7

    在Unity3D上使用精灵时出现2个问题

  8. 8

    Unity3D - 在运行时切片精灵?

  9. 9

    Unity3D Player大小更改了吗?

  10. 10

    Unity3D Player大小更改了吗?

  11. 11

    如何使用Unity3d的内置物理引擎绘制弹丸轨迹?

  12. 12

    如何使用Unity3d的内置物理引擎绘制弹道?

  13. 13

    2019 年 Unity3d 的物理有多少确定性?

  14. 14

    在Unity3D中导出Nao机器人模拟器

  15. 15

    仅选择一堆精灵中的第一个精灵(Unity3D 2D游戏)

  16. 16

    导入Unity3d后3d模型在其网格外的枢轴

  17. 17

    导入Unity3d后3d模型在其网格外的枢轴

  18. 18

    如何在unity3D 4.5中在具有精灵渲染器组件的图像后发送GUI纹理

  19. 19

    nullreferenceexception:unity3d

  20. 20

    Unity3D:高分

  21. 21

    nullreferenceexception:unity3d

  22. 22

    从 Unity3D 导入后,Xcode 中架构 armv7 的未定义符号

  23. 23

    Unity3D C#:如何根据设置为动态的内容调整输入字段的大小

  24. 24

    Unity3d SelectionGrid单元格大小调整

  25. 25

    制作场景时的Assetbundle大小问题(.unity3d文件)

  26. 26

    如何在Unity3D中计算组按钮的自动大小

  27. 27

    Unity3D:将所有游戏对象转换为相同大小,而不考虑其大小

  28. 28

    当在UNITY3D的X轴上将相机旋转30度时,如何在鼠标位置上跟随精灵?

  29. 29

    Unity3d的增强现实SDK

热门标签

归档