Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
public class NewBehaviourScript1 : MonoBehaviour {
private Vector3 screenPoint;
private Vector3 offset;
void OnMouseDown()
{
screenPoint = Camera.main.WorldToScreenPoint(gameObject.transform.position);
offset = gameObject.transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
}
void OnMouseDrag()
{
Vector3 curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenPoint);
transform.position = curPosition;
}
}
using System.Collections;
public class NewBehaviourScript1 : MonoBehaviour {
private Vector3 screenPoint;
private Vector3 offset;
void OnMouseDown()
{
screenPoint = Camera.main.WorldToScreenPoint(gameObject.transform.position);
offset = gameObject.transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
}
void OnMouseDrag()
{
Vector3 curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenPoint);
transform.position = curPosition;
}
}
и скрипт вращения
Синтаксис:
Используется csharp
public class rotate2 : MonoBehaviour
{
public GameObject obj;
public float speed;
public int VectorX;
public int VectorY;
public int VectorZ;
void Update()
{
if(Input.GetKey(KeyCode.E))
obj.transform.rotation *= Quaternion.Euler(VectorX*speed, 0, 0);
if(Input.GetKey(KeyCode.R))
obj.transform.rotation *= Quaternion.Euler(0, VectorY*speed, 0);
if(Input.GetKey(KeyCode.T))
obj.transform.rotation *= Quaternion.Euler(0, 0, VectorZ*speed);
}
}
{
public GameObject obj;
public float speed;
public int VectorX;
public int VectorY;
public int VectorZ;
void Update()
{
if(Input.GetKey(KeyCode.E))
obj.transform.rotation *= Quaternion.Euler(VectorX*speed, 0, 0);
if(Input.GetKey(KeyCode.R))
obj.transform.rotation *= Quaternion.Euler(0, VectorY*speed, 0);
if(Input.GetKey(KeyCode.T))
obj.transform.rotation *= Quaternion.Euler(0, 0, VectorZ*speed);
}
}
как сделать так что бы вращался только тот объект который захвачен, а не все которые под скриптом???