UE4 使用UGM制作血条
声明:本文是自己做的项目,可能不是最好的方法,或有错误使用方式。各位不喜勿喷!
HP进度
HP背景
将上面的资源拖到UE4中(使用UE4自带的颜色也可实现效果,具体参考官方教程 https://docs.unrealengine.com/latest/CHN/Engine/UMG/QuickStart/2/index.html)
网上相关教程:https://answers.unrealengine.com/questions/79728/how-to-make-a-progress-bar-in-umg.html
下面是自己的做法:(注意:下面教程中使用了部分的官方教程截图)
一、创建并设置血条的控件蓝图。
1. 在内容浏览器中添加一个控件蓝图,并命名为HP_Widget。 (控件蓝图,即:widget Blueprint)

2. 双击刚创建的控件蓝图,并拖进一个Progress Bar

3. 按照下图设置progress Bar后,保存


二、 创建可以添加到游戏中的3D Actor 蓝图类,并命名为HP_Blueprint
直接粘贴了部分官方教程, 见谅。 (对官方教程 感兴趣的可以看下Creating and Adding the 3D Actor to the Game World ,具体见官方教程)
注意:将下面MainMenu换成自己的HP_Widget即可。
In this step, we will create the Actor that will contain and display our UI Menu we created in game.
Right-click in the Content Browser, then choose Blueprint from the context menu that appears to create a new Blueprint.

Select Actor from the pop-up menu that appears, give the new Blueprint a name, then save the Blueprint.

Double-click on the new Blueprint to open it up in the Editor, it should open to the Components tab.

If it does not open up on the Components tab, click the Components tab to jump to it.
Click the Add Component button, then find and select the Widget option.

Give the component a name (such as MainMenu), then click the Compile and Save buttons.
In the Details panel for the new widget component, scroll down to the UI section and under Widget Class, select the MainMenuWidget Blueprint.

You can adjust the Draw Size settings to increase the scale of the widget.

There is also a Max Interaction option which will determine how far away the player can be to interact with the widget.

There are additional options for rendering under the Rendering section (below we have set the component to two sided so the component is visible from behind).

三、给蓝图类添加进度条和朝向摄像机的功能。
1.新建一个蓝图附加对象的变量MyOwner

2.新建一个获得蓝图要附加的对象的函数:GetAttachOwner

3. 新建一个变量Progress Bar,存储进度条对象

4. 新建一个函数GetProgressBar,用来获得进度条对象

5. 新建一个函数HpBarLookAtCamera,每帧都使血条朝向摄像机

6. 在事件图标中调用各个函数。

四、将HPBlueprint蓝图类从资源浏览器中拖到人或怪身上,并设置位置就OK了。
注意:不能通过添加组件的方式HPBlueprint蓝图类。


UE4 使用UGM制作血条的更多相关文章
- UGUI之Slider使用,制作血条
用Slider来控制Cube旋转 Slider是滑动条.
- unity3d-游戏实战突出重围,第二天 制作血条
using UnityEngine; using System.Collections; public class xt : MonoBehaviour { //红色血条 public Texture ...
- Unity中制作血条2.0
##1.血量显示 不必像之前那样添加Slider组件 直接创建Image 在添加Source Image之后,将Image Type 修改为Filled 通过修改Fill Mode就可以显示不同效果 ...
- Unity NGUI弧形血条的制作
unity版本:4.6 NGUI版本:3.6. (转载请注明参考链接及作者) 参考链接:http://www.cnblogs.com/louissong/p/3841656.html,作者:博客园 L ...
- Unity NGUI 血条制作
NGUI 血条制作步骤 实现过程: 模拟血条的变化当点击按钮Button是血条会实时发生变化. 1.向Unity中导入NGUI2.6.3.unitypackage 点击create your ui 后 ...
- unity制作简单血条
学习Unity已经10天了,也没发现有什么长进,真的急.昨天仿着官方Demo做了个射击游戏轮廓,其中需要给每个怪做一个血条. 搜了一些,挺复杂的,用NGUI或者UGUI,外加很长的代码...不过还是找 ...
- Shader实例:NGUI制作网格样式血条
效果: 思路: 1.算出正确的uv去采样过滤图,上一篇文章说的很明白了.Shader实例:NGUI图集中的UISprite正确使用Shader的方法 2.用当前血量占总血量的百分比来设置shader中 ...
- [UE4][Canvas]用C++代码绘制血条(HealthBar)
转自:http://aigo.iteye.com/blog/2275110 参考自Epic官方项目StrategyGame 血条效果: StrategyHUD.h StrategyHUD.cpp
- Unity3D 人形血条制作小知识
这几天用Unity3D做个射击小游戏,想做个人形的血条.百思不得其解,后来问了网上的牛牛们,攻克了,事实上挺简单的,GUI里面有个函数DrawTextureWithTexCoords就能够实现图片的裁 ...
随机推荐
- CXF WebService整合SpringMVC的maven项目
首先推荐博客:http://www.cnblogs.com/xdp-gacl/p/4259481.html http://blog.csdn.net/hu_shengyang/article/de ...
- centos7作为web服务器优化
centos7作为web服务器优化 原文 http://itindex.net/detail/51140-centos7-web-服务器 1.加大打开文件数的限制(open files) 查看 uli ...
- nginx 客户端不缓存header
location ~* \.(html|htm)$ { add_header Cache-Control no-store; }
- 快速查找和你聊天人的IP和具体的物理所在地址
附言 : 对于中秋佳节没有回家也没有外出的我,亦然选择闭关.本来是打算把这个公众号作为测试号的.但是发现这个号已经有注册有一年多了,怪可惜的!所以就用来发些教程图文,供给大家共同学习,也对自己进行不定 ...
- leetcode pow(x,n)实现
题目描述: 自己实现pow(double x, int n)方法 实现思路: 考虑位运算.考虑n的二进制表示形式,以n=51(110011)为例,x^51 = x^1*x^2*x^16*x^32,因此 ...
- PAT线性结构_一元多项式求导、按给定步长反转链表、出栈序列存在性判断
02-线性结构1. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过100 ...
- python中应用*args 与**kwargs
这是Python函数可变参数 args及kwargs------->目的是:当函数的参数不确定时,可以使用*args 和**kwargs,*args 没有key值,**kwargs有key值. ...
- C# GMap下提供一个高德地图
using System; using GMap.NET.Internals; using GMap.NET.Projections; namespace GMap.NET.MapProviders ...
- Java多线程开发系列之一:走进多线程
对编程语言的基础知识:分支.选择.循环.面向对象等基本概念理解后,我们需要对java高级编程有一定的学习,这里不可避免的要接触到多线程开发. 由于多线程开发整体的系统比较大,我会写一个系列的文章总结介 ...
- jQuery EasyUI 使用笔记
大家有四次抢票机会.第一次是放票时间之后的30分钟.第二次机会是开车前的15天.第三个机会是开车前的48小时.第四个机会是开车前的24小时. $("#gys_key").combo ...