环境:
- UnityHub3.3.0-c8
- Unity2021.3.20f1c1 LTS
- Visual Studio 2022
什么是GameObject
在Unity中,GameObject是游戏中最基本的实体。它可以被看作是游戏场景中所有其他对象的容器。GameObject可以包含许多不同的组件,如Transform、Renderer、Collider``等。通过添加这些组件,GameObject可以具有不同的属性和功能,如移动、旋转、显示和与其他对象进行交互等。
在Unity中,通过创建、实例化和管理GameObject对象,可以构建出一个完整的游戏场景。
创建
先自行创建一个2D项目
找到一个名为Hierarchy栏目
右键
会自动新建一个名为GameObject的主体,要想查看到它,需要选择MoveTool,还有点击该主体。
Choosing an Icon
我们可以在Inspector栏,对它进行rename和选择select icon等操作,注意对于空对象来说,刚启动完的项目,之前选择的select icon内容会自动显示出来。
但是一旦在Hierarchy进行点击与移动该空物体,就不会显示这个select icon了,而换成其他物体,比如cube之类的,可以让select icon显示出来,我不知道这是不是目前最新版本的问题。
另外,我们还可以在Game中对其进行查看
当然了,在icon中也可以选择我们自己的套图
GameObject Components
点击空对象->看右侧Inspector栏->Add Component->Sprite Renderer
可以在Sprite点击我们自己的精灵图,那些让我们热血澎湃或者喜闻乐见的内容,都是从套一个图开始的。
想要添加的我们想要的图,则只需在Project的Assets中放入自己想要的图,并把该图拉入到下图的Sprite位置,而它默认Background
GameObject Code
在Project\Assets右键创建一个C# Script的脚本->rename自己想要的名字
之后把自己创建的C#脚本扔到自己在Hierarchy创建的对象中,就可以进行调试操作,初始的代码内容如下:
注意点:
- 类的名称必须要跟你脚本的名称一致,如果你开始不rename,等创建完成后再rename的话,VS中的内容不会跟着发生变化,这时你就不可以addComponent进GameObject了。
Dynamically Create GameObject
如果你希望可以通过代码来创建GameObject,可以这样写:
void Start(){ new GameObject("MyNewGameObject"); }
之后将这个脚本Add Component任意一个对象,在unity中运行,Hierarchy栏就会新增一个名为MyNewGameObject的GameObject,运行结束后又会消失。
如果你希望这个新增的GameObject可以addComponent其他内容,比如Sprite Renderer,实现方法如下:
void Start(){ GameObject myGo = new GameObject("MyNewGameObject"); myGo.AddComponent
(); } 或者这样写
GameObject myGo = new GameObject("MyNewGameObject",typeof(SpriteRenderer));
- 类的名称必须要跟你脚本的名称一致,如果你开始不rename,等创建完成后再rename的话,VS中的内容不会跟着发生变化,这时你就不可以addComponent进GameObject了。
猜你喜欢
网友评论
- 搜索
- 最新文章
- 热门文章