NowLoadingアニメーションのやり方

アバター
夢幻ノ月夜
記事: 143
登録日時: 9年前
住所: Stens;Gate世界線

NowLoadingアニメーションのやり方

投稿記事 by 夢幻ノ月夜 » 9年前

①SetUseASyncLoadFlag(TRUE)をLoadFiles関数の先頭に置き、
画像・音声ファイルの読み込み処理をLoadFiles関数にまとめる
そしてLoadFiles関数の最後尾にSetUseASyncLoadFlag(FALSE)を置く
※ただし、アニメーションで使いたい画像はLoadFiles関数の前に読み込んでおくこと

②メインのSwitchにNowLoadingアニメーションのStateを追加

※コードは自作ゲームからコピペ

CODE:

 switch(state){
			case LOAD:
				DrawLoad();←
				break;
			case MAIN:
				DrawMain();
				break;
			case START:
				DrawStart();
				break;
			case START_TITLE:
				DrawStart_Title();
				break;
			case TITLE:
				Draw_Title();
				break;
			case DIFFICULT:
				Draw_Difficult();
				break;
			case DIFFICULT_EXTRA:
				Draw_Difficult_Extra();
				break;
			case CHARACTER:
				Draw_Character();
				break;
			case STAGE:
				if(prev==0){
					Draw_StageSelect();
				}else{
					Draw_StageSelect_Extra();
				}
				break;
			case EXIT:
				Draw_Exit();
				break;
		}
③このコードで言うDrawLoad関数の中にアニメーションの処理を描く

④StateをTITLEに変える条件式を

CODE:

if(GetASyncLoadNum()==0){
          state=TITLE;
          frame=0;
}
にする

以上講座終了
質問はコメントでお願いします

アバター
スライパ
記事: 9
登録日時: 12年前

Re: NowLoadingアニメーションのやり方

投稿記事 by スライパ » 9年前

これは・・・! そろそろ実装しようかと思ってやりかたが分からなかった機能です!ありがとうございます
(まだロードに一秒位しか掛からない規模ですが)

アバター
Dixq (管理人)
管理人
記事: 1661
登録日時: 13年前

Re: NowLoadingアニメーションのやり方

投稿記事 by Dixq (管理人) » 9年前

NowLoadingのアニメーションは別スレッドで滑らかにやりたいところですが、DXライブラリはAPIに排他処理がかかっているので出来ないんですよねー。
コードはすっきりしますが。

アバター
夢幻ノ月夜
記事: 143
登録日時: 9年前
住所: Stens;Gate世界線

Re: NowLoadingアニメーションのやり方

投稿記事 by 夢幻ノ月夜 » 9年前

Dixq (管理人) さんが書きました:NowLoadingのアニメーションは別スレッドで滑らかにやりたいところですが、DXライブラリはAPIに排他処理がかかっているので出来ないんですよねー。
コードはすっきりしますが。
これでも俺のPCならヌルヌル動きますぜ

ちょっとaxfcにうpって来るので終わったら日記にリンク貼りますね

アバター
夢幻ノ月夜
記事: 143
登録日時: 9年前
住所: Stens;Gate世界線

Re: NowLoadingアニメーションのやり方

投稿記事 by 夢幻ノ月夜 » 9年前

スライパ さんが書きました:これは・・・! そろそろ実装しようかと思ってやりかたが分からなかった機能です!ありがとうございます
(まだロードに一秒位しか掛からない規模ですが)
もうロード時間がバグってるんじゃないかと心配で
アニメーションしようと思ったら公式ページで興味深いもの見つけましてね
どこにも情報が無かったので自力で実装しました