跳到主要内容

创建与开发

按照示例项目的方式配置好Unity插件之后,开发者可以通过菜单创建一个小游戏项目。

通过UI界面创建

通过菜单打开创作管理界面:

创建

在创作管理界面使用APP的账号登录,然后可以新建一个游戏或者游戏模板,项目的路径固定为Assets/MiniProjects/xxx

创建

创建

项目的文件结构

example
├── luafab
│ |── MiniRoot.prefab -- 根节点prefab
│ └── MiniRoot.lua -- 根节点脚本
├── src
│ └── MiniContext.lua -- 上下文脚本
├── config.txt

MiniContext

其中,MiniContext的执行时期是在游戏根节点加载之前,它会创建一个上下文对象。

信息

我们不建议使用全局变量,对于游戏中一些功能或数据如果会在各种地方都被调用,可以把它放在MiniContext中。

我们约定MiniContext.lua返回一个构造函数,它的一般形式如下:


-- 这里按照lua的常见用法创建一个metatable用来表示MiniContext这个class
local MiniContext = {}
MiniContext.__index=MiniContext

function MiniContext.new(miniHelper)
return setmetatable({
miniHelper=miniHelper,
}, MiniContext)
end

-- miniHelper是一个C#的类,它提供了我们在C#层封装的一些功能,在MiniContext构建时,它作为第一个参数被传入。
return function(miniHelper)
return MiniContext.new(miniHelper)
end

MiniRoot

小游戏会通过一个场景NianxieMini/DefaultAssets/MiniScene.unity进行加载,该场景文件不支持自定义,自定义的能力由根节点实现:

MiniRoot.prefab为游戏的根节点预制体,在游戏加载的过程中,MiniRoot.prefab会被实例化并挂接到场景中。

MiniRoot.lua为MiniRoot.prefab上挂的lua脚本,可以用来实现MiniRoot.prefab的逻辑行为。

信息

为了支持足够的编辑自由度,小游戏的场景初始化时不自带Camera节点,开发者可以按自己的需要添加和控制Camera,例如直接挂在MiniRoot.prefab中。 详见相机适配

lua脚本

通过lua脚本开发者可以实现常规的游戏逻辑功能,详见Lua脚本