位置: 编程技术 - 正文
推荐整理分享Unity蛮牛教程噩梦射手----代码讲解(1)(unity manifest),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:unity manifest,unity node,unity nations,unity mte,unity man,unity 蛮牛,unity man,unity man,内容如对您有帮助,希望把文章链接给更多的朋友!
很久没有写博客了,因为最近开始学习Unity。在蛮牛教育网上有一套讲解Unity官方教程的视频-------噩梦射手游戏实例,网站为
视频第一课出现的是游戏主角Player的移动脚本,我先上代码
代码开头定义的变量我们先跳开,来关注特殊的函数
FixedUpdate()函数
所以我们在这个函数里面加入我们对键盘移动输入信号的响应事件。 通过GetAxisRaw()来获取到当前用户的输入,在通过Move(),Turning(),Animating()函数来逐个改变Player的位置Position,旋转,动画状态Animation。我们来一一解释。
Move()函数:
直接使用Vector3 movement来记录当前的水平垂直方向的位移,乘上速度和单位时间,最后赋予Player新的Position实现位置移动。这段代码不难理解。
注意:这里使用刚体RigidBody来实现位置的转变。直接使用transfrom.position也是可以的。
Turning()函数:
这里涉及到通过光线投影来记录当前鼠标方向,来实现player视角的旋转的方法。
首先是
我们将使用它来记录我们鼠标和Floor的碰撞,来获取我们需要的视角,实现旋转。这里我们需要使用到point属性。我们下面会讲到。
其次
这是光线投影碰撞的核心函数。四个参数中,后两个我们在这个脚本的开头定义一个定义好了。包括射线长度我们定位,还有碰撞的层蒙版设为Floor。而前两个参数则是我们射线的起点和方向。该函数返回为true则光线投影反生了碰撞,反之没有。
如果有碰撞发生,我们需要计算出新的旋转方向,并且使用这个方向来实现player视角的变化。这里使用Quaternion四元数来实现旋转。
最后Animating()函数
我们检测当前的水平,垂直速度是否为0,否则就是移动,我们就把角色的状态机的参数进行改变,实现动画效果。
------player的运动脚本基本就这些内容了,其他的在蛮牛的课程中也有讲解。如果你是直接看这篇博客可能不知所云,请见谅。
【猫猫的Unity Shader之旅】之透明材质 现实生活中有许多半透明的情形:玻璃、饮料瓶、塑料袋等等。半透明一个很重要的特点就是可以显示它后面的物体的部分颜色。这个部分具体是多少
资源加载卸载与内存的关系 关于Resources.load和实例化与内存的关系:1.加载,单纯的Resources.load后消耗的内存很低,可能只是基础的引用预载、当对象被实例化后才会占用大量内存
Kinect结合Unity开发(一) 因为对Unity比较熟悉,所以一开始想着就是用Unity结合Kinect来进行游戏开发,而不是用Kinect的SDK强行撸一个出来,再说我也不会啊。然后就是上网各种找
标签: unity manifest
本文链接地址:https://www.jiuchutong.com/biancheng/380150.html 转载请保留说明!上一篇:Unity网络编程NetworkView组件使用(unity网络模块)
友情链接: 武汉网站建设