Logo
クラス | 静的公開メンバ関数 | 静的公開変数類 | プロパティ | 全メンバ一覧
Yukar.Engine.CursorManager クラス

カスタムマウスカーソルを管理するクラス。 GameSettings.SystemGraphics.mouseCursorSettings.useCustom が true の場合、初期化時に defaultCursor を読み込みマウス位置に 2D 描画します。 イベントから UseCustomMouseCursor 設定に関わらず独自カーソルをリクエストすることも可能です。 Live2D リソースはカーソルとして使用できないため対応外とします。 [詳解]

静的公開メンバ関数

static void Initialize ()
 エンジン初期化後に呼ぶ。GameSettings の設定に従い既定カーソルとカスタムカーソル1-8をロードします。 カスタムカーソルは UseCustomMouseCursor の値に関わらずプリロードします (イベントから常に使用可能)。 [詳解]
 
static void Finalize ()
 エンジン終了時に呼ぶ。リソースを解放しシステムカーソルを復元します。 [詳解]
 
static void SetEventCursor (Guid guid, string motionName=null, int cellX=0, int cellY=0)
 イベントから任意のカーソルを上書きリクエストします。 mouseCursorSettings.useCustom の設定に関わらず使用できます。 [詳解]
 
static void ClearEventCursor ()
 イベントで設定したカーソルを解除し既定カーソルに戻します。 既定カーソルも存在しない場合はシステムカーソルを復元します。 [詳解]
 
static void SetEventCursorByIndex (int index)
 インデックス指定でポインタを切り替える。イベントパネル「マウスポインタの変更」用 API。 index 0 = デフォルト / 1-N = カスタム1-N / INDEX_HIDE = ポインタを完全に隠す。 [詳解]
 
static void Hide ()
 System.Windows.Forms.Cursor.Hide() の代替。 カスタムカーソルが有効な場合はスプライト表示を抑制し、 システムカーソルは既に隠れているので重複 Hide を行いません。 [詳解]
 
static void Show ()
 System.Windows.Forms.Cursor.Show() の代替。 カスタムカーソルが有効な場合はスプライト表示を再開し、 システムカーソルは隠したままにします。 [詳解]
 
static void Update ()
 毎フレーム呼ぶ。アニメーション更新を行います。 [詳解]
 
static void Draw ()
 毎フレーム呼ぶ。カーソルスプライトをマウス位置に描画します。 [詳解]
 

静的公開変数類

const int INDEX_HIDE = -1
 非表示を示すインデックス値 (SetEventCursorByIndex で渡す) [詳解]
 

プロパティ

static System.Windows.Forms.Control HostCanvas [get, set]
 ゲーム描画キャンバス (例: エディタの TestPlayDialog 内の GL パネル)。 マウスがこのコントロールの外に出た時はカスタムポインタを描画せず OS ポインタを表示する。スプライトは GL 面にしか描画できないため、 窓全体ではなくキャンバス領域を基準に判定する。 [詳解]
 
static IntPtr HostCanvasHandle [get, set]
 スタンドアロンプレイヤー等、WinForms Control ではなく native HWND で ゲーム窓が作られる場合の登録口。HostCanvas が未設定の時に使用される。 [詳解]
 

詳解

カスタムマウスカーソルを管理するクラス。 GameSettings.SystemGraphics.mouseCursorSettings.useCustom が true の場合、初期化時に defaultCursor を読み込みマウス位置に 2D 描画します。 イベントから UseCustomMouseCursor 設定に関わらず独自カーソルをリクエストすることも可能です。 Live2D リソースはカーソルとして使用できないため対応外とします。

メソッド詳解

◆ ClearEventCursor()

static void Yukar.Engine.CursorManager.ClearEventCursor ( )
static

イベントで設定したカーソルを解除し既定カーソルに戻します。 既定カーソルも存在しない場合はシステムカーソルを復元します。

◆ Draw()

static void Yukar.Engine.CursorManager.Draw ( )
static

毎フレーム呼ぶ。カーソルスプライトをマウス位置に描画します。

◆ Finalize()

static void Yukar.Engine.CursorManager.Finalize ( )
static

エンジン終了時に呼ぶ。リソースを解放しシステムカーソルを復元します。

◆ Hide()

static void Yukar.Engine.CursorManager.Hide ( )
static

System.Windows.Forms.Cursor.Hide() の代替。 カスタムカーソルが有効な場合はスプライト表示を抑制し、 システムカーソルは既に隠れているので重複 Hide を行いません。

◆ Initialize()

static void Yukar.Engine.CursorManager.Initialize ( )
static

エンジン初期化後に呼ぶ。GameSettings の設定に従い既定カーソルとカスタムカーソル1-8をロードします。 カスタムカーソルは UseCustomMouseCursor の値に関わらずプリロードします (イベントから常に使用可能)。

◆ SetEventCursor()

static void Yukar.Engine.CursorManager.SetEventCursor ( Guid  guid,
string  motionName = null,
int  cellX = 0,
int  cellY = 0 
)
static

イベントから任意のカーソルを上書きリクエストします。 mouseCursorSettings.useCustom の設定に関わらず使用できます。

引数
guidカーソルリソースの GUID
motionNameモーション名(SliceAnimationSet / NSpriteSet の場合。不要なら null)
cellX分割テクスチャを利用する場合のセル X 位置
cellY分割テクスチャを利用する場合のセル Y 位置

◆ SetEventCursorByIndex()

static void Yukar.Engine.CursorManager.SetEventCursorByIndex ( int  index)
static

インデックス指定でポインタを切り替える。イベントパネル「マウスポインタの変更」用 API。 index 0 = デフォルト / 1-N = カスタム1-N / INDEX_HIDE = ポインタを完全に隠す。

◆ Show()

static void Yukar.Engine.CursorManager.Show ( )
static

System.Windows.Forms.Cursor.Show() の代替。 カスタムカーソルが有効な場合はスプライト表示を再開し、 システムカーソルは隠したままにします。

◆ Update()

static void Yukar.Engine.CursorManager.Update ( )
static

毎フレーム呼ぶ。アニメーション更新を行います。

メンバ詳解

◆ INDEX_HIDE

const int Yukar.Engine.CursorManager.INDEX_HIDE = -1
static

非表示を示すインデックス値 (SetEventCursorByIndex で渡す)

プロパティ詳解

◆ HostCanvas

System.Windows.Forms.Control Yukar.Engine.CursorManager.HostCanvas
staticgetset

ゲーム描画キャンバス (例: エディタの TestPlayDialog 内の GL パネル)。 マウスがこのコントロールの外に出た時はカスタムポインタを描画せず OS ポインタを表示する。スプライトは GL 面にしか描画できないため、 窓全体ではなくキャンバス領域を基準に判定する。

◆ HostCanvasHandle

IntPtr Yukar.Engine.CursorManager.HostCanvasHandle
staticgetset

スタンドアロンプレイヤー等、WinForms Control ではなく native HWND で ゲーム窓が作られる場合の登録口。HostCanvas が未設定の時に使用される。