Webでアニメーションgifにするような部品を作るときに使用する機能です。
Qt Quick2.0からの新機能です。
「SpriteSequence」と「SpriteImage」と「Sprite」エレメントを使用します。
なんか気がついたらエレメント名が変わってました・・・。
/// ポイント ///
・用意する画像は横方向に同じサイズの画像を1枚に並べる

・SpriteSequenceSpriteImageには複数のSpriteを登録しておいて状態に応じて切り替えが可能
・フレームの更新間隔の決定優先度
frameRate > frameDuration > duration
・フレームサイズ(frameWidth, frameHeight)は1フレームごとのサイズ
(画像全体のサイズではない)
・frameDurationVariationなど~Variationで更新間隔などに揺らぎを与えれる
・「reverse」でアニメーションの順番を逆順にできる
Qt Quick2.0からの新機能です。
「SpriteSequence」と
なんか気がついたらエレメント名が変わってました・・・。
/// ポイント ///
・用意する画像は横方向に同じサイズの画像を1枚に並べる
・SpriteSequence
・フレームの更新間隔の決定優先度
frameRate > frameDuration > duration
・フレームサイズ(frameWidth, frameHeight)は1フレームごとのサイズ
(画像全体のサイズではない)
・frameDurationVariationなど~Variationで更新間隔などに揺らぎを与えれる
・「reverse」でアニメーションの順番を逆順にできる
/// サンプル ///
クリックするとスプライトを入れ替えます。
分かってないこと
・複数登録した「Sprite」を順番に再生できないのか
・「goalSprite」プロパティって結局なに?
説明には現在アニメーションしているスプライトの名前って書いてあるが・・・。
読んでも空っぽ
<Category : Qt>
クリックするとスプライトを入れ替えます。
import QtQuick 2.0
Rectangle {
width: 200
height: 344
property int spriteNo: 1
SpriteSequence{
id: _anime
anchors.fill: parent
running: true
interpolate: true
sprites: [
Sprite{
name: "first"
frameWidth: 200
frameHeight: 344
frameX: 0
frameY: 0
frameDuration: 100
frameCount: 7
source: "images/boalsprite_red.png"
},
Sprite{
name: "second"
frameWidth: 200
frameHeight: 344
frameX: 0
frameY: 0
frameDuration: 100
frameCount: 7
source: "images/boalsprite_blue.png"
}
]
}
MouseArea {
anchors.fill: parent
onClicked: {
//spriteを入れ替える
if(spriteNo === 1){
_anime.jumpTo("second");
spriteNo = 2;
}else{
_anime.jumpTo("first");
spriteNo = 1;
}
}
}
}
分かってないこと
・複数登録した「Sprite」を順番に再生できないのか
・「goalSprite」プロパティって結局なに?
説明には現在アニメーションしているスプライトの名前って書いてあるが・・・。
読んでも空っぽ

