ramkaの朝ごはんはピーナッツパン

超個人的備忘録です。基本自分のためなので、内容の不備、読みづらさ、つまらなさはご了承ください。

タッチした場所にオブジェクトを生成

タッチしたポジションを、そのまま渡せばいいじゃない
と思っていたら少しつまずきました。

生成はできているけど、表示されない

以下が最終的に動いたソースですが、
タッチ時のポジションをそのままTouchOnに渡すだけではだめで、

position.z = 10f; // Z方向を設定

を行わないと思った通り動きませんでした。

   void Update()
    {
        // 押されているかを判定
        if (Input.touchCount > 0)
        {
            Touch touch = Input.GetTouch(0);
            
            position = touch.position; // 位置情報を取得
            position.z = 10f; // Z方向を設定
            if (touch.phase == TouchPhase.Began)
            {
                // タッチ開始
                TouchOn(Camera.main.ScreenToWorldPoint(position));
            }
            else if (touch.phase == TouchPhase.Moved)
            {
                // タッチ移動
            }
            else if (touch.phase == TouchPhase.Ended)
            {
                // タッチ終了
            }
        }
    }

    public void TouchOn(Vector3 pos)
    {
        GameObject pbl = Instantiate(m_pblObj);
        pbl.transform.localPosition = pos;
    }