
Unity框架开发
文章平均质量分 95
Sugarzo
SCUT 计科专业在读
努力学习ing
展开
-
[Unity] GraphView 可视化节点的事件行为树(三) GraphView介绍
在前面两个章节中,我们实现了两个部分的内容:Runtime部分的节点逻辑、UI Toolkit绘制Editor UI。这一章节将会用到GraphView框架,完成我们制作的事件行为树剩下的所有内容。 GraphView是Unity内置的节点绘制系统,实际上Unity里内置的Visual Scripting(可视化脚本编辑),URP中的ShaderGraph,都是GraphView制作。GraphView也属于UI Toolkit的一部分。在Unity 2021中属于Experimental原创 2023-01-04 20:39:03 · 7080 阅读 · 0 评论 -
[Unity] GraphView 可视化节点的事件行为树(二) UI Toolkit介绍,制作事件行为树的UI
UI Toolkit是unity推出的一套全新UI系统。对比传统的GUI系统有着一套全新的工作流。在Unity 2021版本后已被内嵌到默认的编辑器中了。使用UI Toolkit可以很方便的构建属于自己的UI工具。在本章节中使用的是Editor UI的制作。在资源窗口右键,在Create->UI Toolkit->Editor Window中先创建我们需要的Asset。可以看到一个在UI Toolkit中的UI主要有三个模块组成:UXML,USS,C#。原创 2023-01-03 20:59:01 · 2716 阅读 · 1 评论 -
[Unity] GraphView 可视化节点的事件行为树(一) Runtime Node
本文将开始介绍Runtime部分的事件节点逻辑。在本框架中,因为Grapview的节点图属于Editor部分,在游戏运行时是不会被加载进来的。因此首先我们需要一个离开节点图,也可以在游戏实时运行中执行逻辑的节点结构。文章涉及的事件触发思想其实已经在我之前写过的一篇文章中了,也可以算作之前思想的延续。这种方式因为直接使用了父子游戏物品作为组织方式,当大规模使用起来还是有点约束,因为触发器节点和事件节点形成的是一对一的关系,子物品也只能按照顺序执行事件下去,当需要处理一些分支/循环逻辑的时候就不太方便了,而原创 2022-12-27 21:58:08 · 2592 阅读 · 4 评论 -
[Unity] GraphView 可视化节点的事件行为树(序章 项目Github下载)
在自己做的比赛项目中,在初期的游戏系统部分完成之后,剩下的内容就是搭建游戏逻辑了。特别是在剧情解密游戏中,搭建过程就是跟着策划流程文档拼图游戏。之前有些过几篇关于设计模式和框架的文章,其实目标也是将一些可复用的逻辑抽象出来使用,优化制作管线和提高效率。因此便想到了做一个可视化的节点界面工具出来,方便在长期项目中策划同学也能参与进来编写游戏逻辑,减轻程序方面的负担。原创 2022-11-16 01:08:58 · 3952 阅读 · 2 评论 -
[Unity] 实现ScriptableObject数据同步Excel表格(对话系统数据管理,C# ExcelNPOI)
在制作游戏中需要管理各种各样的项目资源,其中游戏中的剧情文字也是一种需要管理的资源。自己刚开始接触游戏开发的时候,第一次看MStudio里面的对话系统教学,只讲了怎么写脚本同步UI的设置,并没有讲有什么方式去管理这些对话数据,视频里拿的是txt来演示存储对话数据,导致我制作的第一个游戏也是那txt来写的,一个对话就是一个txt,管理起来肯定是不方便的。如何存储文字数据呢?这时候就可以使用Excel表格了,让策划在表格中编写完数据后我们就可以一键导入成ScriptableObject,有需要再编辑是也可以导出原创 2022-11-01 00:57:10 · 2677 阅读 · 14 评论 -
【Unity】框架设计(三) Odin编辑器窗口扩展,Asset资源的创建和管理(脚本文件创建、预制体、System.IO、AssetDatabase、Selection)
当游戏规模开始大时,为了制作游戏后期的维护性,就可以考虑做资源管理和编辑器扩展了。一是可以集成一些制作流程,省去一些重复操作的步骤,二是更方便项目数据的规范和管理性。今天来分享一下如何在unity中做编辑器窗口的拓展,并实现一些简单的功能。例如根据模板自动创建脚本(System.IO)、创建预制体(AssetDatabase)、读取指定文件夹下的资源、根据鼠标选中的资源批量创建ScriptableObject等(Selection)。原创 2022-09-30 17:34:30 · 4589 阅读 · 1 评论 -
[Unity] 状态机事件流程框架 (一)(C#事件系统,Trigger与Action)
设计游戏时,框架设计时十分重要的,项目内容一大,各个功能系统间的耦合性就会不可避免的增加,如果初期时没有规划好,后期维护时成本就会大大增加。本期是在Unity实现一个简单的事件框架应用。通过预先在脚本中写好可供复用的具体模块,将事件的搭建流程搭建脱离代码,取而代之的是使用更方便的组合思想去构建事件。这可以减少脚本的编写量,也更好的去规范游戏的制作管线。在本期框架中,我们将游戏的各种游戏中的逻辑触发抽象成【触发器->执行行为序列】的流程,将触发器脚本作为父物品,各个行为作为该触发器的子物品。原创 2022-05-21 02:18:33 · 4643 阅读 · 6 评论 -
[Unity] 状态机事件流程框架 (二) 设计游戏状态的保存框架,存档功能 ScriptableObject、EasySave
本期来设计一个游戏状态的怎么在游戏中表示和存储。保存游戏状态的目的一是方便根据玩家当前的游戏进度实行各种各样的逻辑分支,二是在存档时能记录实时的游戏数据,方便读档回到存档位置。...原创 2022-08-12 21:27:21 · 2979 阅读 · 2 评论