Sprite QML Type

指定精灵动画。更多

Import Statement: import QtQuick

属性

详细说明

精灵(Sprite)定义了一系列由一个或多个帧组成的动画,并由SpriteSequence 渲染。这些精灵可以位于图像文件的中间,也可以沿多行分割,只要它们能形成一条连续的线,从文件的左边缘缠绕到文件的下一行即可。

有关详细信息,请参阅 "精灵动画"概述。

属性文档

duration : int

动画的持续时间。低于 0 的值无效。

如果frameRate 有效,则会用于计算帧的持续时间。如果不是,且frameDuration 有效,则将使用frameDuration 。否则将使用持续时间。


durationVariation : int

动画的持续时间最多可按此数量变化。变化不会使动画的长度小于 0。

只有当持续时间被用来计算帧的持续时间时,durationVariation 才会生效。

默认值为 0。


frameCount : int

此精灵中的帧数。


frameDuration : int

动画每帧的持续时间(毫秒)。低于 0 的值无效。

如果frameRate 有效,那么它将用于计算帧的持续时间。如果不是,且 frameDuration 有效,则使用 frameDuration。否则将使用持续时间。


frameDurationVariation : int

动画中每一帧的持续时间最多可以改变这个数量。变化不会使动画的长度小于 0。

frameDurationVariation 只有在frameDuration 用于计算帧的持续时间时才会生效。

默认值为 0。


frameHeight : int

该精灵中单帧的高度。


frameRate : real

动画中每秒显示的帧数。低于 0 的值无效。

如果 frameRate 有效,则会用于计算帧的持续时间。如果不是,且frameDuration 有效,则将使用frameDuration 。否则将使用持续时间。


frameRateVariation : real

动画之间的帧速率最多可以变化这个数值。帧速率变化绝不会使动画长度小于 0。

frameRateVariation 只有在frameRate 用于计算帧的持续时间时才会生效。

默认值为 0。


frameSync : bool

如果为 true,则动画没有持续时间。相反,每向屏幕渲染一帧,动画就前进一帧。这将使动画与绘制速度同步,而不是与流逝时间同步。

如果 frameSync 设置为 true,它将覆盖所有持续时间、frameRateframeDuration

默认为假。


frameWidth : int

该精灵单帧的宽度。


frameX : int

精灵第一帧图像文件中的 X 坐标。


frameY : int

精灵第一帧图像文件中的 Y 坐标。


name : string

此精灵的名称,用于其他精灵的 to 属性。


randomStart : bool

如果为 true,则动画在开始第一个动画时,会随机跳过一定的持续时间。这样,当动画开始时,它们看起来就不会像刚刚开始一样。

这只会影响播放的第一个动画。过渡到另一个动画或再次播放同一个动画不会触发此操作。

默认为假。


reverse : bool

如果为 true,则动画将反向播放。

默认为 false。


source : url

动画的图片来源。

如果未指定frameHeightframeWidth ,则假定为一长排方形帧。否则,可以是多个连续行或矩形框,当一行用完时,将使用下一行。

如果指定了frameXframeY ,则将以该 x/y 坐标作为左上角的帧行。


to : QVariantMap

其他精灵的列表和向它们的加权过渡,例如 {"a":1、"b":2、"c":0} 将指定当这个精灵完成时,三分之一的画面将过渡到精灵 "a",而当这个精灵完成时,三分之二的画面将过渡到精灵 "b"。由于过渡是随机选择的,因此这些比例并不精确。如果列表中 "c":0,则不会有精灵随机过渡到 "c",但如果设置了精灵目标,它将是一条有效路径。

如果没有指定列表,或者列表中的权重总和为零,那么精灵在完成后将重复自己的动作。


© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.