メインコンテンツへスキップ
  1. SOroom/

ティラノV5で音楽のロードを待たない

ゲ制 ティラノスクリプト

ティラノのV5では音楽がプリロードできるようになったのですが、PCでも音楽再生時にロード待ちが発生するのが自分の感覚だとうーん長い!となったので、ロード終わるまで待たずに進ませることにしました。なお無視はしない方が良いと思います。 ティラノのgithubのV5現時点で最新版使ってます。

どこでロード待ちが発生しているかというと、kag.tag_audio.jsのplayですね。

        audio_obj.once("play",function(){
            that.kag.layer.showEventLayer();
			if (pm.stop == "false") {
				that.kag.ftag.nextOrder();
        	}
        });

ここのnextOrderはロード終わらないと動きません。playがロード待つ感じですね。howler.js自体がそんな感じなんじゃないかという気がします。ファイル全部読み込んでから再生するような。ブラウザ上だとまあいいんですが、リソースがすぐそこにあるPCでまでロード待ちは勘弁していただきたい。というわけでコールバックを外します。

        audio_obj.once("play",function(){
            /*
            that.kag.layer.showEventLayer();
            if (pm.stop == "false") {
                that.kag.ftag.nextOrder();
        	}
            */
        });
            that.kag.layer.showEventLayer();
            if (pm.stop == "false") {
                that.kag.ftag.nextOrder();
        	}

9月13日修正 playだとバグりました。onceが必要なのかもしれない。

ただこれ多分ブラウザ判定してPCでは待たないようにすればいいだけな気もします。ブラウザ版だとプリロードしてしまえばいいわけで。でも音楽までプリロードすると読み込みサイズが肥大するので、自分としてはこれでいいかなという感じです。遅れて再生されて問題あるかというとそんなにない作品だった。問題ある作品だとロード待ちとかプリロードはあった方がよさそうです。

9月10日追記 ちなみにロード待ちはファイルが軽い音源だとそこまで感じないんですが、重い音源だと結構かかります。ウェイト入れてるんじゃないかというくらい。これどうするのが一番良いんだろうなあ……。