unity3d摄像机碰到后面物体缩进视口

var camera1:Camera;
 
var mousescrollwheel_y:float;                             //摄像机Y轴的点
 
var mousescrollwheel_z:float;                            //摄像机z轴的点
 
var sensitivityW:float=5;                                     //滚轮敏捷
 
var pnearviewZ:float=-1;                                      //离近的z点距离
 
var pnearviewY:float=-1;                                      //离近的Y点距离
 
var meetdistance:float=3;                                    //光线的距离
 
var nearview_y:float=-1;                                        //最小Y
 
var farview_y:float=-5;                                           //最大Y
 
var nearview_z:float=-1;                                        //最小Z
 
var farview_z:float=-10;                                       //最大Z
 
function Start ()
 
{
 
mousescrollwheel_z=camera1.transform.localPosition.z;
 
mousescrollwheel_y=camera1.transform.localPosition.y;
 
}
 
function Update () {
 
mousescrollwheel_z += Input.GetAxis(“Mouse ScrollWheel”)*sensitivityW;
 
mousescrollwheel_y += Input.GetAxis(“Mouse ScrollWheel”)*sensitivityW;
 
if(mousescrollwheel_z>nearview_z){mousescrollwheel_z=nearview_z;}
 
else if(mousescrollwheel_z<farview_z){mousescrollwheel_z=farview_z;}
 
if(mousescrollwheel_y>nearview_y){mousescrollwheel_y=nearview_y;}
 
else if(mousescrollwheel_y<farview_y){mousescrollwheel_y=farview_y;}
 
camera1.transform.localPosition.z=mousescrollwheel_z;
 
camera1.transform.localPosition.y=-mousescrollwheel_y;
 
var fwd = transform.TransformDirection (-(Vector3.forward));
 
var hit:RaycastHit;
 
if (Physics.Raycast (transform.position, fwd, hit,meetdistance)) {
 
if(hit.transform.tag==“wall”){
 
camera1.transform.localPosition.z=pnearviewZ;
 
camera1.transform.localPosition.y=-pnearviewY;
 
}
 
}
 
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值