自作ゲームの大福島

プログラムの使えない素人がCF2.5(インディゲームクリエーター)を使ってゲームを作ってみるブログです

スポンサードリンク

アニメーションとは一体

f:id:vobo:20160321232241j:plain

ほう、貴殿もここに目をつけておったで御座るか。

まさか我が家の中に南国が仕込んで御座ったとは…

灯台下暗しとはまさにこの事で御座ろう。

 

 

ここ最近海外ゲーが面白いで御座います。モフヲです。

数日間「unepic」という海外インディーズゲームにハマっておりました。

 

Steam:UnEpic

(steamより「unepic」掲載ページへのリンクです)

 

内容はシンプルな2D探索アクションゲームなのですが、見た目の地味さに反して、実に面白く、日本語訳、ステージギミックともに非常に良く出来ております。

難易度は選択出来るものの、根本的には非常に高難度のゲームですが、丁度良いタイミングでショートカットを発見出来たりと、古き良き探索ゲームといった味わいです。

久しぶりにいいゲームに出会ったなあ…という感じ。

また、見た目は王道の中世ファンタジー世界を彷彿とさせるも、主人公が

腐れ無職種馬野郎という素敵設定にも注目。

多分ここまでぶっ飛んだ設定でゲーム作れちゃうのはインディーズならではかと。

ビバ☆インディーズ。

興味のある方は是非「unepic」でググって見て下され。

 

 

と、他所様のゲームの話はここまでに致しまして、自作ゲームの雛形作りの続きです。

 f:id:vobo:20160321235309j:plain

ええ、相変わらず何の画面か分からない&何の面白味も無い画像で御座いますが、前回記事に引き続いて、主人公の動作とアニメーションの連携部分の基礎を作っております。

今日までに設定した部分は

①左右、ジャンプ移動とアニメーション連携

②地上攻撃アクション、ジャンプ中攻撃アクションのアニメーション連携

この二つだけ。

 

二段ジャンプの実装や攻撃アクションは前作猫ゲーで学んだ知識で、比較的楽に作れるのですが、アニメーション制御を苦手なままにしていた為、イベント組みに異常に時間がかかりました。

そして、アニメーションの種類を増やせば増やすほど過去に設定したアニメーションが再生されなくなっていくという安定の迷走っぷり。

ああ もう主人公は棒でいいや

 

f:id:vobo:20160321235814j:plain

とそうも言っていられないので、試行錯誤を繰り返した結果、何とか各アニメーションの制御に成功したわけですが、今回得た教訓は、特定のアニメーションが再生されない場合、

そのアニメーションが「再生されていない」のではなく、「再生されているが優先されていない」事が原因である

という事でした。

例えば、

①右キーを押しっぱなしにしている間は、「ダッシュ」アニメを再生するよ

 

というイベントを設定し、次に

 

②「攻撃」キーを押した時、攻撃オブジェクトを発射しながら、「攻撃」アニメを再生するよ

 

というイベントを連続して組むとします。

で、右キーを押したまま攻撃ボタンを押すとどうなるか、というと、結論「攻撃」アニメは再生されません。

何故なら、「攻撃」アニメを再生するより、右キー押しっぱなしによる「ダッシュ」アニメが優先されているからです。

正確には、攻撃アニメも再生されるんですが、1フレーム(60分の1秒)だけ再生されて、すぐ優先の高い「ダッシュ」アニメに上書きされてしまいます。

 

で、どうするかというと、画像で添付したように、「ダッシュ」アニメ側に、条件を付け加えるわけです。つまりイベント①を

 

①右キーを押しっぱなしにしていて、かつ、「攻撃」アニメが再生されていない間は、「ダッシュ」アニメを再生するよ

f:id:vobo:20160322001630j:plain

*「条件を反転」を使ってやりましょう。アニメーション「発射」が再生されていない間という意味になります

 

とやる事で、攻撃ボタンを押す=攻撃アニメが再生=ダッシュアニメの再生条件を満たさなくなる為、攻撃アニメーションが優位に立ってきちんと再生されるわけです。

 

発動条件の重なるアニメーションを複数設定している場合は、一つ一つのアニメーションの発動条件を「他のアニメーションが再生されていない間」という風に区別する必要があるよ、という事ですね。

 

ああ、ややこしい( ´_ゝ`) 

ですが、少しはアニメーション設定の基礎が分かったような気がします。

まだまだ勉強せなアカン事が多いですねえ…