Unity3D框架插件uFrame实用参考手册(一)
ccwgpt 2024-10-07 07:04 24 浏览 0 评论
1.概览
uFrame是提供给Unity3D开发者使用的一个框架插件,它本身模仿了MVVM这种架构模式(事实上并不包含Model部分,且多出了Controller部分)。因为用于Unity3D,所以它向开发者提供了一套基于Editor的可视化编辑工具,可以用来管理代码结构等。本文为uFrame1.6版本在项目中实践的记录,主要包括一些uFrame中的基本概念以及应用的流程。
2.新建uFrame工程
本小节主要内容包括:
- 在uFrame新建工程
- 在uFrame的可视化编辑器中打开工程仓库
- 在uFrame的可视化编辑器中设置工程的命名空间,用来在生成模板代码时使用
2.1.在uFrame中新建工程
在Unity编辑器的Project部分新建一个文件夹,命名为MyProject。选中刚刚创建的文件夹右键选择:[u]Frame->New Project。
如图:
此时,打开MyProject文件夹,我们创建的uFrame的工程仓库已经创建好了。
我们可以对这个文件进行重命名,以符合自己的习惯。
到此,我们就完成了在uFrame中创建一个新的工程的任务。
2.2.在uFrame的可视化编辑器中打开工程仓库
创建完uFrame的工程之后,我们就可以在uFrame提供的可视化编辑器(graph designer)中打开该工程了。点击Editor的工具栏,选中Window->uFrame Designer:
在uFrame的编辑器中,我们可以选择我们刚刚创建的uFrame工程。
这样,我们就在uFrame的编辑器中打开了刚刚创建的uFrame工程了。
2.3.设置工程的命名空间
由于uFrame的这套可视化编辑器的目的是为了向开发人员提供便利的开发方式,其最后还是要生成一些模板代码的。因此,我们可以设置一些信息,以生成对应的模板代码。例如,我们可以在这里设置工程的命名空间,这样生成的代码都会在我们设置的命名空间内。选中在2.1中生成的工程仓库文件,我们在它的inspector面板中可以设置这个工程的命名空间。
至此,整个工程的基本设置就已经完成了,下面我们继续进一步进行一些具体的操作。
3.创建子系统
本小节主要内容包括:
- 介绍uFrame中图(Graph)的概念
- 创建一个MVVM图(MVVM Graph)
- 创建一个子系统图(Subsystem Graph)
3.1.uFrame中的图(graph)
在创建子系统之前,我们首先要了解一个概念,即uFrame中的图(Graph)。此处说的图是uFrame中的一个概念,uFrame工程中的每一个图都会以文件的形式存在于工程的文件夹中。每一个图都可以包含很多的结点(Node),而且图和图之间也可以共享同一个工程中的节点。我们可以通过uFrame的可视化编辑器(designer)来创建一个图,在designer的左侧我们可以打开图的选择框:
选择框中列出的是可以创建的图的类型。
需要我们注意的是,此时创建的图会自动和此时选中的工程链接,且图文件会在被选中的工程的文件夹中创建。
3.2.创建MVVM图
此时,我们需要为我们的工程创建一个MVVM图,所以在上面的图的选择框中我们选择Create MVVMGraph。我们可以看到创建完之后,这个图只包括一个节点(Node),该节点代表图本身,我们可以称它为图节点(Graph node)。
而且,一个图文件也在我们的工程文件夹中被创建了出来。
如果需要修改图的名字,我们可以直接在designer中修改图节点的名字,右键点击节点,选择Rename即可。
3.3.创建子系统图
下面就让我们在MVVM图之下添加一些子系统,来丰富这个工程的功能吧。
我们只需要在空白处点击右键,即可弹出一个选择菜单:
选择Add Sub System即可在FoxMain环境中添加一个子系统了。
注意:此处需要提醒各位注意,不同的环境下选择菜单的内容是不同的,可添加的元素也不同,例如在此处的MVVM Kernel图中我们可以创建SubSystem,而Element节点只能在SubSystem中创建,同样,View节点只能在Element节点中创建。所以想要创建目标节点时,一定要确定现在的环境(可以通过左上角看到当前所在的环境,例如现在是FoxMain)。
4.创建节点(Node)
本小节主要内容包括:
- 解释什么是Element节点并创建Element节点
- 解释什么是View节点并创建View节点
4.1.Element节点
在designer中,Element节点主要定义了ViewModel和Controller,Element中的数据主要有三部分组成:
- 属性Property,主要是单个数据
- 集合Collection,主要是数据集合
- 命令Command,主要定义了一些命令,由Controller执行。
由于它们是常规的C#类型,并没有继承Unity3D中的Monobehaviour,因此它们不依赖Unity3D,所以它们是可移植的。
而在Unity3D中,我们通过创建和Unity3D相关的View来绑定ViewModel,从而表现ViewModel中的数据。
下面我们就在刚刚创建的UISys子系统中创建一个Element节点,并命名为Login。
右键点击designer的空白处,可以弹出一个选择菜单,其中包括很多Add选项,例如Command、Element等等。选择Add Element,一个名为Login的Element节点便被创建出来了。
注意:观察designer的左上角,可以看到我们此时处在UISys中,即我们现在在UISys图(graph)中。之所以要在此提示各位注意这一点,是由于节点可以以子系统的图节点为目标添加,也可以以别的节点为目标添加,如果我们双击Login节点,就变成了以Login节点为目标添加。
4.2.View节点
在Unity3D开发中,View部分指的就是Unity3D为我们提供的视觉方面的操作对象,例如游戏内的物体、UI等等。View是展示层,它通过绑定ViewModel来展示ViewModel中的数据。举一个例子各位可能会更容易理解这个意思:假设我们的游戏中有一个PlayerViewModel,针对这一个ViewModel我们在游戏中可以有多种表现方式,例如:我们可以有一个PlayerView对应游戏中的玩家模型,根据ViewModel中的数据展示各种动作、或者位移。也可以有一个PlayerInfoView对应游戏中的玩家数据UI,根据同一个ViewModel中的数据,展现例如玩家血量、经验值等等信息。
而绑定了同一个ViewModel的多个View的不同之处就在于,各个View只关注ViewModel上它们所需要的数据,各个View之间也应该尽可能的保持独立性。
那么下面我们就来创建一个View节点。
双击Login节点进入以Login为目标的环境,和创建Element节点的过程类似,右键点击空白处弹出选择菜单,这次菜单中包括Add View的选项,如下图:
(我们还可以看到左上角已经从之前的UISys变成了现在的Login)
这样,一个View节点便被创建出来了。
现在分别代表ViewModel和View的节点已经被创建出来了,接下来我们就要创建ViewModel上的数据了。
相关推荐
- 2025南通中考作文解读之四:结构框架
-
文题《继续走,迈向远方》结构框架:清晰叙事,层层递进示例结构:1.开头(点题):用环境描写或比喻引出“走”与“远方”,如“人生如一条长路,每一次驻足后,都需要继续走,才能看见更美的风景”。2.中间...
- 高中数学的知识框架(高中数学知识框架图第三章)
-
高中数学的知识框架可以划分为多个核心板块,每个板块包含具体的知识点与内容,以下为详细的知识框架结构:基础知识1.集合与逻辑用语:涵盖集合的概念、表示方式、性质、运算,以及命题、四种命题关系、充分条件...
- 决定人生的六大框架(决定人生的要素)
-
45岁的自己混到今天,其实是失败的,要是早点意识到影响人生的六大框架,也不至于今天的模样啊!排第一的是环境,不是有句话叫人是环境的产物,身边的环境包括身边的人和事,这些都会对一个人产生深远的影响。其次...
- 2023年想考过一级造价师土建计量,看这30个知识点(三)
-
第二章工程构造考点一:工业建筑分类[考频分析]★★★1.按厂房层数分:(1)单层厂房;(2)多层厂房;(3)混合层数厂房。2.按工业建筑用途分:(1)生产厂房;(2)生产辅助厂房;(3)动力用厂房;(...
- 一级建造师习题集-建筑工程实务(第一章-第二节-2)
-
建筑工程管理与实务题库(章节练习)第一章建筑工程技术第二节结构设计与构造二、结构设计1.常见建筑结构体系中,适用建筑高度最小的是()。A.框架结构体系B.剪力墙结构体系C.框架-剪力墙结构体系D...
- 冷眼读书丨多塔斜拉桥,这么美又这么牛
-
”重大交通基础设施的建设是国民经济和社会发展的先导,是交通运输行业新技术集中应用与创新的综合体现。多塔斜拉桥因跨越能力强、地形适应性强、造型优美等特点,备受桥梁设计者的青睐,在未来跨越海峡工程中将得...
- 2021一级造价师土建计量知识点:民用建筑分类
-
2021造价考试备考开始了,学霸君为大家整理了一级造价师备考所用的知识点,希望对大家的备考道路上有所帮助。 民用建筑分类 一、按层数和高度分 1.住宅建筑按层数分类:1~3层为低层住宅,4~6层...
- 6个建筑结构常见类型,你都知道吗?
-
建筑结构是建筑物中支承荷载(作用)起骨架作用的体系。结构是由构件组成的。构件有拉(压)杆、梁、板、柱、拱、壳、薄膜、索、基础等。常见的建筑结构类型有6种:砖混结构、砖木结构、框架结构、钢筋混凝土结构、...
- 框架结构设计经验总结(框架结构设计应注意哪些问题)
-
1.结构设计说明主要是设计依据,抗震等级,人防等级,地基情况及承载力,防潮抗渗做法,活荷载值,材料等级,施工中的注意事项,选用详图,通用详图或节点,以及在施工图中未画出而通过说明来表达的信息。2.各...
- 浅谈混凝土框架结构设计(混凝土框架结构设计主要内容)
-
浅谈混凝土框架结构设计 摘要:结构设计是个系统的全面的工作,需要扎实的理论知识功底,灵活创新的思维和严肃认真负责的工作态度。钢筋混凝土框架结构虽然相对简单,但设计中仍有很多需要注意的问题。本文针...
- 2022一级建造师《建筑实务》1A412020 结构设计 精细考点整理
-
历年真题分布统计1A412021常用建筑结构体系和应用一、混合结构体系【2012-3】指楼盖和屋盖采用钢筋混凝土或钢木结构,而墙和柱采用砌体结构建造的房屋,大多用在住宅、办公楼、教学楼建筑中。优点:...
- 破土动工!这个故宫“分院”科技含量有点儿高
-
故宫“分院”设计图。受访者供图近日,位于北京海淀区西北旺镇的故宫北院区项目已开始破土动工,该项目也被称作故宫“分院”,筹备近十年之久。据悉,故宫本院每年展览文物的数量不到1万件,但是“分院”建成后,预...
- 装配式结构体系介绍(上)(装配式结构如何设计)
-
PC构件深化、构件之间连接节点做法等与相应装配式结构体系密切相关。本节列举目前常见的几种装配式结构体系:装配整体式混凝土剪力墙结构体系、装配整体式混凝土框架结构体系、装配整体式混凝土空腔结构体系(S...
- 这些不是双向抗侧结构体系(这些不是双向抗侧结构体系的特点)
-
双向抗侧土木吧规范对双向抗恻力结构有何规定?为何不应采用单向有墙的结构?双向抗侧土木吧1.规范对双向抗侧力结构体系的要求抗侧力体系是指抵抗水平地震作用及风荷载的结构体系。对于结构体系的布置,规范针对...
- 2022一级建造师《建筑实务》1A412020 结构设计 精细化考点整理
-
1A412021常用建筑结构体系和应用一、混合结构体系【2012-3】指楼盖和屋盖采用钢筋混凝土或钢木结构,而墙和柱采用砌体结构建造的房屋,大多用在住宅、办公楼、教学楼建筑中。优点:抗压强度高,造价...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- MVC框架 (46)
- spring框架 (46)
- 框架图 (58)
- flask框架 (53)
- quartz框架 (51)
- abp框架 (47)
- jpa框架 (47)
- laravel框架 (46)
- springmvc框架 (49)
- 分布式事务框架 (65)
- scrapy框架 (56)
- shiro框架 (61)
- 定时任务框架 (56)
- java日志框架 (61)
- JAVA集合框架 (47)
- grpc框架 (55)
- ppt框架 (48)
- 内联框架 (52)
- winform框架 (46)
- gui框架 (44)
- cad怎么画框架 (58)
- ps怎么画框架 (47)
- ssm框架实现登录注册 (49)
- oracle字符串长度 (48)
- oracle提交事务 (47)