UE4 UGM(创建UI)

UE4 UGM(创建UI),第1张

首先第一岁哪步我们创建一个UIWidget

然后我改名为MainUI

然后在里边随便创建一个Button和一个Text

然后打开关卡蓝图,把我们的UI给加进去

这样我们运行就可以看到我们的UI了

然后乎知码我们以按钮为例解释下UI界面

位置,大小,以及锚点设置猛知

处于不同状态的按钮的显示设置

处于不同状态的按钮可以触发的事件

表示该组件是否可以当做变量在程序中可见

我们现在制作一个Slider和角色的生命值做一个关联,首先我们在角色里加一个HP这个变量名,然后在MainUI里获取该引用。

然后选择进度条,Bind

这样就OK了。

UE4引擎编辑UI通常使用WidgetBlueprint,HUD涵盖的面比WidgetBlueprint更广,包含2D、3D和其他,使用c++进行编写,但做UI不如WidgetBlueprint细致、功能多。首先,在ContentBrowser里右键选择生成一个WidgetBlueprint,打开WidgetBlueprint,根据需求选用Image、Text、ProgressBar等等组件设计你的UI画面。VR游戏里建议尽量降低UI在视野画面上占用的比例,话说,哪个逗逼喜欢看到眼前老有块抹不掉的东西。UI画面排版好之后,可以按需求设计曲线和帧动画,然后可以选定一个组件,在Details窗口里凡是有Bind的项都可以点开Bind选项编写逻辑,哥们可以根据需要设计编写,然后在Graph页面统一处理UI信息。注意,如果主角或者其他蓝图类需要调用到UI组件或者UI组件里的变量,则需要将组件的IsVariable项勾上,就在Details窗口第一行组件名后面。

WidgetBlueprint做好后,我们就要确定我们选择哪种方法给相机添加上UI,我这有两种方法,一种是直接绑到相机上,一种是动态添加给相机。直接绑到相机。打开主角的简运Character蓝图,添加一个SpringArm拉到Camera下面,再添加一个Widget组件拉到SpringArm下面,在Widget组件Details窗口的UserInterface栏的WidgetClass项设置UI蓝图类。注意,设置好UI蓝图类后,还需要将Widget组件倒转180度,并调节Widget的位置,使UI正好在相机视野里,而且这种方法做出的UI会随动作抖动,所以要严格控制抖动的范围和方向。Widget组件加到主角蓝图之后,Widget组件的UserInterface下的Space项选World,Image的Alpha值只有0和1两种情况,选Screen,Alpha值才可控。

动态添加给相机。先散咐链用CreateUIWidget生成一个UI组件冲孙,然后用AddtoViewport将UI添加到主角的视野里,如果需要隐藏UI,可以直接用RemovefromParent拉出来,等需要显示的时候再直接用AddtoViewport添加上去。注意,避免重复用Create

UIWidget生成组件,以免占用大量内存,生成后可以用AddtoViewport和[b]RemovefromParent控制UI的显示和隐藏。

学了3个月UE4,感觉上VR游戏其实并不太注重UI这部分,现阶段市面上的VR游戏绝大多数直接省略UI,学做UI只是让你在接到需求后多条路子去实现而已。

[window makeKeyAndVisible]即可。

需要注意的是windowlevel问题,默认的windowlevel是0, statusbar是1000,alertwindow是2000

楼主斗搜握的问题应该使用appdelegate中的空庆window(自定义)就行,不用另外再创建window了。

另求删除window的方法,新建一个window并makeKeyAndVisible后,该window就会在application对象的漏厅windows数组中,求如何在使用完该临时window后将其删除。。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11981168.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存