Unity之一天一个技术点(九)---EasyTouch 旋转镜头

EasyTouch 旋转镜头

从EasyTouch的官方例子上看,它的左摇杆 并不是控制整体的旋转镜头,而且左摇杆控制上下旋转,右摇杆控制左右旋转,十分不方便。

假如只用一个摇杆实现上下左右旋转镜头的时候,自身的坐标系就会歪,也就是会出现镜头歪的情况

在我经过多次测试之后,发现只要在camera上层创建一个父物体CameraAxis ,参数不同,就不会出现镜头歪的情况。如图

时间: 2024-10-03 19:46:48

Unity之一天一个技术点(九)---EasyTouch 旋转镜头的相关文章

Unity之一天一个技术点(十九)--初学委托

委托这个对于C#初学者比较头疼,我也是看了半天资料才稍微弄懂一点,下面的代码还是挺简单的,也算用了委托这么逼格高的技术了. using UnityEngine; using System.Collections; //三个军衔级别的命令类型// public enum TypeOfCommands { General, Captain, Soldier } public class EventManager : MonoBehaviour { //定义一个通用代理,根据传递类型,发送消息 pub

Unity之一天一个技术点(十三)

var target : Transform; var distance = 10.0; var xSpeed = 250.0; var ySpeed = 120.0; var yMinLimit = -20; var yMaxLimit = 80; private var x = 0.0; private var y = 0.0; @AddComponentMenu("Camera-Control/Mouse Orbit") partial class MouseOrbit { }

Unity之一天一个技术点(一)---移动中始终面对对象

1:移动中始终面对对象 /// <summary> /// 移动向某处 /// </summary> /// <param name="target"></param> public void flyTarget(Transform target) { transform.position = Vector3.Lerp(transform.position, target.position, Time.deltaTime * 2f); V

Unity之一天一个技术点(二)---全局控制物体是否显示

全局控制物体是否显示 public static void ShowObj(GameObject obj,bool show) { UnityEngine.Renderer[] allObj = obj.GetComponentsInChildren<UnityEngine.Renderer>(); foreach (Renderer a in allObj) { a.renderer.enabled = show; } //两种方法 for (int i = 0; i < allObj

Unity之一天一个技术点(六)---在线JS转C#代码

今天分享一个很有用的东西 在线JS转C#代码 http://www.m2h.nl/files/js_to_c.php 很多源码搞到了一看哇靠JS的完全不懂,用这个可以帮你搞定~ 经测试,大多数的js语法都能转成c#的,基本上都看的懂,理解起来不算费劲~ 好用就来点个赞啊~

Unity之一天一个技术点(十)---UI添加粒子特效

最近给UI添加粒子特效时,总是被UI遮挡, 解决方法是: 因为粒子系统的渲染顺序列默认为3000,而NGUI的渲染顺序默认也是从3000开始,当有嵌套的panel时或者Depth更高的panel时,GUI的渲染顺序会高于3000, 解决办法是, 1.修改Ngui中的UIPanel脚本中的默认的RenderQueue, 调整到3000以下,这样就不会遮挡住粒子特效了,当有的窗口需要显示在特效上面时,在检视面板中把该窗口的Renderer Q选项调整为Start At,值为3000以上,就可以解决,

Unity之一天一个技术点(十一)---抛物线效果

把这个脚本挂在一个cube上,然后把另一个cube拖到target上,把这两个物体之间有一段距离,然后运行,就看到效果了~ using UnityEngine; using System.Collections; public class ProjectileTest : MonoBehaviour { public GameObject target; public float speed = 10; private float distanceToTarget; private bool m

Unity之一天一个技术点(十二)---指南针的实现

指南针的实现(可据镜头旋转改变) 代码如下: 变量简述: compassGUISkin皮肤用来显示指南针贴图 标签Label贴图用来作为指南针背景  Box贴图用来作为箭头贴图 把脚本赋予给主镜头即可 GUI.skin = compassGUISkin; var compassAngle : float = transform.rotation.eulerAngles.y;//得到镜头的y轴旋转角度 var compassDiameter : float = 128; var compassWi

Unity之一天一个技术点(十四)

using UnityEngine; using System.Collections; /** * 备注:本脚本必须赋予主镜头 */ public class CameraRotateAround : MonoBehaviour { public Transform target;//主相机要围绕其旋转的物体 public float distance = 7.0f;//主相机与目标物体之间的距离 private float eulerAngles_x; private float euler