我遇到問題。我正在Unity 3D(c#)中做一個3D世界編輯器的項目。我的問題是我想通過選擇它們來移動多個對象。我設法移動一個與我的鼠標,但多我失敗:d 這是我的代碼來移動一個:Unity 3D腳本移動多個對象
public class ClickAndDrag : MonoBehaviour {
private RaycastHit raycastHit;
private GameObject Gobj;
private float distance;
private Vector3 ObjPosition;
private bool Bobj;
// Use this for initialization
void Start() {
}
// Update is called once per frame
void Update() {
if (Input.GetMouseButton (0)) {
var ray = GetComponent<Camera>().ScreenPointToRay (Input.mousePosition);
var hit = Physics.Raycast (ray.origin, ray.direction, out raycastHit);
if (hit && !Bobj) {
Gobj = raycastHit.collider.gameObject;
distance = raycastHit.distance;
Debug.Log (Gobj.name);
}
Bobj = true;
ObjPosition = ray.origin + distance * ray.direction;
Gobj.transform.position = new Vector3 (ObjPosition.x, ObjPosition.y, ObjPosition.z);
} else {
Bobj = false;
Gobj = null;
}
}
}
感謝您的幫助!
這只是編碼移動一個單獨的對象。移動多個對象時面臨什麼問題?你沒有在你的問題中指定這個。 –
我不知道如何做到這一點,因爲當我移動一個對象,我用我的鼠標做到這一點,但我不能這樣做多個對象 –