20882人加入学习
(185人评价)
Unity2D 官方入门案例 - Ruby's Adventure

制作完成于2020年5月5日,基于Unity2019.3

价格 免费

静态方法的调用:类名.方法名(参数),全局可访问,不需要实例

普通(成员变量)方法的调用:对象名.方法名(参数),需要实例

[展开全文]

关于使用unity本身的物理移动之后移速变慢的解决方法

将Update方法换成FixedUpdate方法,其他目前不变

使用getcomponent方法可以调取到指定的组件

[展开全文]

修复Ruby移动抖动问题

抖动发生的原因是因为unity的物理引擎的代码与我们自己制作的c#的代码chong'tu

[展开全文]

修复Ruby的旋转问题

在盒子的碰撞器的脚本里选择edit collider,拉动绿点调整碰撞器的大小,可以调整碰撞体积

旋转问题:在预制体中rigidbody中选中constraints,将z打勾,使z轴dong'jie

[展开全文]

发生碰撞检测的条件

双方必须都要有碰撞器,且一方有刚体,最好是运动的一方。因为unity为了性能的优化,刚体长时间不发生碰撞检测会休眠

 

[展开全文]

刚体与碰撞器

rigidbody(刚体组件):使游戏物体能获得重力,接受外界的受力和扭力功能的组件,可以通过脚本或者是物理引擎为游戏对象添加刚体组件

BoxCollider(碰撞器组件):使游戏物体具有跟挂载刚体组件的游戏物体发生碰撞能力的组件

 

[展开全文]

可以在预制体子体的overrides里将子体的修改效果应用到母体上从而改变所有子体的效果

 

[展开全文]

预制体的制作

Prefab(预制体):是unity中的一种特殊资源,预制体就是一个或者一系列组件的集合体,可以使用预制体实例化克隆体,后续可对克隆体属性进行统一修改

 

[展开全文]

sprite sort point-pivot轴心点:是可以自定义的特殊点,充当精灵的锚点,精灵以此为支点进行旋转,坐标点位置则是指轴心点的位置

[展开全文]

根据自定义轴向控制sprite的渲染

要做到覆盖一部分的效果需要edit-project settings-graphics-camera settings-将transparency sort mode设置为Custom Axis然后调整该sprite的y坐标来实现只遮挡一部分的功能(谁的Y轴坐标大,就后画谁)

场景与sprite之间的渲染适合用层级,而精灵与精灵之间的渲染适合用transparency sort mode来渲染

[展开全文]

渲染顺序与层级设置

有时候角色会被盖住可能与深度有关,即z轴

如果处于同一个深度之下,那么就很有可能会被盖住

如果不使用z轴来调整则需要涉及到层级

layer(层级):可以在2D游戏物体中的spriteRenderer和地形TilemapRenderer组件中的Order in 拉野属性中去设置层级的大小,值越大,越后渲染,值越小,越先渲染,值大的物体会覆盖值小的游戏物体

层级顺序可以使用inspector里的Additional settings中的order in layer来调整

 

[展开全文]

对调色板中的瓦片进行操作

piker tool(取色器):取样选中瓦片并绘制,快捷键l

eraser tool(橡皮擦工具):擦去场景中已绘制的瓦片,快捷键D

fill tool(填充工具):大范围绘制选中的瓦片,快捷键G

调色板中Edit按钮激活下啊是对调色板中瓦片的操作,未激活是对Scene面板中瓦片的操作

 

[展开全文]

调色板中的工具栏

select tool(选择工具):选择想要使用的瓦片,可以点击或拖拽多选选择,快捷键为s

move tool(移动工具):可以选择并移动瓦片位置,快捷键为M

可以直接在画布上进行选择来拖拽已经放置过的瓦片

paintbruch tool(画笔工具):选择瓦片并在场景板中绘制,快捷键为B

fill box tool(放行区域填充工具):选择一个或一片区域大小的瓦片,绘制区域小于选中区域时会部分绘制选中内容的纹理,等大区域时会显示全部,大于则会平铺显示,快捷键为U(特别好用)

 

[展开全文]

切割精灵图集制作瓦片集

选择需要修改的图片-sprite editor-slice-type-grid by cell count(按比例切割)grid by cell size(按像素点切割)Automatic(自动识别切割)-c(行)r(列)-点X

[展开全文]

将创建的地形连续

造成tile不连续的原因是tile的像素点填充的比本身的图像大,只需要将pixels per unit改为适合当前图像大小的像素填充即可

将图片改为可分割tu'pia的方法:选中需要修改的图片,将精灵模式由single改为multiple

[展开全文]

创建调色板

window-2D-tile palette

palette:(调色板):保存瓦片,将他们绘制到网格上

调出tile palette时还没有调色板,需要点击create new palette来创建新的调色板

brush(笔刷):用于将“画好的东西”绘制到画布上,使用tilemap时,可以在多个画笔中任意选择,画出线条、方块等各种形状

 

[展开全文]

tilemap的基本概念

grid(网格):可以用来将游戏对象均匀地放置在其单元格中

tilemap(瓦片地图):是网格的子游戏对象。由tiles(瓦片)组成

sprite(精灵):纹理的容器,大型纹理图集可以转换为精灵图集(sprite sheet)

tile(瓦片):一种特殊的精灵,使用瓦片就像在画布上花花一样,花花时i可以设置一些颜色和属性

 

[展开全文]

##构建背景

unity里复制不是CTRL+c而是CTRL+d

 

[展开全文]

Application.targetFrameRate = 10;可以使用该代码将帧率改为10帧,targetFrameRate是Application这个类里的一个成员变量

快捷键:CTRL+k+c快速注释    CTRL+k+u快速取消注释

 

[展开全文]