200+篇教程总入口,欢迎收藏:
放牛的星星:[教程汇总+持续更新]Unity从入门到入坟——收藏这一篇就够了zhuanlan.zhihu.com本文重点内容:
1、在平面上放置一个带有拖尾的小球
2、基于用户的输入来定位小球的位置
3、控制速度和加速度
4、限制小球的位置并且让其从边缘反弹
这是有关控制角色移动的教程系列的第一部分。具体来说,我们将根据玩家的输入滑动一个球体。
本教程是CatLikeCoding系列的一部分,原文地址见文章底部。
本教程使用Unity 2019.2.9f1制作。假设你已经先阅读了基础教程。
1 控制位置
许多游戏的玩法都是基于一个角色需要四处走动从而达成目标的。玩家的任务是引导角色。动作游戏通常通过按键或转动操作杆来操纵角色,从而为你提供直接控制。点击游戏可让你指示目标位置,角色会自动移动到该位置。编程游戏可让你编写角色执行的指令。等等。
在本教程系列中,我们将重点介绍如何在3D动作游戏中控制角色。我们从简单的开始,在一个小的平面矩形上滑动一个球体。一旦我们熟练掌握了这点,将来我们就可以使其变得更加复杂。
1.1 设置场景
从一个新的默认3D项目开始。尽管你可以使用自己选择的渲染管线,但此时我们并不需要Package Manager。
我始终使用线性颜色空间,但你可以在项目设置中通过“Edit Project Settings Player / Other Settings”进行配置。
默认的SampleScene场景具有一个主摄像头和一个定向光,我们将保留它们。创建一个代表地面的平面以及一个球体,两者均位于原点。默认球体的半径为0.5,因此将其Y坐标设置为0.5,使其看起来像位于地平面的上面。
我们将自己限制为在地面上进行2D运动,因此我们把摄像机向下放置在平面上方,以便在游戏窗口中清晰地看到游戏区域。再将其投影模式设置为正交。脱离了透视之后,使我们能够看到2D运动而不会变形。
唯一还有影响的是球体的阴影。通过将灯光的“阴影类型”设置为“None”来摆脱它。
为地面和球体创建材质,并根据需要进行配置。我将球体设为黑色,将地面变暗为浅灰色。还将通过Trail来可视化运动,因此也要为此创建材质。这里将使用一种淡红色的材质。最后,我们需要一个MovingSphere脚本来实现移动。
该脚本可以从MonoBehaviour的空继承开始。
将TrailRenderer和我们的MovingSphere组件都添加到球体中。保持其他一切不变。
将trail 材质 分配给TrailRenderer组件的Materials数组的第一个也是唯一的元素。它并不需要cast shadows,虽然并不是必需要禁用,但是我们还是把它顺手关掉吧。除此之外,将“Width ”从1.0减小到更合理的值(例如0.1),这将生成一条细线。