Game Framework学习笔记(4):初识实体(Entity)

实体是游戏里最重要的对象之一 。

创建实体的思路类似UI,同样是通过插件加载prefab。

首先我们创建一个实体Prefab。这里我图简单就来来了个Cube。

01

接着和之前UI一样,我们创建一个脚本,用于管理实体逻辑。

1
2
3
4
5
6
7
8
9
10
11
using GameFramework;
using UnityGameFramework.Runtime;

public class Entity_Cube : EntityLogic
{
protected override void OnShow(object userData)
{
base.OnShow(userData);
Log.Debug("Cube已加载!");
}
}

我在OnShow中加了一条Log信息。关于更多方法的使用,大家可以查看Game Framework API 中的 Entity类 参考

当然你也可以直接进脚本EntityLogic.cs 看。

保存之后返回Unity,将脚本挂载到之前创建的Cube上。

02

和UI一样,我们也要添加实体分组。让我们找到Entity组件。

03

接着创建一个分组,这里我创建的是EntityGroup。

04

接下来我们打开ProcedureMain脚本,我们现在要做的就是在ProcedureMain流程里面加载出这个实体。在OnEnter()中加入下列代码:

1
2
3
4
// 获取框架实体组件
EntityComponent entityComponent = GameEntry.GetComponent<EntityComponent>();
// 创建实体
entityComponent.ShowEntity<Entity_Cube>(1, "Assets/Example/Cube.prefab", "EntityGroup");

这样我们就能在流程中加载出来了。

忘了说,原场景中的 Camera框架作者修改了Culling Mask,不想改的话删了建个新的就行。

05

OK,正常加载出来了。

这篇文章就到这里。