更新文档
This commit is contained in:
parent
078ae04749
commit
4126edc38c
|
@ -36,7 +36,7 @@ var resource = ResourceManager.Load<Theme>(ResourcePath.resource_theme_mainTheme
|
|||
|
||||
### 2.3.重新生成`ResourcePath`
|
||||
如果项目中有资源变动, 则可以使用`Tools`页签下的`重新生成ResourcePath.cs文件`
|
||||
![](文档资源/image_6.png)
|
||||
![](文档资源/image_6.png)
|
||||
|
||||
---
|
||||
## 3.游戏框架
|
||||
|
@ -70,7 +70,7 @@ var resource = ResourceManager.Load<Theme>(ResourcePath.resource_theme_mainTheme
|
|||
* 互动逻辑接口
|
||||
|
||||
通过下面这张图可以了解游戏中的物体与`ActivityObject`的关系 (注意: 该图为早期开发版本的继承关系图, 后面开发可能会有修改)
|
||||
![](文档资源/2023-03-26_030144.png)
|
||||
![](文档资源/2023-03-26_030144.png)
|
||||
|
||||
#### 3.2.2.什么是`Activity模板场景`
|
||||
定义: `Activity模板场景`是指可以可以被实例化出`ActivityObject`对象的场景, 但是场景根节点必须是`ActivityObjectTemplate`节点
|
||||
|
@ -324,32 +324,32 @@ private IEnumerator StartRotation()
|
|||
|
||||
##### 创建模板房间
|
||||
项目提供了一套创建模板房间的工具, 点击`tools`页签, 找到`创建地牢房间`这一项, 输入模板房间名称(注意房间名称不能重复), 即可创建房间, 创建房间完成后会创建房间配置数据, 路径为`resource/map/tiledata/xxx.json`, 并将配置数据注册到`resource/map/RoomConfig.json`中
|
||||
![](文档资源/image_7.png)
|
||||
![](文档资源/image_7.png)
|
||||
|
||||
##### 绘制房间
|
||||
创建好的房间会自动在编辑器中打开, 为场景的根节点选好`TileSet`后就可以画房间了
|
||||
![](文档资源/image_8.png)
|
||||
编辑器会自动计算出房间位置轮廓(绿色线)和导航区域(红色和黄色线), 并绘制出来, 按下`ctrs`+`s`, 编辑器就会将位置轮廓和导航信息存入`resource/map/tiledata/xxx.json`下
|
||||
注意, 为了避免Ai运动时卡墙角, 所以计算导航轮廓时特意与墙预留了半个格子的距离, 也就是说如果存在单格的道路, 导航计算就会出错, 所以在画道路时必须为两格以上的宽度, 像下面这两种情况就是不被允许的, 编辑器会绘制出错误的格子
|
||||
![](文档资源/image_9.png)
|
||||
![](文档资源/image_9.png)
|
||||
![](文档资源/image_10.png)
|
||||
如果计算导航网格出错, 那么编辑器将不会保存房间配置信息
|
||||
|
||||
##### 配置房间门生成位置
|
||||
如果某些模板房间需要在指定区域内生成门, 那么就需要设置房间门生成区域
|
||||
在模板场景中选中根节点, 再勾选`Enable Edit`
|
||||
在模板场景中选中根节点, 再勾选`Enable Edit`
|
||||
![](文档资源/image_11.png)
|
||||
此时将鼠标放置在房间轮廓的绿线上就会显示生成区域
|
||||
此时将鼠标放置在房间轮廓的绿线上就会显示生成区域
|
||||
![](文档资源/image_12.png)
|
||||
点击鼠标左键即可创建门区域, 如果悬停时显示红色方块, 则表示不能在此处创建门区域
|
||||
创建门生成区域的约束: 区域不能重叠, 且两个区域的间距至少为4格, 每个区域至少4格宽度
|
||||
![](文档资源/gif_1.gif)
|
||||
新建的区域默认为4格宽度, 如果需要调整宽度, 可以拖拽区域两侧的点来调整范围
|
||||
![](文档资源/gif_2.gif)
|
||||
如果需要删除区域, 则悬停到区域两侧任意一个点上, 按下鼠标中建即可删除
|
||||
如果需要删除区域, 则悬停到区域两侧任意一个点上, 按下鼠标中建即可删除
|
||||
![](文档资源/gif_3.gif)
|
||||
门区域需要对齐地面地砖
|
||||
![](文档资源/image_13.png)
|
||||
门区域需要对齐地面地砖
|
||||
![](文档资源/image_13.png)
|
||||
|
||||
注意:
|
||||
* 如果一个模板房间不设置门生成区域, 则默认四边任何位置都可能生成门
|
||||
|
@ -381,15 +381,15 @@ UiManager.DisposeUi(ui);
|
|||
为了减低开发者制作UI的复杂程度, 避免手写获取UI节点的代码, 我们设计了一套自动生成UI层级代码的功能, 该功能在编辑器中会监听开发者对于UI场景的修改, 并及时生成相应的UI代码, 并且开发者的UI逻辑类继承生成的UI类, 即可方便的获取UI节点, 可以节省大量时间, 因为代码是实时生成的, 因此一旦有节点改名或者移动位置, 重新生成UI代码后, 引用该节点的代码就会出现编译错误, 方便开发者修改
|
||||
|
||||
##### 创建UI
|
||||
在`Tools`页签下找到`创建游戏UI`, 输入UI名称即可点击创建UI
|
||||
在`Tools`页签下找到`创建游戏UI`, 输入UI名称即可点击创建UI
|
||||
![](文档资源/image_14.png)
|
||||
创建完毕后编辑器会离开打开该UI场景
|
||||
观察文件系统可以注意到, 编辑器为我创建并保存了场景和代码, 并且还生成了一个`MyUiPanel.cs`的文件, 该文件就是我们写UI逻辑代码的地方, 并且命名方式为`UI名称`+`Panel`, 这个Panel类继承了自动生成出来的UI类
|
||||
观察文件系统可以注意到, 编辑器为我创建并保存了场景和代码, 并且还生成了一个`MyUiPanel.cs`的文件, 该文件就是我们写UI逻辑代码的地方, 并且命名方式为`UI名称`+`Panel`, 这个Panel类继承了自动生成出来的UI类
|
||||
![](文档资源/image_15.png)
|
||||
![](文档资源/image_16.png)
|
||||
创建完成UI后, 编辑器也会在`UiManager`中生成打开该UI和获取UI实例的Api
|
||||
![](文档资源/image_17.png)
|
||||
![](文档资源/image_17.png)
|
||||
通过以下这个gif就可以直观感受到该功能的便捷之处
|
||||
![](文档资源/gif_4.gif)
|
||||
![](文档资源/gif_4.gif)
|
||||
|
||||
#### 3.4.3.常用功能
|
||||
|
|
Loading…
Reference in New Issue
Block a user