【UE5.3】笔记6-创建可自由控制Pawn类

搭建场景

搭建一个场景:包含地板、围墙。可以根据喜好加一些自发光的效果。

增加食物

创建食物蓝图类,在场景里放置一些食物以供我们player去吃掉获取分值。

创建可控制的layer

我们先右键创建一个蓝图继承自pawn类,起名BP_Player:

这里我们可以看到Pawn下面还有角色,

Pawn是一种可以被控制的Actor,可以接受来自controller的输入

角色是Pawn的一种类型,增加了可四处走动的功能。

我们现在要做的是控制小球左右移动,所以选用Pawn就行。

添加跟随相机

我们创建好了player之后,要给player添加一个跟随的相机,相机我们知道,但怎么把相机和我们的player绑到一块起到一个跟随效果呢?这里我们就要用到新的组件--Spring arm弹簧臂组件,在Player下添加SpringArm组件,调整旋转大概320度左右。然后再弹簧臂下添加一个Camera,然后把相机的旋转全都改成0,因为会有一个默认值,改完之后我们的相机就会看着我们的角色了,如下图:

创建游戏模式基础

我们如果直接运行,UE会生成自带的游戏模式基础如下图,默认的肯定不能完全满足我们的要求,现在我们要在这个关卡里使用上面我们自己创建的游戏模式基础,该如何去使用呢?

首先,右键新建游戏模式基础,起名:BP_GameMode

然后,打开世界场景设置,将其中的游戏模式重载由默认的无改成我们上面新建的BP_GameMode:

最后,我们打开我们创建的BP_GameMode,将其中的默认pawn类改成我们创建的BP_Player,如下图,最好别忘记点击编译。

这时我们再次运行游戏,我们的小球就会在场景中生成,在大纲里面我们也能看到本来默认的GameMode和player变成了我们自己创建的。

至此,一个可以控制的角色以及场景我们就搭建完毕了,我们还可以给小球添加移动的功能,去吃掉食物等等功能

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视图库对接系列(GA-T 1400)四、视图库对接系列(本级)注册

视图库对接系列(本级)注册 在之前的步骤中,我们已经把项目大体的架构已经写出来了。那我们就来实现注册接口。 GA-T 1400中的步骤如下: 这里的话,我们实现的简单点, 我们不进去鉴权,也就是设备或平台找我们注册的话&…

VideoPrism——探索视频分析领域模型的算法与应用

概述 论文地址:https://arxiv.org/pdf/2402.13217.pdf 视频是我们观察世界的生动窗口,记录了从日常瞬间到科学探索的各种体验。在这个数字时代,视频基础模型(ViFM)有可能分析如此海量的信息并提取新的见解。迄今为止,…

Rustdesk如何编译代码实现安装后不会显示主界面,不会在右下角出现托盘图标,作为后台服务运行

环境: Rustdesk1.1.9 问题描述: Rustdesk如何编译代码实现安装后不会显示主界面,不会在右下角出现托盘图标,作为后台服务运行 解决方案: 可以自定义进程名称和图标,不会显示主界面,不会在…

小试牛刀-区块链代币锁仓(Web页面)

Welcome to Code Blocks blog 本篇文章主要介绍了 [区跨链代币锁仓(Web页面)] ❤博主广交技术好友,喜欢我的文章的可以关注一下❤ 目录 1.编写目的 2.开发环境 3.实现功能 4.代码实现 4.1 必要文件 4.1.1 ABI Json文件(LockerContractABI.json) 4.2 代码详解…

uniapp + vite中 uni.scss 使用 /deep/ 不生效(踩坑记录三)

vite 中使用 /deep/ 进行样式穿透报错 原因:vite 中不支持,换成 ::v-deep 或:deep即可

linux应用开发基础知识(八)——内存共享(mmap和system V)

mmap内存映射 内存共享定义 内存映射,简而言之就是将用户空间的一段内存区域映射到内核空间,映射成功后,用户对这段内存区域的修改可以直接反映到内核空间,同样,内核空间对这段区域的修改也直接反映用户空间。那么对…

在TkinterGUI界面显示WIFI网络摄像头(ESP32s3)视频画面

本实验结合了之前写过的两篇文章Python调用摄像头,实时显示视频在Tkinter界面以及ESP32 S3搭载OV2640摄像头释放热点(AP)工作模式–Arduino程序,当然如果手头有其他可以获得网络摄像头的URL即用于访问摄像头视频流的网络地址&…

如何快速掌握一门编程语言

学习一门新的编程语言可能是一个具有挑战性的过程,但通过一些系统的方法,可以大大加快这个过程。 目录 第一步:通过书籍和视频课程掌握基本语法1. **学习编程语言的基础知识**2. **掌握字符串处理**3. **掌握正则表达式和解析器**4. **掌握面…

停车场车牌识别计费系统,用Python如何实现?

关注星标,每天学习Python新技能 前段时间练习过的一个小项目,今天再看看,记录一下~ 项目结构 说明: datefile文件夹:保存车辆信息表的xlsx文件 file文件夹:保存图片文件夹。ic_launcher.jpg是窗体的右上角…

什么是 URL ?

统一资源定位符(URL)是一个字符串,它指定了一个资源在互联网上的位置以及如何访问它。URL 是由几部分组成的,每部分都有其特定的作用: 协议/方案:这是 URL 的开头部分,表明了用于访问资源的协议…

stm32F4库函数c++和C混合编程笔记20240626

1、有时候需要用到c的一些特性,封装,类等等。 2、研究一下如何更改之前c工程的内容,实现混合编程。 操作 1、keil设置 2、要重新建立一个main文件,后缀名是cpp,cpp才能调用cpp. 后面如果要用到c特性的,需要…

python sklearn机械学习-数据预处理

🌈所属专栏:【机械学习】✨作者主页: Mr.Zwq✔️个人简介:一个正在努力学技术的Python领域创作者,擅长爬虫,逆向,全栈方向,专注基础和实战分享,欢迎咨询! 您…

C++: 左值引用和右值引用

目录 概念: 理解: 左值引用,右值引用 左值引用能否给右值取别名? 右值引用能否给左值取别名? 引用的意义是什么? 左值和右值对自定义类型有什么区别吗? move的妙用! 没有优化…

统计信号处理基础 习题解答11-13

题目 如果是一个2x1的随机矢量,具有PDF 证明的PDF是一个随机变量。提可以因式分解成,其中是一个在4.5节描述的白化变换。 解答 首先: 因此,存在: 也就是是Hermitian矩阵。详细的性质可以参考: https://z…

Git使用[推送大于100M的文件后解救办法]

推送大于100M的文件后解救办法 本文摘录于:https://blog.csdn.net/u012150602/article/details/122687435只是做学习备份之用,绝无抄袭之意,有疑惑请联系本人! 当有文件大于100M的时候在提交的时候没有问题,但是在push的似乎就不行…

电影院售票管理系统(小白)大佬求解

最近在写一个关于电影院售票管理系统的sm项目,但是在买票的环节出现了问题及点击选座购票,没有数据渲染出来,我不知道什么情况,所以问问。有没有大佬可以帮我解决这个问题?下面是我的。控制层,服务层&#…

学校考场电子钟除了报时,还能做什么?-讯鹏时钟

在学校考场中,电子钟的存在似乎已经司空见惯,大多数人仅仅将其视为报时的工具。然而,学校考场电子钟的作用远不止于此,它具备众多优势和丰富的功能。 学校考场电子钟能够提供精准的时间参考,这是其最基础也是最关键的功…

Qt:5.QWidget属性介绍(Enabled属性-控件可用性设置、geometry属性-控件位置/大小设置)

目录 一、 QWidget属性的介绍: 二、Enabled属性-控件可用性设置: 2.1Enabled属性的介绍: 2.2获取控件当前可用状态的api——isEnabled(): 2.3设置控件当前的可用状态的api—— setEnabled() : 2.4 实例&#xff…

第二十一章 网络编程

​ 一、网络的相关概念 1. 网络通信 (1)网络通信:将 数据 通过网络从一台设备传输到另一台设备 (2)java.net 包下提供了一系列的类或接口,完成网络通信 2. 网络 概念:两台或多台设备通过一定…

VideoLLaMA 2:多模态视频理解新突破,音频理解能力再升级,挑战 GPT-4V

前言 近年来,人工智能技术飞速发展,尤其是大模型的出现,为视频理解和生成领域带来了前所未有的机遇。然而,现有的视频大模型(Video-LLM)在处理视频中复杂的时空信息和音频信息方面仍存在不足,例…