主要内容

如何快速做出UI框架?

几个实用的小控件

虚幻4中界面的制作,有两种方式,稍微复杂的是HUD,简单一点的是UMG(User Widget)

HUD和UMG都可以制作简单的显示,按钮之类的,我觉得HUD更适合制作小地图和其它复杂一点的,HUD跟材质结合的比较密切。如果是简单点的UI,UMG就可以了,操作方便,属性绑定也快。

值得一提的是使用蓝图制作UI比用C++实现方便的多

下面这种五分钟不需要调试直接出来(仅仅是界面,不包括任何程序)

UMG的控件具体使用官方文档已经很详细了不多说

如何快速做出UI框架?

如果有用其它软件做UI的经验,那么你很快就能掌握布局的技巧

虚幻4提供了很多布局的控件,只使用两个控件基本上能做出大多数固定的控件了,两个控件:水平box和垂直box

只需要嵌套就足矣,哪怕用C++写原理也是嵌套,各种功能的盒子装进盒子,

关键属性在于插槽里面的Padding(内边距),Size,以及水平和垂直的居中/拉伸

上面几个东西搞懂了,以后学什么QT啊,Tkinter啊,Css啊都可以很快掌握,当然反过来也是一样。至于具体怎么布局还是要自己多练习

几个实用的小控件

第一个:WidgetSwitcher

作用类似于翻页,设置ActiveWidgetIndex即可

比如我们做一个简单的样例

第二个:Scroll Box(滚动框)

竖直水平滚动都可以,你甚至可以在水平滚动框中嵌入几个竖直滚动

最后一个:Uniform Grid Panel(均匀网格)

这个比较适合做背包,商店一类,当然如果你要做拖放的背包也可以实现,时间有限,我可能在后面进行补充,也可以做出我的世界移动端那种按住计数再转移的背包

两个关键设置

childlayout子布局设置格子的内边距(你放进去的控件是在这个格子里面,所以是内边距)

放进去的控件会多出来一个row和column,控制第几行第几列


还有几个就懒得说了,这些都是旁枝末节,理解了原理,其实都一样

至于控件的创建,属性的绑定,官方文档也已经给出了准确的答案。

UI与程序分离

这里的界面指的是用蓝图写的或者用程序写的界面,程序指的是游戏逻辑,比如说制作一个血条,

血条的作用是根据0-1的浮点数显示一个百分比(界面)

这个百分数=当前血量/最大血量(逻辑)

那么就应该把计算过程放到角色类中,哪怕这个过程很简单

(很zz的一个例子。。)但是如果你不注意这个问题,属性和控件数量都比较多的时候就很麻烦

其实就是遵循面向对象程序设计思路,当然每个界面也可能有自己的逻辑,比如增删查改,拖放啊之类的

结语

在游戏开始之前设计好UI很简单,但是游戏内UI通常都在不断改变,最常见的例子就是背包,增添物品,丢弃物品,有的物品有数量,有的没有,还有背包与“仓库”物品的交换,这些操作相对复杂,不要着急,后面我将会用一个RPG游戏告诉大家,如何把游戏逻辑和界面结合起来

