unity3d旋转摄像机脚本

void Update ()
{
  if(Input.GetMouseButton(1))
  {
   if (axes == RotationAxes.MouseXAndY)
   {
    // Read the mouse input axis
    rotationX += Input.GetAxis("Mouse X") * sensitivityX;
    rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
    rotationX = ClampAngle (rotationX, minimumX, maximumX);
    rotationY = ClampAngle (rotationY, minimumY, maximumY);

    Quaternion xQuaternion = Quaternion.AngleAxis (rotationX, Vector3.up);
    Quaternion yQuaternion = Quaternion.AngleAxis (rotationY, Vector3.left);

    transform.localRotation = originalRotation * xQuaternion * yQuaternion;
   }
   else if (axes == RotationAxes.MouseX)
   {
    rotationX += Input.GetAxis("Mouse X") * sensitivityX;
    rotationX = ClampAngle (rotationX, minimumX, maximumX);
    Quaternion xQuaternion = Quaternion.AngleAxis (rotationX, Vector3.up);
    transform.localRotation = originalRotation * xQuaternion;
   }
   else
   {
    rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
    rotationY = ClampAngle (rotationY, minimumY, maximumY);
    Quaternion yQuaternion = Quaternion.AngleAxis (rotationY, Vector3.left);
    transform.localRotation = originalRotation * yQuaternion;
   }
  }
}

unity3d旋转摄像机脚本

时间: 2024-08-03 16:41:53

unity3d旋转摄像机脚本的相关文章

[转]关于Unity3D对象和脚本实例调用的顺序探究

http://blog.csdn.net/liangzg_2011/article/details/8150844 关于Unity3D对象和脚本实例调用的顺序探究 我们先来看一些有趣Unity实例顺序的小实验.有图有真相!! 注:以上打印的代码语句如下: [csharp] view plaincopy <span style="font-size:18px;">    void Start () { print("-----" + this.transf

unity3d抛物线的脚本

using UnityEngine; using System.Collections; public class ProjectileTest : MonoBehaviour { public GameObject target; public float speed = 10; private float distanceToTarget; private bool move = true; void Start () { distanceToTarget = Vector3.Distanc

[原]Unity3D深入浅出 - 摄像机组件(Camera)

在Unity中创建一个Caaera后,除了默认带一个Transform组件外,还会附带Flare Layer.GUI Layer.Audio Listener等4个组件,如下图. ClearFlags:清除标记:决定屏幕中哪部分被清除.一般用于多台摄像机来描绘不同对象的情况,有一下三种模式. Skybox:天空盒(默认项).在屏幕空白处显示当前摄像机的天空盒,如果没有指定天空盒,则会显示默认背景色. Solid Color:如果没有设置天空盒,将默认显示此处设置的背景色. Depth only:

扩展Unity3D编辑器的脚本模板

??最近在学习Shader时感觉Shader语言参数众多.语法诡异,如果每次都从头开始写Shader一定是一件痛苦的事情.如果可以在本地定义好一组标准的Shader模板,这样当我们需要实现某些效果类似的Shader时,就可以在这个Shader模板的基础上进行修改.因为Shader文件是一个文本文件,所以我们可以非常容易地创建这样一个模板,在这个模板中我们可以进一步完善相关的参数注释,这样就不用每次写Shader的时候都需要查文档了,从这个角度出发,就进入了这篇文章的正题:扩展Unity3D编辑器

Unity3D 在自定义脚本中实现Button组件上的OnClick面板

Unity3D 在自定义脚本中实现Button组件上的OnClick面板UnityEvent脚本代码事件传参多参数传入下述内容不对c#语法做过多讲解,仅对已入门并有兴趣的同学做为学习和拓展的资料 大家在Unity制作的过程中一定都使用过UI功能,那么很多人也一定见过这个面板: 那么我们如何能在自己的脚本中添加上像OnClick这样的面板呢. UnityEventUnity中内置了一个UnityEvent类作为事件处理的类,我们只要在脚本中声明出来,Unity便会自动添加到脚本面板上,这样便可以在

一个根据鼠标滑动旋转摄像机的脚本

var target : Transform;var centre:Transform;var xSpeed = 250.0;var ySpeed = 120.0;var yMinLimit = -20;var yMaxLimit = 80;var initDis = 20;var minDis = 3.0;var maxDis = 50.0;var wheelSpeed = 5;static var x = 0.0;static var y = 0.0;static var finalx=0.

Unity3D如何使用脚本实现跳跃的效果

欢迎来到unity学习.unity培训.unity企业培训教育专区,这里有很多U3D资源.U3D培训视频.U3D教程.U3D常见问题.U3D项目源码,我们致力于打造业内unity3d培训.学习第一品牌. 这里介绍的是如何使用脚本最简单的模拟出跳跃的效果. 脚本源码如下: var speed = 3.0; //This data type is a float.var jumpSpeed = 50.0;var grounded = true; function Update () {       

Unity3D 之 C# 脚本

引用类型 :class ,interface, 数组 , delegate , object ,string (object 是C#中所有类型,包括所有的值类型和引用类型的根类,string 类型是一个从object类直接继承的密封类型(不能再被继承),其实例表示Unicode字符串) try后面一个finally,try中有一个return,那么finally中的代码会不会运行?如果运行,是在return后还是return前答:会运行,并且在return 后运行. public static

【unity3d游戏开发脚本笔记之一:坐标系选择对物体运动的影响】

时间:2016年9月24日17:38:21   作者:yexiaopeng 博客园     在unity3d的世界中,其坐标系可分为四种,世界坐标系-WorldSpace   本地坐标系-LocalSpace  屏幕坐标系-ScreenSpace 视口坐标-ViewPortSpace.其中作者本人当前面对的是世界坐标系和本地坐标系的问题.本文讲诉这两个坐标系对物体运动的影响,其他的坐标系涉及到再做说明.    在学习unity3d官方例子(太空大战)的过程中,编写脚本对陨石的运动进行控制时发现旋