U3D准星不出屏幕

1. 屏幕四周建四个Box Collider


2. 给准星建一个Sphere Collider,并添加Rigidbody


其中,Rigidbody里的 Mass调到最小,Drag阻力调到最大, Angular Drag适当调大。Drag为零时,准星与边界的盒碰撞器碰撞后会受到反作用力一直后退,并旋转,Drag的力相当于摩擦力,阻碍后退, Angular Drag阻碍旋转。其实在Constraints里的Freeze可以冻结准星,不许移动,但是选择它的话与盒子碰撞就失去阻碍准星去到边界外的作用了。

第二种方法是,判断准星的位置,Transform.x> 右边界,Transform.x < 左边界,Transform.y > 上边界, Transform.y <下边界, 使得准星只可距离枪口距离缩小。


3. 准星沿着屏幕边缘移动时如果发生抖动

可以修改 Rigidbody里的Interpolate插值方法,有Interpolate 根据前一位置平滑 和 Extrapolate 根据预测的位置平滑。

也可以把之前写在update里关于准星的操作都写进 FixedUpdate()

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 首先要熟悉一些基本的力学名词及相关公式 刚体(Rigidbody):刚体是指在运动中和受到力的作用后,形状和大小不...
    FLY旳影子阅读 11,653评论 0 11
  • This article is a record of my journey to learn Game Deve...
    蔡子聪阅读 3,875评论 0 9
  • 一、引言 物理引擎是一个很大的标题,在这里,我只记录一些我们较为常用的一些东西,其他的一些深入的东西,随着我们的开...
    SimanX阅读 2,114评论 0 3
  • 111. [动画系统]如何将其他类型的动画转换成关键帧动画? 动画->点缓存->关键帧 112. [动画]Unit...
    胤醚貔貅阅读 13,202评论 3 89
  • 一,刚体组件 ADD添加刚体组件 定义 刚体一种组件,可让物理模拟现实物体的运动状态,添加刚体后物体将受重力影响,...
    彭晋阅读 1,928评论 0 0