图像资源的自动剪裁

    和图片裁剪相关的 Sprite 组件设置有以下两个:

    • 勾选后将在渲染 Sprite 图像时去除图像周围的透明像素,我们将看到刚好能把图像包裹住的约束框。取消勾选,Sprite 节点的约束框会包括透明像素的部分。
    • Size Mode 用来将节点的尺寸设置为原图或原图裁剪透明像素后的大小,通常用于在序列帧动画中保证图像显示为正确的尺寸。有以下几种选择:
      • RAW 选择这个,会将节点尺寸设置为原始图片包括透明像素的大小。
      • CUSTOM 自定义尺寸,用户在使用 矩形变换工具 拖拽改变节点的尺寸,或通过修改 Size 属性,或在脚本中修改 或 height 后,都会自动将 Size Mode 设为 CUSTOM。表示用户将自己决定节点的尺寸,而不需要考虑原始图片的大小。

    trim compare

    有很多动画师在绘制序列帧动画时,会使用一张较大的画布,然后将角色在动画中的运动直接通过角色在画布上的位置变化表现出来。在使用这种素材时,我们需要将 Sprite 组件Trim 设为 false,将 设为 RAW。这样动画在播放每个序列帧时,都将使用原始图片的尺寸,并保留图像周围透明像素的信息,这样才能正确显示绘制在动画中的角色位移。

    在制作序列帧动画时,我们通常会使用这样的工具将序列帧打包成图集,并在导入后通过图集资源下的 SpriteFrame 来使用。在 TexturePacker 中输出图集资源时,Sprites 分类下的 Trim mode 请选择 Trim,一定不要选择 ,否则透明像素剪裁信息会丢失,您在使用图集里的资源时也就无法获得原始图片未剪裁的尺寸和偏移信息了。