前一段时间开发了一款VR击球类游戏。游戏的内容是在一个房间内,拿着球拍对墙击球。如下图

游戏实现起来还是蛮简单的,前后用了一个星期的时间,其中因为一个BUG就卡住了三天时间。当球拍挥动速度太快时,拍子会穿过球体。效果如下。

height="400" width="400" src="http://ofl0nq48a.bkt.clouddn.com/AdvancedFineGiantschnauzer.mp4">

试用无数方法后,最终成功解决,在这里我将解决办法记录下来。

① 首先将球拍单独作为一个GameObject,放在最外面的层级。我最开始的做法是将球拍放在Controller下面,这种做法不太适合球类VR游戏。

② 让球拍跟随手柄,并在跟随的过程中加入插值,代码如下

void Update(){
/*计算球拍距离手柄的距离和方向*/
Vector3 toHandPos=Vector3.MoveTowards(this.transform.position,mController.position,1);
Quaternion toHandRot=Quaternion.RotateTowards(this.transform.rotation,mController.rotation,1);/*移动跟谁球拍,注意这里有加入插值*/
mRigidBody.MovePosition(Vector3.Lerp(mParentTransform.position, toHandPos,Time.deltaTime * smooth));
mRigidBody.MoveRotation(Quaternion.Slerp(mParentTransform.rotation,toHandRot,Time.deltaTime *smooth));}

通过这段代码,成功的解决了球拍移动速度过快会穿过球体的问题。

VR球类游戏填坑总结相关推荐

  1. unity跑酷怎么添加金币_【Unity3D实战】零基础一步一步教你制作跑酷类游戏(填坑完整版)...

    在两个月前曾写了一篇<[Unity3D实战]零基础一步一步教你制作跑酷类游戏(1)>,里面一步一步演示了制作跑酷类游戏,然而由于时间原因,只写到了让角色往前移动为止.这个坑一直没有时间去填 ...

  2. Cocos Creator 微信小游戏 填坑记录

    环境:(ccc-v1.9.1, wx-v1.02.1804251) 微信小游戏禁止了动态生成并执行代码的功能,window.eval(). new Function() ,这些都不能用了. 微信小游戏 ...

  3. 卷积神经网络「失陷」,CoordConv来填坑

    卷积神经网络「失陷」,CoordConv来填坑 作者:Rosanne Liu等 卷积神经网络拥有权重共享.局部连接和平移等变性等非常优秀的属性,使其在多种视觉任务上取得了极大成功.但在涉及坐标建模的任 ...

  4. 【ZeloEngine】反射系统填坑小结

    [ZeloEngine]反射系统填坑小结 总结一下反射系统,下称ZHT ZHT架构/数据流图 今天是入行两周年,本想写个入行小结,想想还是踏实点把坑填完,写个DevLog 本文接续之前一篇文章的原理描 ...

  5. 一个机械研究生在计算机与机械之间的徘徊与思考-(下)之填坑

    现已研三(上 ),自问自答一下当初问机械研究生(智能制造方向)到底该学什么,主力该放在学术研究上还是系统开发上?先说现状,已签工作(华为IE工程师),也拿了国奖.研一上发一篇小论文,研一下一篇,研二上 ...

  6. KKBOX音乐——数据分析,用户研究与填坑指南

    KKBOX音乐--数据分析,用户研究与填坑指南 导语 1 数据来源 2 数据处理 2.1 录入数据 2.2 数据类型 3 探索性分析 3.1 MySQL+Excel 3.1.1 每年3月最先注册的前1 ...

  7. 《Linux内核剖析》(Yanlz+VR云游戏+Unity+SteamVR+云技术+5G+AI+Makefile+块设备驱动+字符设备驱动+数学协处理器+文件系统+内存管理+GDB+立钻哥哥+==)

    <Linux内核剖析> <Linux内核剖析> 版本 作者 参与者 完成日期 备注 YanlzLinux_Kernel0.12_V01_1.0 严立钻 2020.02.06 # ...

  8. unity代码更换ui图片_Unity3d 低分辨率UI素材换高分辨率素材填坑笔记

    迷糊 RectTransform PosX.PosY.Left .Right . Top .Bottom 以及 AchorMax/AnchorMin 的,开卷有益哟~ 背景 笔者开发的(PC)APP ...

  9. 《UnityAPI.NavMesh导航网格》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+Unity+NavMesh+CalculatePath+立钻哥哥++OK++)

    <UnityAPI.NavMesh导航网格> 版本 作者 参与者 完成日期 备注 UnityAPI_NavMesh_V01_1.0 严立钻 2020.08.27 #<UnityAPI ...

  10. CoordConv:卷积神经网络「失陷」,CoordConv来填坑

    转载请注明作者和出处: http://blog.csdn.net/john_bh/ 原文链接: https://eng.uber.com/coordconv/ 转载:机器之心-卷积神经网络「失陷」,C ...

最新文章

  1. matlab 3D绘图详解
  2. Hyper-V之02 虚拟机复制与故障转移
  3. 【Java例题】1.3给朋友的贺卡
  4. Python函数之返回多值
  5. 顶点计划 抄作业问题讨论
  6. Vs 2008 sp1更新后出现的问题!
  7. 数据库中间件01-认识mycat
  8. 数学模型 商人过河问题 C++实现
  9. 主流前端框架下ArcGIS API for JavaScript的开发
  10. 如何关闭计算机软件更新功能,如何关闭电脑自动更新功能
  11. 地理信息系统(Geographic Information System或 Geo-Information system,GIS)
  12. C++参考手册中文网站
  13. AntV使用方法详解
  14. (转)逃脱者可获生机(下)
  15. js中text方法是啥意识_JavaScript | 文本节点Text常用方法
  16. 2020年高教社建模国赛真题B题--穿越沙漠
  17. Android屏幕压力,Android将逆袭桌面,微软压力巨大
  18. 邮政社招笔试题库_中国邮政 招聘考试试题及答案--总括版
  19. easyExcel实现动态表头设置以及单元格样式设置
  20. vue echarts使用教程

热门文章

  1. 一个微信投票小程序防止刷票的想法
  2. springboot学习笔记
  3. 【极客学院】-iOS学习笔记-2-Xcode(安装,创建项目,工作空间)
  4. python训练营风变编程_扒一扒风变编程的社群运营手段,满满都是套路
  5. 杭州电子科技大学计算机学院院长,杭州电子科技大学计算机学院导师教师师资介绍简介-彭勇...
  6. 使用C语言编写craps骰子游戏,Python实现国外赌场热门游戏Craps(双骰子)
  7. WebRoot与WebContent的区别
  8. 在页面引入项目路径 ${webRoot}
  9. 什么叫取反_PLC指令中的取反是什么意思
  10. Pytorch中报错RuntimeError: The size of tensor a (60) must match the size of tensor b (56)