| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> Unity学习日记——初始unity及C#语言的应用 -> 正文阅读 |
|
[游戏开发]Unity学习日记——初始unity及C#语言的应用 |
一.unity常用窗口 1.工程窗口 此窗口可访问和管理属于这个工程的所有资源,包括脚本、材质、子文件等。 2.场景视图窗口 此窗口是用来创造游戏世界的窗口,可在此窗口内选择和定位游戏的背景、摄像机、角色等游戏物体。 (1)移动视角 按住Alt和鼠标左键可在场景中旋转视角。 按住Alt和鼠标右键可缩放视角。 直接用鼠标左键可移动视角。 (2)飞行浏览 首先按住鼠标右键,然后用W、A、S、D可分别向前后左右移动,按shift可加速移动。 (3)将物体放在视野中心 在窗口中选中物体按F键,可将视野以该物体为中心。 (4)修改物体位置 键盘上Q、W、E、R分别对应移动、旋转、缩放、矩形变换工具。这些工具可以使物体按X轴、Y轴、Z轴方向变化。在选中其中的工具时选择物体,会显示出辅助线框,依据线框对物体进行移动,如下图。 3.层级窗口 层级窗口包含当前场景中所有的游戏物体列表。其中某些游戏物体是独立的物体,有些是预制体。除此之外,还可以表示父子节点,如下图。 ?4.检视窗口 unity场景通常是由很多GameObject组成的,每个GameObject可能包含许多组件,如:脚本、刚体、声音等。检视窗口显示了当前选中物体的细节信息和组件的参数,可在此窗口对这些参数进行修该,也可以增加或删除组件,如下图。 5.游戏视图窗口 游戏视图窗口显示的实际游戏中看到的画面,按播放键可运行游戏,按暂停键可使游戏暂停。在暂停或运行状态下依然可以进行绝大多数编辑操作,但结束播放时,又会回到原始状态,如下图。 ? 二.案例开发——打砖块 该游戏是通过上下左右移动,并发射小球将墙全部推倒。 1.搭建游戏场景——创建地面 在层级窗口中单机鼠标右键,选择3D Object->plane,就可以搭建一个平台了。将这个平台命名为ground,并在检视窗口中,将这个物体的position设置为0,0,0。接着在Assets中创建一个material,将这个材质命名为ground,用调色器将其颜色弄成偏暗色,最后拖拽给ground物体,地面就完成了。 2.搭建墙 1)创建预制体 创建cube方块,将其命名为wall,选中方块,添加组件physics>Rigidbody。创建材质,把材质设置为蓝色,赋给wall物体,然后将它拖入工程窗口中,就完成了预制体的创建。此时可看到wall的名字变成蓝色,说明预制体设置成功,如下图。 ?2)创建墙 ? 拥有了这个预制体后,可通过快捷键Ctrl+D,复制许多同样属性的方块,将这些方块设置在预制体的下面,成为wall的子节点,方便管理。移动这些子节点前,在Edit->Grid and Snap中将Move参数改为1,这样做的目的是使方块按照1个单位进行移动。设置操作如下图。 移动方块时按住Ctrl键。 3.创建子弹 1)创建预制体 创建3D模型小球,并赋予红色材质,在小球上添加碰撞组件(用来检测墙与小球的碰撞)、刚体组件,将其拖入工程窗口,预制体就设置成功了。 2)调整摄像机 移动摄像机,将其面对墙的正面,并微微偏上,如下图。 ? ?3)插入脚本 游戏需要用户移动视角,并扔出小球,可以在摄像机上插入脚本。 首先引入刚刚创建好的小球。
再通过代码实现键盘控制视角,并放到updata的函数里。游戏的帧率并不稳定,随着硬件的负载,帧率会下降,每帧的时间会增加,因此再控制物体的速度时,不应该以每帧的距离为准,而应该以每秒距离为准,物体移动的距离将根据每帧时间的长短而变化,从而再时间上看起来移动是匀速的。因此,在vector3后乘以Time.deltatime。
键盘中W、A、S、D实现视角上下左右的移动,鼠标左键实现发射小球。条件判断,当鼠标点击时,生成一个小球(此过程叫实例化),此小球与预制体相同。将该小球的刚体组件赋给变量rd,在此变量上加一个向前的力,最终就实现了功能。
4.测试 实现上述所有功能后,运行游戏进行测试,测试结果如下图,无误。 ?三.总结 1.想要开发一个unity游戏,首先要熟悉引擎,了解引擎的设置和功能。unity里设置种类繁多,功能复杂,学习起来知识点比较碎片化,因此一定要有相关的书籍,并做好笔记,在看书不能理解的同时可以在网上看看教程。 2.在编写脚本时,往往需要配合组件,有许多不清楚的组件或者不知道代码如何实现,可以去unity官网,下载unity中文APl手册,这是我们学习unity及脚本必不可少的。 3.在unity中,可把游戏对象理解为容纳各种组件的容器,开发者写的每一个脚本可理解为一个自定义的组件,游戏对象的所有组件都可理解为对象的行为。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 18:41:42- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |