前提・実現したいこと
Unity3Dで複数あるオブジェクトのうち、任意のオブジェクトをクリックで選択後、そのオブジェクトのみキーボード操作しようとしています。ほかのオブジェクトを選択しなおしたらそっちだけ動く感じです。
現在、クリックしたオブジェクトの名前を取得はできています。
発生している問題・エラーメッセージ
キー入力しても移動ができない
該当のソースコード
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Touch : MonoBehaviour { // rayが届く範囲 public float distance = 100f; public string objectName; void Update () { // 左クリックを取得 if (Input.GetMouseButtonDown(0)) { // クリックしたスクリーン座標をrayに変換 Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); // Rayの当たったオブジェクトの情報を格納する RaycastHit hit = new RaycastHit(); // オブジェクトにrayが当たった時 if (Physics.Raycast(ray, out hit, distance)) { // rayが当たったオブジェクトの名前を取得 objectName = hit.collider.gameObject.name; Debug.Log(objectName); if (Input.GetKeyDown(KeyCode.LeftArrow)) GameObject.Find(objectName).transform.Translate(1, 0, 0); // 左に「1」動かす } } } }
補足情報(FW/ツールのバージョンなど)
2.16f 2018
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。