虚幻4UMG控件实用技巧相关推荐

  1. MFC第一课 控件使用技巧

    MFC控件使用技巧:Static Text 1)单独设置某个静态文本控件的属性: 颜色,字体大小 解决方案:需要指定一个独特的ID,默认情况下,所有的 静态文本框的ID是一致的 2)设置按钮的文本的时 ...

  2. Powerbuilder中Kodak图像扫描控件应用技巧

    Powerbuilder中Kodak图像扫描控件应用技巧 作者:佚名   减小字体 增大字体 摘  要 Powerbuilder中对Kodak图像扫描控件应用的技巧,主要是对扫描出来的图像进行文件头修 ...

  3. DataGrid 控件使用技巧集合

    datagrid控件使用技巧大集合 引用自:http://www.cnblogs.com/iCeSnaker/archive/2004/07/31/29017.aspx 1.DataGrid的正反双向 ...

  4. WebBrowser控件使用技巧分享

    原文地址为: WebBrowser控件使用技巧分享 在发布"淘宝登货员"时发现不少朋友对WebBrowser控件比较感兴趣,故在此分享一下使用心得. 首先分享一个WebBrowse ...

  5. Qt设计器中,使用QToolBar控件的技巧

    一.问题描述 Qt4.0中的设计器,并没有集成QToolBar这个控件.(5.0出alpha了,不知道怎么样) QMainWindow可以生成QToolBar对象,但是在使用上受到很大限制.也没法布局 ...

  6. 手把手教你BCGControlBar MFC界面控件“起航”技巧(文章转载自:慧都控件网)

    BCGControlBar是全球最大的MFC控件套包,由微软指定合作控件开发商BCGSoft公司开发,主要用于构建类似Microsoft® Office 2000/XP/2003/2007/2010. ...

  7. word控件应用技巧:线上试卷制作小妙招

    一.自动实时更新时间:方便后期归纳整理 操作步骤: ①点击[开发工具]-[控件]按钮,选择[日期选取器内容控件],插入日期内容控件.此时,我们可以看到文档中出现了一个日历框.点击控件的右侧的下拉按钮, ...

  8. datagrid控件使用技巧大集合

    引用自:http://www.cnblogs.com/iCeSnaker/archive/2004/07/31/29017.aspx 1.DataGrid的正反双向排序 http://dev.csdn ...

  9. CListCtrl控件使用技巧

    这几天处理单文档中CListCtrl控件,找了不少资料.最后得到以下的使用技巧,记录下来,方便后面用得到.当然可能有不正确的地方,请大家指出. 问题一:修改网格的高度 方法1:直接在OnInitDia ...

最新文章

  1. java bio_Java BIO及实现
  2. 「AI白身境」搞计算机视觉必备的OpenCV入门基础
  3. matlab未定义函数lp,matlab未定义函数或变量(附上源代码)
  4. opencv 一堆算法,图像处理等
  5. 20155226 2016-2017-2 《Java程序设计》第一周学习总结
  6. vue.js框架:数组的各种变异方法
  7. linux ftp用户指定多个目录,linux ftp服务器下用户限制目录的方法
  8. Linux命令行下感叹号的几个用法
  9. CentOS7下解决yum install mysql-server没有可用包的问题
  10. NYOJ469(动态规划)
  11. 通用管理系统概要设计说明书
  12. Unix/Linux中/usr目录的由来
  13. mysql只有frm_MySQL只有.frm和.ibd文件如何批量恢复InnoDB表-爱可生
  14. 【阿里云】阿里云跨账号内网互通
  15. Kibana查询语言(KQL)AND、OR匹配,模糊匹配
  16. 基于FPGA平台RISCV架构的SOC应用系统设计1
  17. 微信小程序如何获取用户昵称性别地区等信息
  18. STM32F429的LCD-TFT模块 资料整理
  19. 流行发型--空间修剪+立体空间烫
  20. true在python是什么意思_Python3中真真假假True、False、None等含义是什么

热门文章

  1. 动态获取本地json文件,渲染为表格-前端html+css+javascript,nth-child选择器,实时浏览插件,vscode,ajax
  2. Python多态的两种实现形式
  3. 使命召唤ol服务器不稳定,使命召唤OL太卡怎么办_使命召唤OL延迟丢包问题_快吧游戏...
  4. js数组去重(区分object、“NaN”、NaN)
  5. 小米使用计算机计算sin30,小米手机计算器sin30度怎么不等于0?
  6. 解决当APP退到后台,在由桌面点击图标时,APP重新创建,不会回到退出时活动的问题
  7. python花数_python交换数字a b怎么用python画花朵
  8. Java中实现删除左侧空格ltrim和删除右侧空格rtrim
  9. 萌妖出没服务器维护电视版,萌妖出没游戏完整版
  10. 买android手机,买Android手机理由:iPhone 6竟无言以对