【虚幻引擎】UE4初学者系列教程开发进阶实战篇——生存游戏案例

news2024/10/6 8:39:41

一、课程体系

1 学前必读

2 Character类相关基础

        -人物移动控制

        -动画蓝图

3 常见游戏机制基础

        -碰撞器、触发器

        -物体使用接口

        -视角切换

4其他相关设计

        -背包系统

        -锻造系统

        -物体破碎效果

        -简易种植系统

        -互动物体动画

5课程结语

二、UI部分

思维导图部分

实操部分

首先创建一个第三人称游戏功能,在小白人的charater中创建变量

1、食物系统

(1)饥饿系统

创建变量(右侧为中文版本)

节点解释:事件tick

Tick事件是程序运行中每一帧刷新一次,例如在通常每秒60帧的游戏运行中,Tick事件就每秒执行了60次。在程序(游戏)开发中,可以借用Tick事件每秒的执行次数来控制Actor在场景中在运动速度等。节点详细解释参考:虚幻引擎UE4中的Tick事件_ue tick-CSDN博客

delta second含义是运行每帧所需要的时间

参考资料1:DeltaSeconds含义

参考资料2:DeltaSeconds用法

帧率为什么会变化?

因为游戏的帧率,特别是射击游戏的帧率是由显卡实时渲染的,而不是像视频一样以一个稳定的速率播放的,所以一秒里的帧速率是不一样的,可能在每秒60帧里,有些帧是完美的60分之一秒的持续时间,有些帧就长达25分之一秒,有些只有100分之一秒,十分不稳定,这可能与射击游戏的渲染特性有关。

在游戏运行过程中,饥饿值就会随着时间慢慢减少

总饥饿值为100,饥饿速度为1(为了测试饥饿速度可以为50,那么每2秒就会掉光饥饿值),那么每100秒掉光饥饿值

但是随着时间的减少,饥饿值有可能变成负数,那么就需要添加一个clamp节点,加入限制函数(Clamp)将其最大最小范围进行限定,将范围限制到0~100(最大饥饿值)之间

进行判断,饥饿值是否是0,是的话输出饿死了

运行画面;

生命值减少
每一秒生命值减少1,进行限定最大值为100,最小值为0,赋值给当前生命值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1895692.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

若依多数据源原理分析

首先,想明白不同的接口想要使用不同的数据源。 那么自然想到了AOP,自定义注解。 通过自定义注解标注当前方法到底使用的是哪个数据源。 上面是前置条件。 看下若依是怎么处理的: 1.定义自定义注解,以及对应的多数据源的枚举类…

p标签文本段落中因编辑器换行引起的空格问题完美解决方案

目录 1.修改前的代码:2.修改后的代码3.总结 在HTML文档中,如何要在(p标签)内写一段很长的文本段落,并且没有 换行。由于IDE或者编辑器界面大小有限或需要在vue中逻辑处理动态显示文本,一行写完太长&#x…

深入浅出 LangChain 与智能 Agent:构建下一代 AI 助手

我们小时候都玩过乐高积木。通过堆砌各种颜色和形状的积木,我们可以构建出城堡、飞机、甚至整个城市。现在,想象一下如果有一个数字世界的乐高,我们可以用这样的“积木”来构建智能程序,这些程序能够阅读、理解和撰写文本&#xf…

在RT-Thread-Studio中添加arm_math库

1.在CMSIS\Lib\GCC中找到对应的库,如本文使用的libarm_cortexM4lf_math.a。将库拷贝到工程,并做如下图设置。搜索路径为库文件在项目中的实际位置。 2.将CMSIS\DSP\Include下的文件复制到工程目录中,并添加包含路径 3.添加宏定义&#xff0c…

【MySQL】MySQL 9.0悄悄的来了

MySQL 9.0.0 中的变化 MySQL 9.0 中的新功能 JavaScript 存储程序 MySQL 企业版现在支持用 JavaScript 编写的存储程序,例如使用 CREATE FUNCTION下面显示的语句和 JavaScript 代码创建的这个简单示例: CREATE FUNCTION gcd(a INT, b INT) RETURNS …

【PTGui、Pano2VR6、UE4】VR全景拍摄及漫游交互制作操作实例(更新中)

一、基本思路 首先进行VR全景拍摄,获取高质量的全景图像;然后使用PTGui进行图像拼接,确保图像的连续性与准确性;接着利用Pano2VR6进行VR漫游的制作,添加交互元素与多媒体内容;最后进行作品的调试与优化&am…

11.SQL注入-盲注基于(base on boolian)

SQL注入-盲注基于boolian案例利用 首先总结一下sql语句中的函数意思 #查看当前所在的数据库 mysql> select database(); ------------ | database() | ------------ | pikachu | ------------ 1 row in set (0.00 sec)#函数substr里1是从第几位开始取字符,2…

时序模型综述论文

时序模型综述论文: A Survey of Time Series Foundation Models: Generalizing Time Series Representation with Large Language Model

抖音矩阵智能剪辑系统源码,saas多平台多账号一站式管理,系统搭建流程

‘1. 将MySQL升级至5.6版本,PHP更新至7.2版本,并使用Apache作为服务器。数据库应命名为“juzhen”。 2. 在Nginx环境下,实现伪静态的切换。 3. 将安装包解压至项目的根目录,并定位至application/database.php文件以更换数据库密…

Linux shell编程学习笔记62: top命令 linux下的任务管理器

0 前言 top命令是Unix 和 Linux下常用的性能分析工具,提供了一个动态的、交互式的实时视图,显示系统的整体性能信息,以及正在运行的进程的相关信息,包括各个进程的资源占用状况,类似于Windows的任务管理器。 1 top命令…

JVM原理(十五):JVM虚拟机静态分配与动态分配

1. 分派 本节讲解的分派调用过程将会揭示多态性特征的一-些最基本的体现,如“重载”和“重写”在Java虚拟机之中是如何实现的。 1.1. 静态分派 案例: 我们先来看一段代码: Human mannew Man(); 我们把上面代码中的“Human"称为变量的“静态类型…

前端面试8

基础知识 解释一下什么是跨域问题,以及如何解决? 跨域问题是由于浏览器的同源策略限制了从一个源加载的网页脚本访问另一个源的数据。解决方法包括使用JSONP、CORS(跨源资源共享)、设置代理服务器等。 描述一下事件冒泡和事件捕获…

企业搭建知识库:解锁无限潜力的钥匙

在当今这个信息爆炸的时代,企业如何高效地管理、传播与利用知识,已成为衡量其竞争力的重要标尺。知识库,作为这一背景下的产物,正逐步成为企业不可或缺的数字资产。它不仅是一个自助式的数字门户,更是连接员工、客户与…

编程建模文件

你可以在MATLAB命令提示符下以编程方式执行大多数Simulink建模基础。与基本建模操作(如创建模型、向模型添加块和设置参数)相对应的命令列在“模型编辑基础知识”的“功能”部分中。这些示例显示了其中一些命令以及如何使用它们。 加载模型 加载模型会…

【Sping Boot2】笔记

Spring Boot 2入门 如何创建一个Spring Boot的Web例子?1.如何创建一个Spring Boot项目1.1 使用Maven构建一个Spring Boot 2项目1.1.1创建Maven工程注:Maven项目结构: 1.1.2引入SpingBoot相关依赖依赖注意事项: 1.1.3创建主类1.1.4…

Mybatis框架的集成使用

1_框架概述 框架是一个半成品,已经对基础的代码进行了封装并提供相应的API,开发者在使用框架时直接调用封装好的api可以省去很多代码编写,从而提高工作效率和开发速度,框架是一种经过校验、具有一定功能的半成品软件. 经过校验:指…

Python酷库之旅-第三方库Pandas(002)

目录 一、用法精讲 1、pandas.read_pickle函数 1-1、语法 1-2、参数 1-3、功能 1-4、返回值 1-5、说明 1-6、用法 1-6-1、代码示例 1-6-2、结果输出 2、pandas.DataFrame.to_pickle方法 2-1、语法 2-2、参数 2-3、功能 2-4、返回值 2-5、说明 2-5-1、文件路径…

MacOS下更新curl

苹果自带的curl不支持Https,我们可以通过curl -V看到如下结果 curl 7.72.0 (x86_64-apple-darwin18.6.0) libcurl/7.72.0 zlib/1.2.12 libidn2/2.3.7 librtmp/2.3 Release-Date: 2020-08-19 Protocols: dict file ftp gopher http imap ldap ldaps pop3 rtmp rtsp …

python 发布应用程序包

文章目录 发布python包toml配置文件构建发布python包 官方文档参考 将自己的python项目发布成源码包或者wheel二进制包,供其他开发者使用。 方式: 使用py工具; distutils,该工具的使用已过时;setuptools,常用方式;wheel,在setuptools的基础上添加了 bdist_wheel, …

量产工具一一UI系统(四)

前言 前面我们实现了显示系统框架,输入系统框架和文字系统框架,链接: 量产工具一一显示系统(一)-CSDN博客量产工具一一输入系统(二)-CSDN博客量产工具一一文字系统(三)…