2D

精灵

Sprite 是 2D 项目的核心资产,通过以下方式驱动渲染与交互:

  • 数据源:基于 Texture2D 提取图形数据
  • 渲染控制:通过属性配置(如 regionpivot)定制显示效果
  • 组件联动

属性

在编辑器中可以方便地查看与调试 Sprite 资产的相关属性:

Region属性效果示意图
属性名类型描述默认值
textureTexture2D关联的纹理资源引用null
widthNumber精灵宽度,未设置时自动计算为 纹理像素宽度 / 100(世界空间单位)texture.width/100
heightNumber精灵高度,未设置时自动计算为 纹理像素高度 / 100(世界空间单位)texture.height/100
regionRect纹理采样区域(归一化坐标,范围 0~1(0,0,1,1)
pivotVector2中心点相对于 region 的位置(左下角为 (0,0),右上角为 (1,1)(0.5,0.5)
borderVector4九宫格/平铺模式下的边界距离(左、下、右、上)(0,0,0,0)
belongs toSpriteAtlas此精灵属于哪些图集,此处仅做展示用null

区域裁剪(Region)

  • 功能:从纹理中截取矩形区域显示
  • 示例:设置 region: (0.15, 0.3, 0.55, 0.5) 表示从纹理 15% 宽度、30 %高度处截取 55% 宽、50% 高的区域
    Region属性效果示意图

锚点(Pivot)

  • 坐标系:左下角 (0,0) → 右上角 (1,1)
  • 应用场景:控制旋转/缩放锚点、对齐元素
    Pivot中心点示意图

使用

创建 Sprite 资产

上传图片生成

  1. 资产面板 空白处 右键
  2. 选择 Upload → Sprite
  3. 上传图片后自动生成:
    • 纹理资产:图片名.png
    • 精灵资产:图片名-spr.png
    上传生成Sprite流程示意图

创建空白精灵

  1. 在资产面板 右键 → Create → Sprite
  2. 手动绑定纹理后使用
    创建空白Sprite示意图

脚本动态创建

// 创建空白精灵
const sprite = new Sprite(engine);
 
// 基于现有纹理创建
const spriteWithTexture = new Sprite(engine, texture2D);

设置 Pivot

你既可以使用编辑器提供的常用锚点配置(如居中、四角等),也可以点击 Custom 输入归一化的坐标。

预设Pivot选项示意图

这篇文档对您有帮助吗?