【UE4 RTS游戏】02-摄像机运动_完成摄像机在X轴上运动的相关步骤
效果
通过控制键盘WS键使得“CameraPawn”进行前后移动

步骤
将landscape的Z轴位置更改为0

删除“PostProcessVolume”

将“LightmassImportanceVolume”移入Lighting文件夹内

新建一个蓝图类,父类是Pawn,命名为“CameraPawn”

将“MyController”重命名为“CameraPawnController”

双击打开“MyGameMode”

默认Pawn类改为“CameraPawn”

打开“CameraPawn”,添加一个场景组件

将场景组件作为根组件

添加一个静态网格体组件

重命名为“Sphere”

再添加一个弹簧臂组件个摄像机组件,层级关系如下:

选中“Sphere”,静态网格体设置为“MaterialSphere”

再更改其大小

Z轴位置设置为100,Y轴旋转设为-70

此时摄像机就是一个斜向下的视角

打开“CameraPawnController”

新建一个变量,命名为“CameraPawnRef”

变量类型为“CameraPawn”的对象引用

新建一个宏,命名为“ReferenceCast”

在“ReferenceCast”中创建如下节点


在事件图表中添加如下节点:

为了能够控制“CameraPawn”在世界中移动,我们继续在“CameraPawn”中进行如下操作:
首先创建一个布尔型变量“DisableCamNav”,表示是否禁用“CameraPawn”的移动,如果为Ture表示禁止移动。

创建如下节点:

创建一个函数,命名为“MoveSpeedCalculation”,用于计算“CameraPawn”的移动速度(我们希望相机升高时加快移动速度,相机降低时减缓移动速度)

添加一个输出节点,命名为“MobileSensitivity”,浮点类型,意思是移动灵敏度

访问说明符设置为受保护,勾选纯函数

获取到弹簧臂的长度,将这个数值÷100作为镜头的灵敏度,并且限制灵敏度的范围在5~20之间。

在事件图表中继续新建一个浮点型变量,命名为“FastMoveMultiplier”,可以理解为当“CameraPawn”进行快速移动时的倍数

默认值设为1,也就是正常的移动倍数,如果后面我想增加移动速度,只需将这个值调大即可。

在事件图表中创建如下节点,将移动灵敏度与移动倍数相乘在乘输入轴映射的倍数来得到“CameraPawn”最终在X轴上的每帧的移动距离

YZ轴上的值不变,只改变X,将新的向量组合起来:

输出该向量的值

输出的值命名为“Transform”

将节点折叠到宏

重命名宏为“MovementX”

双击打开“MovementX”,修改输入节点的命名分别为“AxisValue”,“MoveSensitivity”,“SpeedMultiplier”和“CameraRef”

回到事件图表中,将新变换设置给“CameraPawn”

在项目设置中将玩家状态类改为“GameStateBase”

