这个赛车游戏真是让我费劲脑汁啊。尤其是写这种系统化的东西。

目前漂移还没找到更好的算法,不过基本的移动还是可以做到的。

别看就光是个移动,其实也是很费事的。

Unity给了个对于赛车系统很好的碰撞组件WheelCollider.

把这个给四个轮子一套就好了,

这个组件能调节一些汽车的相关参数,神马悬挂系统,前后摩擦左右摩擦等。或许你看到这会发现,也没有这么难么。。那你就大错特错了

我在移动的方式中试了很多方法,纯刚体控制,纯WheelCollider控制,和混合控制。在我看来混合控制是比较好的选择。

一个一个说吧。

首先是纯刚体控制:

  说到刚体就想到力,我力学学的是不太好啊,但是刚体的控制能达到非常真实的效果,而且在后期的漂移上也是比较容易实现的,但是不好弄得是抓地力,用刚体驱动的车很容易就翻车,所以我感觉可以调整重心或者是加一个下压力,来避免翻车的可能,当然并不是只有这一个问题才让我弄别的方式,我用的转向方式是MoveRotation,这就需要很多的条件控制,车向后移动时就应该是反向转向,还有车在静止的状态时应该是不能旋转的。等等问题,让我放弃了纯刚体驱动。

然后是纯WheelCollider控制:

  我感觉这个是最坑的,这个组件本身就有很多的问题,首先就是组件的重力问题,会导致在加其他碰撞其的时候出现互相碰撞的问题,调整一下Layer就好了,或者直接把重力改没。其次的他的那些横向摩擦力和纵向摩擦力,看起来是能达到漂移的效果的,其实不然,对于数值的修改得经过很多次的尝试才能调整出来很好的效果,我是没有尝试。而且直接用扭力控制汽车,你的扭力越大对赛车的影响越小,所以启动速度会很慢。因为我的赛车是加入刚体的,因为这个系统也会导致赛车的侧翻,所以就需要把赛车的重心调低一些。从而就衍生出了最后一种混合式。

混合式控制:

  我感觉这是目前最合理的控制方式,首先WheelColllider组件,能方便的达到我们想要的赛车真实移动效果,然后我们用刚体控制赛车的重心然后给他加一定的力来控制车的速度,在贴吧上问了个大神,感觉比较好的达成方式就是,用WheelCollider控制前轮的转向,用刚体来给后轮加力使其运动,这样看起来也比较真实,同时方便写出漂移效果。

目前漂移还在测试之中,并没有完全写好。。。等写出来在写一篇文章吧。

Unity赛车游戏之移动的更多相关文章

  1. Unity的赛车游戏实现思路

    unity目前版本实现赛车的技术方案主要有3种: 1.wheelCollider,设置motorTorque.brakeTorque.steerAngle来实现车子的推动和转弯,优点是上手简单,而且很 ...

  2. Unity创作赛车游戏的四款插件

    本文,我们将介绍其中4款:Racing Game Starter Kit.GeNa 2 .NWH Vehicle Physics.Curvy Splines. Racing Game Starter ...

  3. 使用Unity3D的设计思想实现一个简单的C#赛车游戏场景

    最近看了看一个C#游戏开发的公开课,在该公开课中使用面向对象思想与Unity3D游戏开发思想结合的方式,对一个简单的赛车游戏场景进行了实现.原本在C#中很方便地就可以完成的一个小场景,使用Unity3 ...

  4. 使用Unity3D引擎开发赛车游戏

    Car Tutorial 在Unity3D的Asset Store有一个赛车的Demo —— Car Tutorial,看起来特别酷的赛车游戏Demo,不过我还没有下载下来,因为在公司下载Assets ...

  5. [生活日记]参与unity非游戏行业开发者大会小结

    今天下午花了半天时间公司全体都去人民广场参与了一个unity非游戏行业开发者大会,主要了解到unity这款全球顶尖之一的游戏引擎的一个发展史,从05年三个美国人技术研发开始,一直到12年开始引进中国, ...

  6. 自制Unity小游戏TankHero-2D(5)声音+爆炸+场景切换+武器弹药

    自制Unity小游戏TankHero-2D(5)声音+爆炸+场景切换+武器弹药 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm ...

  7. 自制Unity小游戏TankHero-2D(4)关卡+小地图图标+碰撞条件分析

    自制Unity小游戏TankHero-2D(4)关卡+小地图图标+碰撞条件分析 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm ...

  8. 自制Unity小游戏TankHero-2D(3)开始玩起来

    自制Unity小游戏TankHero-2D(3)开始玩起来 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm)这个游戏制作的.仅 ...

  9. 自制Unity小游戏TankHero-2D(2)制作敌方坦克

    自制Unity小游戏TankHero-2D(2)制作敌方坦克 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm)这个游戏制作的. ...

随机推荐

  1. Theano2.1.6-基础知识之在thenao中的求导

    来自:http://deeplearning.net/software/theano/tutorial/gradients.html Derivatives in Theano 一.计算梯度 现在,让 ...

  2. opencv3-core之基本操作

    这一篇打算将core部分的例子说完,这都是基于<opencv2.4.9tutorial.pdf>中的core部分,其实这些例子后期都很稳定的,也就是说就算是2.3.1和2.4.10 ,这几 ...

  3. <实训|第九天>掌握linux中普通的权限控制和三种特殊的权限(sst),做合格的运维工程师

    linux中,权限的学习是必不可少的,不论是作为一名运维工程师或者是单一的管理者,学习好linux中的权限控制,你就可以保护好自己的隐私同时规划好你所管理的一切. 权限的学习是很多的,不要认为自己已经 ...

  4. 此utf8 非彼utf8 ——谈http协议里的编码问题

    我这里看两个编码: BDPAGETYPE:2BDQID:0xc92b034d0bc985e8BDUSERID:809441751 Cache-Control:private Connection:Ke ...

  5. 与TCP/IP协议的初次见面(一)

    引言 最近LZ有了一点时间,于是便拿出TCP/IP的书本开始啃.开始的时候,啃起来枯燥无味,现在好不容易有点开窍,于是赶忙记录一下,生怕自己一转眼就给忘了.不过计算机系统原理就有点可惜了,最近一直没时 ...

  6. 前端程序员应该知道的15个 jQuery 小技巧

    下面这些简单的小技巧能够帮助你玩转jQuery. 返回顶部按钮 预加载图像 检查图像是否加载 自动修复破坏的图像 悬停切换类 禁用输入字段 停止加载链接 切换淡入/幻灯片 简单的手风琴 让两个div高 ...

  7. JS 页面加载触发事件 document.ready和window.onload的区别

    document.ready和onload的区别——JavaScript文档加载完成事件页面加载完成有两种事件: 一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件): 二是onlo ...

  8. LaTeX常用数学符号表示方法

    转自:http://www.mohu.org/info/symbols/symbols.htm 常用数学符号的 LaTeX 表示方法 (以下内容主要摘自“一份不太简短的 LATEX2e 介绍”) 1. ...

  9. 1109关于redo_Log和undo_log和BIN-LOG

    转自http://www.cnblogs.com/Bozh/archive/2013/03/18/2966494.html 三者之间的区别BIN-LOG 一个对应BINLOG文件REDO-LOG 对应 ...

  10. jquery渐渐的显示、隐藏效果

    <!DOCTYPE html> <html> <head> <meta charset="gb2312" /> <title& ...