when i touch my screen (800x480)the camera disappears. im trying to limit the area where my camera can go.
i managed doing it with Clamp.
if (Input.touchCount > 0 && Input.GetTouch (0).phase == TouchPhase.Moved ) {
Vector2 touchDeltaPosition = Input.GetTouch(0).deltaPosition;
transform.Translate (touchDeltaPosition.x * Time.deltaTime * speed, touchDeltaPosition.y * Time.deltaTime * speed, 0);
transform.position = new Vector3( Mathf.Clamp(transform.position.x, minimumX, maximumX), Mathf.Clamp(transform.position.y, minimumY, maximumY), transform.position.z);
old code :
using UnityEngine;
using System.Collections;
public class MoveCam : MonoBehaviour {
public float speed = 3;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Input.touchCount > 0 && Input.GetTouch (0).phase == TouchPhase.Moved ) {
Vector2 touchDeltaPosition = Input.GetTouch(0).deltaPosition;
transform.Translate (touchDeltaPosition.x * Time.deltaTime * speed, touchDeltaPosition.y * Time.deltaTime * speed, 0);
if (Camera.main.transform.position.x >= 1f )
{
Camera.main.transform.Translate (touchDeltaPosition.x =1f,0f,-10f);
}
if (Camera.main.transform.position.x <= -1f )
{
Camera.main.transform.Translate (touchDeltaPosition.x =-1f,0f,-10f);
}
if (Camera.main.transform.position.y >= 1f )
{
Camera.main.transform.Translate (touchDeltaPosition.y =1f,0f,-10f);;
}
if (Camera.main.transform.position.y <= -1f )
{
Camera.main.transform.Translate (touchDeltaPosition.y = -1f,0f,-10f);
}
}
}
}