mieki256's diary



2012/07/25(水) [n年前の日記]

#1 [haxe] Haxe + NMEをまだ実験中

とりあえず、Android実機、Lenovo IdeaPad A1 で動かせるか試していたり。実機をUSBケーブルで接続して、adb install -r hoge_debug.apk と打てばインストールはできる。-r は、reinstall の r。

一応動いたのだけど、600x1024の画面サイズの端末に、320x480で設計したソレを表示しているから、画面の左上に小さく表示されている状態で。画面一杯に表示したいのだが…。

方法その1。ソース中で、
var stage = Lib.current.stage;
stage.scaleMode = nme.display.StageScaleMode.EXACT_FIT;
stage.align = nme.display.StageAlign.TOP_LEFT;
stage.displayState = StageDisplayState.FULL_SCREEN;
等を指定する。 このように指定すれば、画面サイズ一杯に引き延ばしてくれる。ただし、application.nmml 中で、unless="mobile" と書かれた部分を削除しておかないといけない。この指定が入っていると、Android 版は、 〜.scaleMode = 〜.NO_SCALE しか機能しない。ソレ以外を指定すると、そもそも画面が一切表示されない状態になる。…でも、わざわざそういう指定がデフォルトでされているということは、この指定を削ると別の環境では問題が出るのだろうな。

方法その2。ステージに Sprite を addChild() して、描画したいものは全てそのSpriteに addChild()。その、全てを司る Sprite を、画面サイズに拡大縮小する。画面の縦横幅は、Lib.current.stage.stageWidth , Lib.current.stage.stageHeight で取得できる。

一応このようにして、画面一杯に表示できなくはない。けど。どちらも遅い…。60FPSを指定しているはずなのだけど、どう見ても処理落ちして、動きがガクガクしてる。10〜20FPSぐらいを前提にして作らないと描画が間に合わない予感。大昔のガラケー並みに酷い。 *1

Lib.current.stage.quality = StageQuality.LOW; 等を指定して、画質を落として処理速度を稼げないかと期待したけれど。試してみても効果は無く。
*1: もっとも、昔のガラケーは 600x1024 よりはるかに小さい画面サイズだったので、それに比べれば、機器のスペックは明らかに向上しているのだろうけど。

#2 [flash] Flashはまだゲームパッドに対応してなかったのか

Flash 11 はゲームコントローラもサポートする、という話があったことを今頃知って、少し検索してみたのだけど。どうも、AIR TV なる環境でしか使えないらしく。
ゲームコントローラー API(AIR TV) ? 開発者は、ゲームパッドやコントローラーなど、接続されているゲーム入力デバイスと通信できるテレビアプリケーションを構築できます。注意:この機能は、デスクトップやモバイル用の AIR ではまだ使用できません。

Flash Player 11 および AIR 3 リリースノート:2011/10/04 より

「この機能は、デスクトップやモバイル用の AIR ではまだ使用できません。」とな。ショボン。

となると、ブラウザ上で動作して、かつ、ジョイスティック・ゲームパッドを使えるゲームを作りたいとなると、Unity一択ということになるのかな…。

ローカル上で動作させること前提なら、DirectX や SDL を使ったLL用のライブラリも、そのあたり対応してくれていることが多いので、どうにかなりそうだけど。DXRuby、Ruby/SDL、PyGame は対応していた記憶があるし。LLではないけど、HSPも機能追加でできたような記憶も。でも、ブラウザ上でページを開くとすぐにプレイできる、という手軽さと比べてしまうと…。DLして、解凍して、実行する、というのは…。

やっぱり、ゲーム作りたいならUnity、なのかなあ…。

条件付きでゲームパッドに対応できなくもないらしい。 :

_JoyServer - Flash 上でジョイスティックを操作するためのソフト
_Flashでジョイスティックを使う実験 - GEOQUAKE Backstage

前者は、Windows上でジョイスティックを読み取るサーバを動かして、後者は、Unityのプラグインに読み取らせて、Flashでやり取りする仕組み。らしい。

できなくはない。が、利用者側にとってはハードルが高いよなあ…。リンク先でもそのあたり言及されてるけど。利用者側がそこまでするか? と考えると…。

Flashが対応してくれれば話は早いのだろうけど。

以上、1 日分です。

過去ログ表示

Prev - 2012/07 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project