検索対象:検索ほろほろりなゲーム置き場ジャンル雑多なゲーム・ゲーム制作関連のブログ記事置き場。最近はBlender中心に学習中。今回の記事は、phina.jsでのフレーム数や、経過時間計測、シーン生成・消去、それと、dat.GUIを使う方法をについてを書いていきたいと思います。テンプレートについてをご一読いただくことをおすすめいたします。liteを使って試されることをおすすめします。一応雛型として置いておきます。app.run();});BaseAppクラスについてphina.jsを扱うにあたってメイン処理のところで、毎回お世話になっているGameAppクラスですが、そのGameAppクラスが継承しているBaseAppクラスを読み解きつつ、フレーム数や、経過時間、シーン生成と消去と、phina.jsでのdat.GUIの使い方などについて書いていきたいと思います。説明デフォルト値awakeupdateをしているかが真偽値で入る。nullfps1秒間のフレーム数が入る。nullframe現在のフレーム数が入る。nullcurrentScene現在のシーンが入る。this._scenes[this._sceneIndex]rootSceneこれに関してはよくわかりませんでした。this._scenes[0]deltaTime1フレームにかかったミリ秒数が入る。this.ticker.deltaTimeelapsedTimeシーンが始まってからの経過ミリ秒数が入る。その時点までのミリ秒数(Unixエポック)が入る。this.ticker.currentTimestartTimeシーンが始まった時刻のUnixエポックが入る。this.ticker.startTimeメソッドrun()アプリケーションを実行します。replaceScene(scene)シーンを変更します。実行中のシーンから変更したいシーンを指定します。pushScene(scene)シーンを新しく生成します。replaceSceneとの違いは、replaceSceneはシーン遷移で、pushSceneは現在のシーンを一時停止して、一時的な新しいシーンを生成する、みたいな感じみたいです。一時停止等で使うのが良いと思います。新しく生成したいシーンを指定します。popScene()現在実行中のシーンを消します。一時停止やオプション画面などを消すときに使用するのが良いと思います。start()シーンのアップデートを実行します。stop()シーンのアップデートをストップします。enableStats()fpsを表示します。enableDatGUI(callback)dat.GUIを表示します。dat.GUIを使って、変更させたいパラメータを指定します。dat.GUIについて、詳しくはdat.guiをご参照ください。経過秒数シーン生成、消去dat.GUI詳しい説明は、本家様や他の解説サイト・ページ様に解説丸投げします。ちなみに、私はdat.GUI入門のページを参考にさせていただきました。}};enableDatGUIメソッドからdat.GUIにセットしています。guiCtrl;メインシーンのアップデートのところで呼び出して、各オブジェクトのプロパティ値を変更しています。gui.lineStroke;一部、チェックボックスのものは、SpiralLineのところで、真偽値で描画するか等に反映させています。}}フレーム数スパイラルライン生成時、引数に、dat.GUIのパラメータ値を調べるための変数と一緒に、その時点でのフレーム数を360で割った余りをスパイラルライン全体の基準の角度として渡しています。これで1フレーム毎に少しずつ回して変化させています。一時停止したり、GUIのパネルからの操作でupdateをstopしたりした場合でも、app.elapsedTimeの秒数は増え続けるため、updateしている間だけの経過秒数を計測するための方法として、app.deltaTimeで取得した1フレーム毎の経過秒数をthis.timeに加算するというやりかたとの比較として並べる為に2つ表示しています。_)mメインシーンの方で、一時停止ボタンが押された時に、ポーズシーンを生成し、ポーズシーンでスタートボタンが押された時に、ポーズシーンを消すようにしています。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。twitterfeed当ブログと管理人についてはをご覧ください。twitterfeed。