此时运行游戏,我们就可以控制“CameraPawn”进行前后移动了,效果如文章开头所示。
相关文章:
【UE4 RTS游戏】02-摄像机运动_完成摄像机在X轴上运动的相关步骤
效果通过控制键盘WS键使得“CameraPawn”进行前后移动步骤将landscape的Z轴位置更改为0删除“PostProcessVolume”将“LightmassImportanceVolume”移入Lighting文件夹内新建一个蓝图类,父类是Pawn,命名为“CameraPawn”将“MyController”重命名为“Cam…...
Kubernetes学习(五)持久化存储
Volume 卷 容器中的文件在磁盘上是临时存放的,这给容器中运行的特殊应用带来了一些问题。首先,当容器崩溃时,kubectl将重新启动容器,容器中的文件将会丢失--应为容器会以干净的状态重建。其次,当在一个Pod中运行多个容…...
下一个7年,保持期待、持续思考,酷雷曼继续向前!
过去7年,我们一直在思考, VR技术究竟能为我们的生活带来什么? 是足不出户就能云游千里的秀美风光? 是在家就能沉浸式体验线上消费的便利? 还是为商企和用户搭建更快速的沟通桥梁? NO.1、技术变革 在信…...
天梯赛训练L1-010--L1-012
目录 1、L1-010 比较大小 2、L1-011 A-B 3、L1-012 计算指数 4,一些题外话 1、L1-010 比较大小 分数 10 本题要求将输入的任意3个整数从小到大输出。 输入格式: 输入在一行中给出3个整数,其间以空格分隔。 输出格式: 在一…...
三分钟完成Stable Diffusion本地安装(零基础体验AI绘画)
三分钟完成Stable Diffusion本地安装前言安装步骤下载链接前言 最近AI绘画很火,很多无编程基础的小伙伴也想体验一下,所以写这篇博客来帮助小伙伴们愉快的体验一下~废话少说,我们直接开整! 安装步骤 首先,下载本项目的…...
电子台账:教程目录及软件下载
前面内容有点杂乱,这里整理一下教程目录。重点是制作模板,企业只要学会适合自己的一种就行。如果这些模板都学会做了,那可以当老师了。1 目录1 模板制作之一——列过滤(水平过滤)2 模板制作之二——行过滤(…...
多态的优势和弊端
目录 1.多态的优势 2.多态的弊端是什么? 3.引用数据类型的类型,转换有几种方式 4.强制类型转换能解决什么问题楠? 1.多态的优势 方法中,使用父类作为参数,可以接收所有子类的对象 package ploydemo3;import java.u…...
android h5考勤管理系统myeclipse开发mysql数据库编程服务端java计算机程序设计
一、源码特点 android h5考勤管理系统是一套完善的WEBandroid设计系统,对理解JSP java,安卓app编程开发语言有帮助(系统采用web服务端APP端 综合模式进行设计开发),系统具有完整的源代 码和数据库,系统主…...
第二道pwn题:shellcode
题目来自视频:链接:https://pan.baidu.com/s/17vX9dbfHkXBw71mcEXBgNQ?pwd6666 提取码:6666查看文件类型和保护,虽然现在的我还没有明白太多的保护。64位,放到ida里边rbp:保存的是栈中当前执行函数的基本地址。当前执…...
《华为数据之道》读书笔记
《华为数据之道》读书笔记第二章:2.2.1 管理总纲有四点:信息架构管理原则、数据产生管理、数据应用管理原则、数据问责与奖惩管理原则2.1.2 信息架构管理政策:管理信息架构的角色与职责:公司数据Owner、各数据Owner、数据管理专业…...
C++源码pcl1.13.0库编译环境搭建及配置
Pcl github库https://github.com/PointCloudLibrary/pcl官网地址https://pointclouds.org/Pcl exe的下载地址,各个版本,以及各版本对应的源码https://github.com/PointCloudLibrary/pcl/releases源码需要编译,编译之前安装AllInOne的exe程序&…...
Idea工具单工程使用卡顿设置
一、开启Idea内存占比指示 1.1、勾选Idea 内存指示器 1.2、右下角展示当前项目:内存/总内存(726/1024MB) 二、修改Idea自定义内存 2.1、打开help - Edit Custom VM Options 2.2、自定义虚拟内存设置 -Xms1024m // 初始内存分…...
Android 9.0 Camera2退出时屏幕旋转为横屏
1.概述 在9.0的系统rom定制化中,由于是大屏幕产品,所以系统屏幕是默认横屏的,但是在Camera2是竖屏的app,所以会在进入Camera2相机时变成竖屏,退出相机时,还是竖屏, 对于横屏的机器来说不太符合要求,所以要求在退出相机时,旋转为横屏,这就需要知道哪个api监听Camera2 退…...
【云原生】rancher2.6部署MySQL—2023.03
文章目录概要1. 准备NFS服务器1.1 安装nfs1.2 创建挂载路径1.3 启动NFS服务2. 所有node节点上安装NFS服务3. rancher上部署MySQL3.1 创建PV3.2 创建PVC3.3 创建服务发现3.4 部署MySQL服务4. 测试概要 本文以单master节点为例,部署mysql,多master&#x…...
行测-判断推理-图形推理-样式规律-空间重构-立体拼合
有凸必有凹,排除A CD显然不对选BA和4能组成长方体B和3能组成长方体C和1能组成长方体选D这两个东西应该在同一侧,排除A C中间应该要由凸起,排除D选B图1向左旋转90图2逆时针旋转90选A...
细说蛮力法(一)
细说蛮力法(一)蛮力法百元买百鸡传统暴力枚举减少无用枚举最优解法蛮力法 蛮力法通常在算法题中经常用到,也称为暴力枚举,其核心为遍历,即通过列举所有可能的情况,从而得到合适的解。从人的思维角度来看&am…...
关于推荐系统的详细介绍
简介推荐系统是一种信息过滤系统,能够自动预测用户对特定产品或服务的偏好,并向其提供个性化的推荐。它通常基于用户的历史行为、个人喜好、兴趣和偏好等,通过数据挖掘和机器学习算法,在大数据的支持下生成个性化的推荐内容&#…...
leetCode刷题笔记
文章目录1. 把两个有序链表整合成一个新的有序列表2. 两数之和3. 有效括号的字符串1. 把两个有序链表整合成一个新的有序列表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 package com.example.demo.main.Domain; impo…...
数学小课堂:数学和哲学的互动关系(自洽的哲学思想受益于数学思维)
文章目录 引言I 数学是“有底”的学问(止于公理)II 数学对哲学的影响2.1 哲学思想受益于数学思维2.2 笛卡尔的贡献2.3 莱布尼茨的哲学思想III 哲学对数学的影响引言 数学和科学各个分支之间在方法上却具有相通性和普适性,这些通用的方法常常让很多学科同时受益,依靠数学逻…...
大聪明教你学Java | 带你了解 Redis 的三种集群模式
前言 🍊作者简介: 不肯过江东丶,一个来自二线城市的程序员,致力于用“猥琐”办法解决繁琐问题,让复杂的问题变得通俗易懂。 🍊支持作者: 点赞👍、关注💖、留言Ǵ…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement
Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...
渗透实战PortSwigger靶场:lab13存储型DOM XSS详解
进来是需要留言的,先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码,输入的<>当成字符串处理回显到页面中,看来只是把用户输…...
C# winform教程(二)----checkbox
一、作用 提供一个用户选择或者不选的状态,这是一个可以多选的控件。 二、属性 其实功能大差不差,除了特殊的几个外,与button基本相同,所有说几个独有的 checkbox属性 名称内容含义appearance控件外观可以变成按钮形状checkali…...
Java数组Arrays操作全攻略
Arrays类的概述 Java中的Arrays类位于java.util包中,提供了一系列静态方法用于操作数组(如排序、搜索、填充、比较等)。这些方法适用于基本类型数组和对象数组。 常用成员方法及代码示例 排序(sort) 对数组进行升序…...
