サイトのトップへ戻る

libGDX ドキュメント 日本語訳

サイト内検索

カーソルの表示と排他制御

一人称シューティングのようなゲームでは、マウスの処理を排他制御して画面の中央に置き、カメラを回転させるための位置デルタのみを使う必要があります。 それ以外の場合では、カーソルの位置を手動で設定したいこともあるかもしれません。それらは両方とも、以下のようにして行えます:

Gdx.input.setCursorCatched(true);
Gdx.input.setCursorPosition(x, y);

カーソルの排他制御は Lwjgl バックエンドでのみ安定して動作するので注意してください。 Jogl バックエンドでは少し癖のある AWT/Swing Robot クラスを使用しています。

カーソルの排他制御と位置指定は、デスクトップ環境でのみ使用可能です。

デスクトップ環境および、ブラウザが"cursor:url()"シンタックスとカーソルのpng形式をサポートしている場合のgwt 環境では、同様にカーソル画像の変更が可能です。 以下のように行います:

注意: カーソルが必要ではない場合は、排他制御したほうが良いです。

Cursor customCursor = Gdx.graphics.newCursor(new Pixmap(Gdx.files.internal("cursor.png")), hotspotX, hotspotY);
Gdx.graphics.setCursor(customCursor);

また、カーソルをシステムカーソルに変更することも可能です。これは LWJGL3 バックエンドと GWT バックエンドでのみ動作します。 以下のように行います:

Gdx.graphics.setSystemCursor(SystemCursor.Crosshair);

サポートしているシステムカーソルは以下の通りです

  • Arrow
  • Ibeam
  • Crosshair
  • Hand
  • HorizontalResize
  • VerticalResize