FlashPlayer10.2から搭載されたネイティブマウスカーソルを試す
clockmakerさんが以下のような記事を書かれていたので早速試してみました。
Flash Player 10.2コンテンツ制作入門:ネイティブマウスカーソル | デベロッパーセンターhttp://www.adobe.com/jp/joc/devnet/flash/articles/flash_cursor.html
ネイティブマウスカーソルの機能を利用すればOSのマウスカーソルを直接いじることができるので、FlashのFPSに依存しない滑らかな動きのカスタムカーソルを作ったり、Flash領域外に移動したときも不自然な動きにならないカーソルを実装できます。
まずは初歩。1フレームだけのカーソルに差し替えてみます。
ネイティブマウスカーソルのテスト - wonderfl build flash online
私のMac環境ではSafariなら正常に切り替わりましたが、Firefox4では動作しませんでした。ブラウザによってはダメなようですね。残念・・・
次に、複数フレームのアニメつきのカーソルを作ってみます。
カーソルにアニメつける forked from: ネイティブマウスカーソルのテスト - wonderfl build flash online
色々試してみましたが、フレームレートは30FPSくらいが限界なようです。また、時々チカチカ表示されてしまいます。常時動くアニメよりは、時々バウンドする等の表現がよさそうです。
最後に、カスタムカーソルを戻すには以下のように
Mouse.cursor = MouseCursor.AUTO;
を設定すれば通常動作に戻ります。ここでMouseCursorの定数がAUTOの他にもあったので、それぞれどうなるのか試してみました。
以下のコードでは、各ボタンをクリックすることでMouse.cursorプロパティが設定されます。
forked from: ネイティブマウスカーソルのテスト - wonderfl build flash online
これらのコードをうまく設定すれば強制的にマウスカーソルの状態を変更・維持できるので、例えばスクロールバーにマウスオーバーしたときはHANDにしたり、脱出ゲームでは常にBUTTONまたはARROWにすると効果的です。カスタムカーソルの切り替えとも組み合わせればよりリッチなアプリケーションにできそうですね。