Unity3D入门

嗨,大家好。 在过去的几个月中,我一直在干预统一性,并考虑编写初学者指南(这是我关于统一性的系列文章中的第一篇)🤗因此,让我们开始吧! 您要做的第一件事是从Unity官方网站https://unity3d.com/get-unity/download下载Unity3D(我不会详细介绍下载过程,因为它易于使用且易于理解) 现在,打开Unity并创建一个新项目。 单击右上角的“新建”。 它将打开一个新面板以创建一个新项目。 您可以设置项目名称和路径以从此处保存。 同样不要忘记选择3D。 如果您有需要添加的资产包,请单击“添加资产包”,然后从给定的列表中选择。 但是,作为开始,我们现在不需要考虑这一点。 成功创建新项目后,将向您展示Unity3D编辑器。 (不要害怕随便摆弄编辑器的布局,因为您始终可以通过使用右上角的布局下拉菜单(在波纹管图像中用红色圆圈标记)将其重置为默认设置) 我将向您介绍有关统一编辑器的一些基本知识。 这些是必不可少的要素。 设置在左上角的按钮可用于操纵我们制作的游戏对象。 手动工具是该工具组中的第一个,可用于在场景中四处移动。 您可以使用以下5个键来缩放,旋转和移动游戏对象(游戏对象和场景将在本文的后半部分介绍)。 带有红色圆形标记的x,y,z手柄可用于在场景中具有不同的视点。…

如何在运行时为Unity中的碰撞计算正确的精灵范围

因此,在Unity中进行2D游戏时,我偶然发现了这个问题,并认为我会分享我发现效果很好的解决方案。 最初,必须有一个带有SpriteRenderer组件的预制件,而没有添加任何对撞机组件,当敌人死亡时会实例化该组件。 我们将随机精灵应用于从VFX精灵数据库中获取的实例化GameObject,该数据库存在于包含许多不同VFX精灵的项目中。 实例化的对象是2D精灵,应放置在地面上并发生碰撞,该碰撞的IsTrigger属性设置为true以进行图层调整(内部机制可以更改特定地面和其他碰撞区域上的SpriteRenderer排序顺序) 。 这是在Unity Sprite“编辑器”中打开的原始Sprite,其大小为64×64。 如果尝试在运行时将BoxCollider2D组件添加到对象,该组件具有一个SpriteRenderer组件,该组件绘制上面显示的精灵,则产生的碰撞的大小将不正确,如下所示。 我要解决的问题是首先在Unity Sprite编辑器中编辑边框,如下所示。 我为小精灵的边框的4个值添加了绿色矩形标记,它们是:L(eft),R(ight),T(op),B(ottom)。 这些值表示我们从4个所述方向使用工具引入的填充。 现在我们在哪里可以找到这些值? 当我们添加BoxCollider2D组件时,它不会使用刚刚定义的边框自动计算出正确的大小。 取而代之的是,从sprites数据库中随机获得的sprite具有类型为Vector4的边框组件。 因此,我们有x,y,z,w而不是L,R,T,B(无论在Unity Sprite编辑器中说什么)。 我发现这是它们彼此对应的方式:…