- Код: Выделить всё
using UnityEngine;
using System.Collections;
public class CamDelta : MonoBehaviour
{
private static bool mDown = false;
private static Vector3 point;
void Update()
{
Rect screen = new Rect(0, 0, Screen.width, Screen.height);
if (!screen.Contains(Input.mousePosition)) return;
if (Input.GetMouseButtonDown(0))
{
mDown = true;
Ray r = Camera.main.ScreenPointToRay(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0f));
RaycastHit hit;
if (!Physics.Raycast(r, out hit)) return;
point = hit.point;
}
if (Input.GetMouseButtonUp(0))
{
mDown = false;
}
float spd = 50f;
if (mDown)
{
Ray r = Camera.main.ScreenPointToRay(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0f));
RaycastHit hit;
if (!Physics.Raycast(r, out hit)) return;
Vector3 delta = point - hit.point;
delta.y = 0f;
transform.position += delta * Time.deltaTime * spd;
}
}
}
и пакеж с дефолтной сценкой