unity 摄像机
2016-06-15 16:12
316 查看
(一)鼠标右键控制摄像机绕物体旋转
using UnityEngine;
using System.Collections;
public class Rotate : MonoBehaviour {
public GameObject onion;
Vector2 p1,p2;//用来记录鼠标的位置,以便计算旋转幅度
// Use this for initialization
void Start ()
{
onion=GameObject.Find("Onion");
}// Update is called once per frame
void Update ()
{
if(Input.GetMouseButtonDown(1)){p1=new Vector2(Input.mousePosition.x,Input.mousePosition.y);//鼠标右键按下时记录鼠标位置p1
}if(Input.GetMouseButton(1)){p2=new Vector2(Input.mousePosition.x,Input.mousePosition.y);//鼠标右键拖动时记录鼠标位置p2
//下面开始旋转,仅在水平方向上进行旋转
float dx=p2.x-p1.x;
transform.RotateAround(onion.transform.position,Vector3.up,dx*Time.deltaTime);
}
}
}
(二)鼠标滑轮控制摄像机缩放
void Update ()
{
//Zoom out
if (Input.GetAxis ("Mouse ScrollWheel") < 0) {
if(Camera.main.fieldOfView<=100)
Camera.main.fieldOfView+=2;
if(Camera.main.orthographicSize<=20)
Camera.main.orthographicSize+=0.5F;
}
//Zoom in
if (Input.GetAxis ("Mouse ScrollWheel") > 0) {
if(Camera.main.fieldOfView>2)
Camera.main.fieldOfView-=2;
if(Camera.main.orthographicSize>=1)
Camera.main.orthographicSize-=0.5F;
}
}
4000
using UnityEngine;
using System.Collections;
public class Rotate : MonoBehaviour {
public GameObject onion;
Vector2 p1,p2;//用来记录鼠标的位置,以便计算旋转幅度
// Use this for initialization
void Start ()
{
onion=GameObject.Find("Onion");
}// Update is called once per frame
void Update ()
{
if(Input.GetMouseButtonDown(1)){p1=new Vector2(Input.mousePosition.x,Input.mousePosition.y);//鼠标右键按下时记录鼠标位置p1
}if(Input.GetMouseButton(1)){p2=new Vector2(Input.mousePosition.x,Input.mousePosition.y);//鼠标右键拖动时记录鼠标位置p2
//下面开始旋转,仅在水平方向上进行旋转
float dx=p2.x-p1.x;
transform.RotateAround(onion.transform.position,Vector3.up,dx*Time.deltaTime);
}
}
}
(二)鼠标滑轮控制摄像机缩放
void Update ()
{
//Zoom out
if (Input.GetAxis ("Mouse ScrollWheel") < 0) {
if(Camera.main.fieldOfView<=100)
Camera.main.fieldOfView+=2;
if(Camera.main.orthographicSize<=20)
Camera.main.orthographicSize+=0.5F;
}
//Zoom in
if (Input.GetAxis ("Mouse ScrollWheel") > 0) {
if(Camera.main.fieldOfView>2)
Camera.main.fieldOfView-=2;
if(Camera.main.orthographicSize>=1)
Camera.main.orthographicSize-=0.5F;
}
}
4000
相关文章推荐
- 监控摄像机常用专业术语解释(二)
- Unity3D游戏开发之自由视角状态下的角色控制
- iTween基础之CameraFade(摄像机淡入淡出)
- 【NGUI】UI摄像机和主摄像机。画面有异常情况的处理
- unity3d摄像机
- Unity摄像机的使用二:摄像机的切换
- Unity摄像机的使用四:望远镜的效果
- 【笨木头Unity】入门之旅006:Demo之四处找死(一)_场景和主角
- Irrlicht学习之摄像机的探究
- NGUI利用两个摄像机裁剪特效
- Android摄像头照相机技术-android学习之旅(八)
- Unity寻路系统跟摄像机实战
- 项目1----------写自己的android录像机
- Android获得摄像头详细信息
- 项目1----------写自己的android录像机(2)
- Unity3D摄像机跟随物体移动的代码控制
- Unity3d摄像机Camera参数详解
- Camera Calibration 相机标定
- 摄像机相关类的设计与实现
- 宽动态摄像技术原理及评价