Unity3D相机系统 视线上有碰撞体 透视

Unity3D相机系统 视线上有碰撞体 透视


在这里插入图片描述

1.使用场景

看起来屌就完事了
可以使用在FPS外挂上(?)

2.算法

2.1 逻辑

  1. 从相机射出一条射线(视线)指向聚焦的物体
  2. 如果视线上出现碰撞体,则修改其材质的透明度,并缓存(材质的渲染队列要设置为transparent)
  3. 如果移出碰撞的视线后,则将之前的缓存的碰撞体的材质的透明度设置回原来的,并置空

2.2 核心代码

        public float FadeObjAlpha { get; set; }

        private GameObject preHitObj;

        void OnFadeObjectUpdate(float deltaTime)
        {
            Ray ray = new Ray(targetCamera.transform.position, (FocusTarget.transform.position - targetCamera.transform.position).normalized);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit, (FocusTarget.transform.position - targetCamera.transform.position).magnitude))
         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值