Unity3D——汽车游戏自学1

//        2014/7/30 9/16

//        赛车游戏学习第一天,对应官方文档第一部分

//        王小龙

 

一、赛车模型的拼装

打开缺乏赛车模型的the track场景,找到车原始模型,如下:

拖动模型到场景的适当位置,调整好位置。了解车模型继承视图的继承关系。

可以明显的知道,车模型由多个部分组成,特别注意继承关系。

接下有一个关于layer设置的没有搞懂。

移除默认的动画组件

 

给汽车添加碰撞器组件(为了更加细致的了解,顺带复习一下mesh collider网格碰撞器)

对于复杂的网格碰撞,网格碰撞器比原型碰撞要精确记住,只有在convex(凸起)勾上的时候网格碰撞器才能和其他网格碰撞器发生碰撞。

下面来讲讲其几个重要属性(其实更多情况下可以通过英文单词意思就可以明白)

 

Smooth Sphere Collisions平滑性状碰撞 当被碰撞时,网格法线(在空间垂直于一个平面的直线;或者在一个平面里面,垂直于一条直线的直线。法线也可以指的某个方向。对于圆弧来讲,指的是它与圆心相连的直线(方向)。法线:英语叫Normal Line。)是平滑的。
一些限制条件:1、两个网格碰撞器一般不会发生碰撞,但和原型碰撞器会发生碰撞(convex勾选上)。2、碰撞器作用于刚体使Unity中的物理作用生效。因为刚体允许对象被物理系统控制。碰撞器使对象之间产生碰撞作用。碰撞器必须独立于刚体加在对象上。碰撞器并不一定需要附加刚体,但是要使移动物体具有碰撞效果必须附加刚体。3、两个碰撞器产生碰撞,必须有一个对象有刚体,碰撞信息就会发送给其对象,可以在脚本中实现各种操作。4、触发器不受物理引擎控制,用于处罚游戏中的各种事件5、摩擦力和弹力又物理材质决定。

因为碰撞器不应该可见,所以移除网格渲染和网格过滤组件。

设置阴影(关乎游戏性能,所以需要仔细设置)

就在在各个部分中设置cast shadow (投影)和receive shadow

具体的设置可以根据自己的喜好。但是值得注意的是考虑游戏的需要,如此场景中赛车的轮子应该是有投影的而receive shadow可以没有。

设置完后效果如下:

增加车模型组件

利用刚体组件来控制模型在游戏中的位置,接下来增加刚体组件。考虑都实际情况,改变质量和阻力。

此处的阻力是为了方便脚本中控制车的减速。

 

接下来为我们车模型添加脚本。

至于上面的这么多参数,说真的我也还没把文档读完,知道一部分。以后详细介绍

今天就主要实现车子跑起来吧!。

找到前轮和后轮两个参数(front wheel ,rear wheal)设置一下,如图:

大概大家已经能够猜测到了size的意义。就是设置轮胎的数量。接下来就是把轮胎拖过来。如下图:

 

接下来为汽车添加阴影。

虽然直线光会会造成阴影,但是我们为了得到更为好的效果可以改变阴影。

//        2014/7/30 9/07

//        赛车游戏学习第二天,对应官方文档第一部分

//        本来应该昨天完成第一部分的内容,下午由于各种特殊原因就到实验室来了

//        王小龙

接着昨天的讲。为车模型添加一个在车身下更为真实的阴影。涉及到projector(投影仪)的使用。步骤如下:

1、  添加一个projector,在addcomponent——》effect——》projector

2、  调整相应的属性值,讲projector至于车模型的上方

3、  添加材质

4、  添加控制脚本

调整结果如下:

 

添加滑痕(slidmark)——感觉这个有些难度

添加划痕是通过简本脚本实现的。

每一轮子,知道位置和是否滑动,据此,我们可以通过注册一个划痕和划痕控制器有关联的一个点来控制。

将已经存在的预设拖动到场景中。其中的sliderjs看不懂。这让我想起了做一个作品不是所有的东西都要自己去做,会用就行了。

其中包含几个参数,有一个没读懂还是说说吧。

Max mark:决定在场景中能看到划痕位置的数量

Max width:划痕宽度

Ground offset:如果出现闪烁,把这个值调整大点

Min distance:划痕的最小长度

 

接下来就是添加声音效果

先添加声音控制脚本

接下来为各个属性赋值。

接下来为车添加各种控制脚本

主要有以下几个:

再将车模型,赋值给主摄像的target属性。

 

结果效果还是可以,但就是划痕那里还有点问题。截个图如下:




说明:怎么没图片了。哎!下次注意!

没有更多推荐了,返回首页