查看: 1208|回复: 2
打印 上一主题 下一主题

[经验分享] 摄像机穿墙时自动缩小距离

[复制链接]
ku 智囊团   

89

主题

2

听众

5万

积分

首席设计师

Rank: 8Rank: 8

纳金币
25
精华
1

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2013-2-19 21:45:46 |只看该作者 |倒序浏览


unity3d脚本:摄像机穿墙时自动缩小距离
    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;    }    }    }
    }
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

2317

主题

54

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
20645
精华
62

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2013-2-21 03:55:26 |只看该作者
这个不错,先收藏下了。谢谢!!
回复

使用道具 举报

1

主题

1

听众

987

积分

初级设计师

Rank: 3Rank: 3

纳金币
59
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

板凳
发表于 2013-8-23 09:07:01 |只看该作者
不错,有点价值
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-16 01:51 , Processed in 0.222941 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部