Edited at

ゲーム画面を表示するcanvasを指定する

※これまでのTipsはphina.js Tips集にまとめています。


今回のTips

phina.jsのゲーム画面はhtml5canvasタグに表示されていますが、通常はライブラリで自動で作成されます。設計上htmlと併用したい場合などは、自分で用意したcanvasタグを指定して表示することができます。

mycanvas.gif

[runstantで確認]


表示するcanvasの指定方法


HTML

<canvas id = "mycanvas"></canvas>

<h2>I am a html element</h2>


  • body内に表示先のcanvasタグを記載します。

  • 確認のために適当なhtml要素を追加しています。


CSS

#mycanvas {

margin: 0 auto;
width: 30%;
display: block;
}


  • canvasの幅などを指定しています。


javascript

phina.main(function() {

// アプリケーションを生成
var app = GameApp({
// 表示先のcanvasを指定
query: '#mycanvas',
// MainScene から開始
startLabel: 'main',
// 画面にフィットさせない
fit: false,
});
}



  • main関数の引数querycanvasidを指定します。

  • 引数fitfalseを指定します。


全体ソース

// グローバルに展開

phina.globalize();
/*
* メインシーン
*/

phina.define("MainScene", {
// 継承
superClass: 'DisplayScene',
// 初期化
init: function() {
// 親クラス初期化
this.superInit();
// 背景色
this.backgroundColor = 'black';
// ラベル
Label({
text: 'I am a phina.js Label',
fill: 'lime',
}).addChildTo(this).setPosition(this.gridX.center(), this.gridY.center());
},
});
/*
* メイン処理
*/

phina.main(function() {
// アプリケーションを生成
var app = GameApp({
// 表示先のcanvasを指定
query: '#mycanvas',
// MainScene から開始
startLabel: 'main',
// 画面にフィットさせない
fit: false,
});
// fps表示
//app.enableStats();
// 実行
app.run();
});