ConvScreenPosToWorldPos

スクリーン座標をワールド座標に変換する

val = ConvScreenPosToWorldPos(ScreenPos)

VECTOR ScreenPos : スクリーン座標

(プラグイン / モジュール : DxLibW)

解説

引数 ScreenPos で渡すスクリーン座標をワールド座標に変換します。

マウスでクリックした座標に存在する3D空間上のオブジェクトを検出したりする処理に使用します。

尚、スクリーン座標には奥行きの情報がありませんので、画面上からどれだけ奥まった3D空間上の座標を取得するのかのを ScreenPos のメンバ変数 z で指定します。
ただ、この z はワールド空間上での距離ではなく、指定できる値の範囲は 0.0f から 1.0f です。

z が 0.0f の場合は SetCameraNearFar 関数で設定した Near と同じだけカメラ座標から離れた位置、1.0f の場合は Far と同じだけカメラ座標から離れた位置のワールド座標が返ってきます。

※ この関数は #cfuncst (VECTOR) で宣言されています。
戻り値は構造体 VECTOR (12バイト) です。

代入するだけで自動的に構造体変数が作成されます:
  v = ConvScreenPosToWorldPos(...)   ; auto dim + copy
代入後はメンバにアクセスできます:
  mes v->x
  mes v->y
  mes v->z

関連項目

ConvScreenPosToWorldPosDスクリーン座標をワールド座標に変換する(DxLibW)

情報

プラグイン / モジュールDxLibW
バージョン3.24f
作成日2026/04/12
著作者DxLib: Takumi Yamada / HSP binding: IronHSP Project
URLhttps://dxlib.xsrv.jp/
備考hspdxlib.as をインクルードして使用
タイプDxLib ゲームライブラリ
グループDxLib ウィンドウ
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\hspdxlib.hs