一.前言

GameFramework是一个非常出色的Unity游戏框架,提供了非常多的实用模块,其中的UI框架,更是非常的出色。如果我们制作手游或端游,那么我们直接仿照StarForce示例UguiForm即可很好的实现自己的UI。但是如果我们用GameFramework制作VR游戏,那么我们可能需要在场景中显示3D的UI,我们本问就简单介绍一个如果扩展GameFramework的UI框架,来实现一个基于VR的3D UI。

二.UIForm类图

我们先来看一下UIManager的类图
我们可以看到UIForm的逻辑类UIFormLogic的继承体系,StarForce示例帮我们实现了UGuiForm,我们可以根据自己的需要实现NGuiForm或者FGuiForm,当然我们按照这个逻辑,也可以实现自己的UGui3DForm。

三.2DUI实现

我们说的2DUI,其实就是框架自带的UGUI的示例实现,我们简单看下它是如何实现的。

1.自定义2D UI预制体

我们要实现3D的UI,先来分析一下2D的UI是如何实现的。其实说是2D的UI,其实就是基于Unity的Canvas画布系统实现的UI。
我们来看一下示例中的About页面的预制体,有一个Canvas组件,这样才可以在画布系统中显示。还有一个AboutForm组件。AboutForm是继承自UIFormLogic的子类,是我们实现自定义UI的界面

GameFramework 框架详解之 如何实现VR的3D界面相关推荐

  1. GameFramework框架详解之 框架总览

    一.前言 目前市场上有很多优秀个开源框架,比如ET,GameFramework,DBFramework,StrangeIOC,Loxodon-Framework,KSFramework,xluaFra ...

  2. GameFramework框架详解之 Sound声音管理

    一.前言 虽然现在大厂的大项目可以选择想Wwise这类的音频插件来进行声音的开发,不需要什么声音模块管理了,但是我们也知道,小公司或者小项目组,是用不起这种收费软件的,所以大部分的项目还是需要我们自己 ...

  3. GameFramework框架详解之 资源打包和加密

    一.Resource Builder编辑器面板 我们根据GameFramework的demo:Star Force 进行拆解GF的资源打包和加密逻辑 参数: productName:产品名称. com ...

  4. GameFramework框架详解之(四)对象池模块

    GF对象池 一.前言 GF框架中对象池的使用,总共有三处 1.TaskPool任务池 2.RefrencePool引用池 3.EventPool事件池 4.ObjectPool对象池 首先使用原理都是 ...

  5. GameFramework框架详解之 DataTable配置表模块

    一.前言: GameFramework的DataTable模块是项目的配置表模块,存储着项目的静态配置数据.配置表一般是从excel导出csv/json/xml格式的,之所以是excel作为源文件,原 ...

  6. GameFramework框架详解之 Resource资源管理器

    资源加载 一.前言 GF实现了一套资源加载模块,只提供了一套异步加载的接口,而且也并不打算提供同步加载的接口. 二.资源框架简介 1. 资源类型定义 GF资源管理内部,实现了两个关于资源类的定义: 1 ...

  7. GameFramework框架详解之 DataNode数据节点模块

    一.前言 每个游戏都有数据节点中心,数据节点的作用其实就是游戏运行时的一些缓存数据,比如用户登录的信息,背包信息,任务进度等等.数据存储的结构一般都是字典转存json/xml,这样我们直接用json序 ...

  8. jQuery Validate验证框架详解

    2019独角兽企业重金招聘Python工程师标准>>> 一.导入js库 <script type="text/javascript" src="& ...

  9. shiro放行_Shiro框架详解 tagline

    部分面试资料链接:https://pan.baidu.com/s/1qDb2YoCopCHoQXH15jiLhA 密码:jsam 想获得全部面试必看资料,关注公众号,大家可以在公众号后台回复" ...

最新文章

  1. 程序员/设计师能用上的 75 份速查表(转)
  2. linux常见故障处理,[转载]Linux常见操作和故障处理汇总
  3. Nginx的启动、停止和重启
  4. flock - 必应词典
  5. SystemVerilog——任务和函数(Tasks and Functions)[转]
  6. 45个极具冲击力的WordPress摄影网站模板
  7. 面试突击 004 | 如何排查 Redis 中的慢查询?视频实战篇
  8. c语言经典例题100例
  9. 黑苹果无法登录Appstore
  10. 理解和应用向量积与数量积
  11. python使用多线程爬取
  12. 操作系统复习——进程同步与通信
  13. Codewars-Java编程刷题学习4-Jaden Casing Strings
  14. 简述与机器学习相关的十大常用Python库,极简化算法编程
  15. layui table 单元格合并
  16. 人人都能成为闪电网络节点:第6章安装lnd
  17. java s3_Amazon S3 功能介绍
  18. 互联网低成本的创业与变现
  19. git已经配好密钥,仍需要输入密码的问题
  20. 用QT实现软件与硬件绑定

热门文章

  1. ACL和RouteMap的permit和deny规则在路由重分配时的动作
  2. 解决PANDAS TYPEERROR: BAD OPERAND TYPE FOR UNARY ~: ‘FLOAT‘
  3. 达梦数据库支持的数据类型
  4. IELTS分数评估-对了30道题得7分
  5. android 禁用dlsym_[原创]解答andwei关于android平台通过dlsym来hook模块方法的原理的疑问...
  6. IntelliJ IDEA 的 Metamodel 配置
  7. 企业的得力助手gotomeeting
  8. mysql 数据库事务 (二)隔离级别
  9. 海宁佳源海棠府欢迎您!官方网站
  10. docker-compose常用命令和yml配置文件