当前位置:   article > 正文

【Unity3D】【C#】锁定目标效果,LookAt函数实现物体Z轴朝向相机,并匀速自旋转_unity lookat函数

unity lookat函数

 

在进行一个锁定目标效果实现时,加载的Prefab使用LookAt朝向相机,但再使用Rotate旋转时,Rotate会失效。因为LookAt函数在默认情况下会强制Y轴向上,也可以选择填入自己想要的轴。

我们可以使用给需要Rotate的物体添加一个父物体的方式来实,将两项功能分开运作。父物体朝向相机,子物体进行旋转,需要注意旋转默认是Space.self的,这里需要使用Space.World来使用全局轴进行旋转,否则本地轴会因为父物体的旋转而出现混乱。

    private void AutoRotateSlowly () {

        this.transform.LookAt(Camera.main.transform);

        this.transform.GetChild(0).transform.Rotate(this.transform.GetChild(0).forward*Speed*Time.        deltaTime,Space.World);

        //this.transform.Rotate(this.transform.forward*Time.deltaTime,Space.World);

}

有关锁定效果的实现应该还有更多更好的方法,比如粒子系统的Billboard或者通过Shader顶点沿着来法线方向偏移出现描边效果,或者后处理高亮被锁定Layer的模型等等

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/134075
推荐阅读
相关标签
  

闽ICP备14008679号