纳金网
标题:
摄像机穿墙时自动缩小距离
[打印本页]
作者:
狂风大尉
时间:
2014-8-31 01:21
标题:
摄像机穿墙时自动缩小距离
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;
}
}
}
}
作者:
hyui
时间:
2014-9-1 04:35
感谢分享!
欢迎光临 纳金网 (http://www.narkii.com/club/)
Powered by Discuz! X2.5