马上注册,加入CGJOY,让你轻松玩转CGJOY。
您需要 登录 才可以下载或查看,没有帐号?立即注册
×
之前tinya0913发过一骗教程关于多摄像机切换的,但是没有滑动效果,后来通过邮件跟tinya0913交流了下,他很快给了个反馈,并且马上贴出了教程
http://bbs.9ria.com/viewthread.p ... p;extra=#pid1212016
在此再次向tinya0913致谢。
本贴就是在那篇教程的基础上,删减了下内容,用itween替换了之前控制摄像机移动的代码。看起来复杂的动画效果,只一句就搞定了。看来itween很强大。
#pragma strict
var cam01:GameObject;
var cam01Pos:GameObject;
var cam02Pos:GameObject;
var dx:float = 0;
var dy:float = 0;
var dz:float = 0;
function Start ()
{
// 初始化摄像机
}
function Update ()
{
if(Input.GetKeyUp(KeyCode.Alpha1))
{
// 从位置二过渡到位置一
dx = cam01Pos.transform.position.x;
dy = cam01Pos.transform.position.y;
dz = cam01Pos.transform.position.z;
iTween.moveTo(cam01,{"x":dx,"y":dy,"z":dz});
}
else if(Input.GetKeyUp(KeyCode.Alpha2))
{
// 从位置一过渡到位置二
dx = cam02Pos.transform.position.x;
dy = cam02Pos.transform.position.y;
dz = cam02Pos.transform.position.z;
iTween.moveTo(cam01,{"x":dx,"y":dy,"z":dz});
}
}
移动之后发现摄像机的并不对着两个盒子。想要让摄像永远关注着这两个物体。
于是我再创建一个Empty对象,放于两个盒子中间。
然后再创建一个脚本:cameraFollow
var target:Transform;
function Update () {
transform.LookAt(target);
}
将这个脚本拖到Camera上,就可以了。
|