Options
All
  • Public
  • Public/Protected
  • All
Menu

Class SpriteFrame

精灵帧资源。 一个 SpriteFrame 支持多种类型

  1. 矩形精灵帧
  2. 九宫格精灵帧
  3. 网格精灵帧 它主要包含下列数据:
  • 纹理:会被渲染流程使用的 TextureBase or RenderTexture 资源。
  • 矩形:在纹理中的矩形区域。
  • 九宫格信息:九宫格的内部矩形四个边距离 SpriteFrame 外部矩形的距离
  • 网格信息:网格类型精灵帧的所有顶点列表
  • uv: 四边形 UV
  • uvSliced: 九宫格 UV 可通过 SpriteFrame 获取该组件。
example
import { resources } from 'cc';
// First way to use a SpriteFrame
const url = "assets/PurpleMonster/icon/spriteFrame";
resources.load(url, (err, spriteFrame) => {
  const node = new Node("New Sprite");
  const sprite = node.addComponent(Sprite);
  sprite.spriteFrame = spriteFrame;
  node.parent = self.node;
});
// Second way to use a SpriteFrame
const self = this;
const url = "test_assets/PurpleMonster";
resources.load(url, (err, imageAsset) => {
 if(err){
   return;
 }
 const node = new Node("New Sprite");
 const sprite = node.addComponent(Sprite);
 const spriteFrame = new SpriteFrame();
 const tex = imageAsset._texture;
 spriteFrame.texture = tex;
 sprite.spriteFrame = spriteFrame;
 node.parent = self.node;
});
// Third way to use a SpriteFrame
const self = this;
const cameraComp = this.getComponent(Camera);
const renderTexture = new RenderTexture();
rendetTex.reset({
  width: 512,
  height: 512,
  depthStencilFormat: RenderTexture.DepthStencilFormat.DEPTH_24_STENCIL_8
});
cameraComp.targetTexture = renderTexture;
const spriteFrame = new SpriteFrame();
spriteFrame.texture = renderTexture;

Hierarchy

Index

Constructors

constructor

Properties

__asyncLoadAssets__

__asyncLoadAssets__: boolean = false

__depends__

__depends__: any = null

__nativeDepend__

__nativeDepend__: any = null

__onLoadedInvoked__

__onLoadedInvoked__: boolean = false

Protected _atlasUuid

_atlasUuid: string = ""

Protected _capInsets

_capInsets: number[] = [0, 0, 0, 0]

Protected _isFlipUVX

_isFlipUVX: boolean = false

Protected _isFlipUVY

_isFlipUVY: boolean = false

_native

_native: string = ""

用于本机资产的可序列化URL。供内部使用。

default

""

_nativeUrl

_nativeUrl: string = ""

Protected _offset

_offset: Vec2 = new Vec2()

Protected original

original: { _texture: TextureBase | RenderTexture; _x: number; _y: number } | null = null

Protected _originalSize

_originalSize: Size = new Size()

Protected _packable

_packable: boolean = true

Protected _rect

_rect: Rect = new Rect()

Protected _rotated

_rotated: boolean = false

Protected _texture

_uuid

_uuid: string

loaded

loaded: boolean = true

该资源是否已经成功加载。

unbiasUV

unbiasUV: number[] = []

uv

uv: number[] = []

矩形的顶点 UV

uvHash

uvHash: number = 0

uvSliced

uvSliced: IUV[] = []

九宫格的顶点 UV。

vertices

vertices: IVertices | null = null

网格类型精灵帧的所有顶点列表

Static preventDeferredLoadDependents

preventDeferredLoadDependents: boolean = false

当场景或 Prefab 被标记为 asyncLoadAssets,禁止延迟加载该资源所依赖的其它原始资源。

default

false

Static preventPreloadNativeObject

preventPreloadNativeObject: boolean = false

禁止预加载原生对象。

default

false

Accessors

Private nativeAsset

  • get nativeAsset(): any
  • set nativeAsset(obj: any): void
  • 此资源的基础资源(如果有)。 此属性可用于访问与资源相关的其他详细信息或功能。
    如果_native可用,则此属性将由加载器初始化。

    default

    null

    Returns any

  • 此资源的基础资源(如果有)。 此属性可用于访问与资源相关的其他详细信息或功能。
    如果_native可用,则此属性将由加载器初始化。

    default

    null

    Parameters

    • obj: any

    Returns void

