パズルがバラバラになる画面遷移できたよ!

アバター
SAI
記事: 115
登録日時: 14年前
住所: はひほーひ

パズルがバラバラになる画面遷移できたよ!

投稿記事 by SAI » 14年前

パズルがバラバラになって遷移するのってかっこいいじゃないですか。
前々からそう思ってて、今回思い切って手をつけてみましたが、
とんでもなく苦労しました・・・・。orz
もう疲れた。

掲示板で質問して、回答をいただいて、さらに色々大変な思いをして、やっとできました。
最終的にISLeさんのコードをそのまま使っています。
本当にありがとうございました。

しかしVC++はすごいですね!
便利な機能が盛りだくさんです。BCCを使ってたのでその便利さにいちいち感動します。
まあ、その代わり重いしコンパイルも遅いんですがね・・・。

そんなわけで動画です。
[nico]http://www.nicovideo.jp/watch/sm14473782[/nico]

次からは画像に取り掛かってやっとSTGらしくする予定です。

ああ
記事: 49
登録日時: 14年前

Re: パズルがバラバラになる画面遷移できたよ!

投稿記事 by ああ » 14年前

やべぇ、カッコいい!w

アバター
SAI
記事: 115
登録日時: 14年前
住所: はひほーひ

Re: パズルがバラバラになる画面遷移できたよ!

投稿記事 by SAI » 14年前

ありがとうございます!
これも皆さんのおかげです(´;ω;`)ブワッ

これからこんなのをバンバン作っていきたいです! ←かなり調子に乗ってる
・・・DirectXが使いこなせれば。

アバター
bitter_fox
記事: 607
登録日時: 14年前

Re: パズルがバラバラになる画面遷移できたよ!

投稿記事 by bitter_fox » 14年前

どうやってフワッと動かしてるんだろう・・・

アバター
SAI
記事: 115
登録日時: 14年前
住所: はひほーひ

Re: パズルがバラバラになる画面遷移できたよ!

投稿記事 by SAI » 14年前

お、知りたいですか?コード見たいですか?
しょうがないですねー ( ̄ー ̄)

はい、ごめんなさい。言ってみたかっただけです。許してください。生まれてきてすいません。

これはバラバラになったあと、その状態(速度や座標)を保持しておいて、タイトルに戻るときになったら倍の時間をかけて全く逆の処理をしてやります。
ただし、本当に全く逆じゃないと元通りになりません。

これが崩れる時です。

CODE:

		for(int i=0; i <12; i++)
		{
			puzzleX[i] += puzzleVX[i];
			puzzleY[i] += puzzleVY[i];
			puzzleKacdo[i] += puzzleVKacdo[i];
			puzzleVY[i] += 1;
		}
そして戻るとき。

CODE:

		for(int i=0; i <12; i++)
		{
			if(time%2==0)puzzleVY[i] -= 1;
			puzzleX[i] -= puzzleVX[i]/2;
			puzzleY[i] -= puzzleVY[i]/2;
			puzzleKacdo[i] -= puzzleVKacdo[i]/2;
		}
if(time%2==0)puzzleVY -= 1; のところは、「全く逆」なので、今度はループの最初に来ています。同じように一番後ろにいると、y座標だけずれてしまいます。
また、速度変化を2フレームに一回にしてるのも、落ちる時と同じ条件で動かすためです。
結果的に半分のスピードで動いているので、フワッと見えます。

って、こんな説明ですいません・・・。

アバター
Null
記事: 3
登録日時: 14年前

Re: パズルがバラバラになる画面遷移できたよ!

投稿記事 by Null » 14年前

これはすごいww