2013年4月13日土曜日

3DSブラウザで画像表示

ゲーム画面のバランス確認のため、3DS に静止画を表示しました。

もぐらたたき

Nintendo 3DS は Web ブラウザとして NetFront Browser を採用しています
http://www.nintendo.co.jp/3ds/hardware/features/browser.html

解像度は上が 800x240px 、下が 320x240px です。
http://www.nintendo.co.jp/3ds/hardware/spec/index.html

今回はゲームの解像度を 320x480px にして、上下の画面にきっちり表示させました。
下画面にはメニューバーが必ず表示されるので、下画面のコンテンツの高さは約 210px しか使えません。

デフォルトではコンテンツの幅 980px を画面に表示しますが、スマートフォンと同様に viewport で設定可能です。今回は width = 380px を指定しています。

3DS のブラウザでゲームをしようとすると、スクロール機能が邪魔になってしまいます。
コンテンツの幅を 380px にすると左右へのスクロールは禁止できるのですが、
コンテンツの高さを 480px にしても、それを超えてスクロールできてしまいます。

コンテンツの上下に画面1つ分の空白が作成されるため、余計なところまでスクロールできてしまいます。

コンテンツの上下に1画面分の空白が作られる

理想的にはこの状態で固定したい

空白も含めてスクロールできてしまう

スクロールを禁止する方法は見つからなかったのですが、ずれた画面をフォーカスする方法はありました。十字キーの下ボタンを押すとズレた画面が本来の場所に戻ります。



十字キーの下を押すとコンテンツの下端(空白を含まない)を、下画面の下枠にフィットさせる位置までスクロールすることができます。余計な空白まで表示しないため、画面がずれてしまったら下ボタンを押して元の場所に戻すようにしようと思います。

ScrollTo() を使って画面をスクロールする方法もあるようなのですが、うまく動かなかったため手動で戻すことにします。画面がスクロールするたびに ScrollTo() で元の場所に戻すという方法もあるかもしれません。



0 件のコメント:

コメントを投稿