nativeDep

  • get nativeDep(): undefined | { __isNative__: boolean; ext: string; uuid: string }

textureSource

atlasUuid

  • get atlasUuid(): string
  • set atlasUuid(value: string): void

flipUVX

  • get flipUVX(): boolean
  • set flipUVX(value: boolean): void

flipUVY

  • get flipUVY(): boolean
  • set flipUVY(value: boolean): void

height

  • get height(): number

insetBottom

  • get insetBottom(): number
  • set insetBottom(value: number): void

insetLeft

  • get insetLeft(): number
  • set insetLeft(value: number): void

insetRight

  • get insetRight(): number
  • set insetRight(value: number): void

insetTop

  • get insetTop(): number
  • set insetTop(value: number): void

nativeUrl

  • get nativeUrl(): string

offset

  • get offset(): Vec2
  • set offset(value: Vec2): void
  • 精灵帧偏移量。 在图集中的精灵帧可能会被剔除透明像素以获得更高的空间利用李,剔除后的矩形尺寸比剪裁前更小,偏移量指的是从原始矩形的中心到剪裁后的矩形中心的距离。

    Returns Vec2

  • 精灵帧偏移量。 在图集中的精灵帧可能会被剔除透明像素以获得更高的空间利用李,剔除后的矩形尺寸比剪裁前更小,偏移量指的是从原始矩形的中心到剪裁后的矩形中心的距离。

    Parameters

    Returns void

original

originalSize

  • get originalSize(): Size
  • set originalSize(value: Size): void

packable

  • get packable(): boolean
  • set packable(value: boolean): void

rect

  • get rect(): Rect
  • set rect(value: Rect): void
  • 获取 SpriteFrame 的纹理矩形区域。 如果是一个 atlas 的贴图,则为当前贴图的实际剔除透明像素区域。

    Returns Rect

  • 获取 SpriteFrame 的纹理矩形区域。 如果是一个 atlas 的贴图,则为当前贴图的实际剔除透明像素区域。

    Parameters

    Returns void

refCount

  • get refCount(): number

rotated

  • get rotated(): boolean
  • set rotated(rotated: boolean): void

texture

width

  • get width(): number

Methods

calculateSlicedUV

  • _calculateSlicedUV(): void

calculateUV

  • _calculateUV(): void

checkPackable

  • _checkPackable(): void

deserialize

  • deserialize(serializeData: any, handle: any): void

Protected refreshTexture

resetDynamicAtlasFrame

  • _resetDynamicAtlasFrame(): void

serialize

  • serialize(ctxForExporting: any): any

setDynamicAtlasFrame

  • setDynamicAtlasFrame(frame: any): void

Private setRawAsset

  • setRawAsset(filename: string, inLibrary?: boolean): void

Protected textureLoaded

  • _textureLoaded(): void

addRef

checkRect

clone

Optional createNode

decRef

  • decRef(autoRelease?: boolean): Asset

destroy

  • destroy(): any

getGFXSampler

getGFXTexture

getHash

  • getHash(): number

getOffset

getOriginalSize

getRect

  • 获取 SpriteFrame 的纹理矩形区域。 如果是一个 atlas 的贴图,则为当前贴图的实际剔除透明像素区域。

    deprecated

    since v1.2, please use rect

    Parameters

    • Optional out: Rect

    Returns Rect

getSamplerHash

  • getSamplerHash(): number

isRotated

  • isRotated(): boolean

onLoaded

  • onLoaded(): void

reset

Private serialize

  • serialize(): void

setOffset

  • setOffset(offset: Vec2): void

setOriginalSize

  • setOriginalSize(size: Size): void

setRect

  • setRect(rect: Rect): void

setRotated

  • setRotated(rotated: boolean): void

textureLoaded

  • textureLoaded(): boolean

toString

  • toString(): string
  • 返回对象的字符串表示形式。
    Asset 对象将会重写 Object 对象的 toString() 方法。
    当资源要表示为文本值时或在字符串连接时引用时,
    JavaScript 会自动调用 toString() 方法。

    对于原始类型的资源,它将返回this.nativeUrl
    否则,返回空字符串。
    子类可能会覆盖此方法。

    method

    toString

    Returns string

Static createWithImage

Static deserialize

  • deserialize(data: any): any

Generated using TypeDoc