fc2ブログ
 
■プロフィール

クリエイトウェーブ

Author:クリエイトウェーブ
開発における、諸々を書いていきたいなと思っています。
mail : info@createwave.jp

■最近の記事
■カテゴリー
■最近のコメント
■月別アーカイブ

■最近のトラックバック
■ブログ内検索

■RSSフィード
■リンク
uGUIドラッグを座標に変換
Unityでアプリを作るときに、uGUIでドラッグ実装をすることは良くあると思います。
IBeginDragHandler, IDragHandler, IEndDragHandler3つのインターフェースを継承するもので、検索するといっぱいでてきます。

ドラッグ中に
public void OnEndDrag(PointerEventData eventData)
{
   Debug.Log(eventData.delta);
}

等でeventData.deltaを使ってるとおもいますが、eventData.deltaから座標を取得したいときってあると思います。
把握したのでここに載せておきます。


uGUI(Canvas)内のIBeginDragHandler, IDragHandler, IEndDragHandlerを継承したMonoBehaviourのLocalPosition

そのLocalPositionをCanvas上のPositionへ変更し
MainCameraに対してWorld座標へ変換しています。

これでuGUI上でドラッグして座標を広いuGUI外のUnity2D(Sprite)や、3DのGameObjectに対して使える座標を使うことができます。


カテゴリー:Unity | TM(0) | CM(0)