纳金网

标题: [脚本]摄像机穿墙时自动缩小距离 [打印本页]

作者: 铁锹    时间: 2012-11-19 15:12
标题: [脚本]摄像机穿墙时自动缩小距离
class SoldierCamera : MonoBehaviour

{

private Transform target;

private Transform camTransform;

public LayerMask hitLayer;

private Vector3 cPos;

public float normalDistance;

private float targetDistance;

private Vector3 camDir;

  

void Start ()

{

}

  

void LateUpdate ()

{

  CameraMovement();

}



void CameraMovement()

{

        camDir = (camTransform.position - target.position).normalized;

        cPos = target.position;

        targetDistance = Vector3.Distance(camTransform.position,target.position);

  

  RaycastHit hit;

        if (Physics.Raycast(cPos, camDir, out hit, targetDistance + 0.2f, hitLayer))

        {

            float t = hit.distance - 0.1f;

            camTransform.position = t * camDir + cPos;

        }

        else {

            if (targetDistance != normalDistance) {

                float t = Mathf.Lerp(targetDistance,normalDistance,Time.deltaTime * 15);

                camTransform.position = t * camDir + cPos;

            }

        }

}



}



请大家支持一下,或许哪天就用上了。(更多3D资讯尽在Web3D纳金网http://www.narkii.com/)
作者: oliver1234    时间: 2013-1-18 11:16
你好,角色被建筑物遮挡的情况。摄像机的进行自动的拉近、拉远操作。具体怎么弄呀,我才学了一个礼拜的unity,菜鸟求教





欢迎光临 纳金网 (http://go.narkii.com/club/) Powered by Discuz! X2.5