【UE5】监控摄像头效果(下)

目录

效果

步骤

一、多摄像机视角切换

二、摄像头自动旋转巡视

三、摄像头跟踪拍摄


效果

步骤

一、多摄像机视角切换

1. 打开玩家控制器“MyPlayerController”,添加一个变量,命名为“BP_SecurityCameraArray”,类型为“BP_SecurityCamera”的对象引用且是数组类型

添加一个新函数,这里命名为“HasCamera”

该函数判断数组“BP_SecurityCameraArray”是否为空

添加一个整型变量,命名为“BP_SecurityCameraIndex”

添加两个新函数,分别命名为“NextCamera”和“PriviousCamera”,表示用于获取下一个/上一个的相机索引

函数“NextCamera”逻辑如下,判断当前的相机索引是否超过相机总数,如果超过了就返回第一个相机,没有就加1

函数“PriviousCamera”逻辑如下

添加一个新函数,命名为“SetViewTargetAsActiveCamera”,设置当前视图目标为当前相机索引对应的摄像机视角

2. 打开“BP_ThirdPersonCharacter”,新建一个宏,用来获取玩家控制器“MyPlayerControlller”的引用

在事件开始后就调用该宏

在按下F键后先调用函数“HasCamera”来获取场景中的“BP_SecurityCamera”对象,将其存储进数组。在按F键后设置“BP_SecurityCameraIndex”为0

通过Q键、E键切换视角为上一个/下一个相机

3. 在场景复制3个“BP_SecurityCamera”

此时效果如下,我们可以通过Q、E键来切换这三个摄像机的视角,通过F键让视角返回玩家

二、摄像头自动旋转巡视

为了实现摄像头在没有检测到目标时能够自动旋转巡视的功能,打开“BP_SecurityCamera”,在事件图表中添加如下节点

时间轴曲线如下,关键点分别为(0,0),(5,-45),(15,45),(20,0)

此时可以看到摄像头可以自动旋转巡视周围

三、摄像头跟踪拍摄

在“BP_SecurityCamera”中添加如下节点,先判断玩家和摄像头距离是否小于1000cm,如果是的话就让摄像机一直朝向玩家

当玩家没有处于1000cm范围内就启动自动旋转巡视

参考视频:

https://www.bilibili.com/video/BV1ZX4y1Y74y/?spm_id_from=333.999.0.0&vd_source=36a3e35639c44bb339f59760641390a8

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实验制备高纯酸PFA酸纯化器材质分析,SCH亚沸蒸馏器特点是什么

.酸纯化器:也称酸蒸馏器、高纯酸提取系统、酸纯化系统、亚沸腾蒸馏器、高纯酸蒸馏纯化器。常规实验室分析中,各种酸及试剂被广泛应用于日常的样品处理及分析中。那么应该选用什么材质的酸纯化器呢 氟塑料酸纯化器,提纯酸效果好,避…

2023年12月7日:QT实现登陆界面

#include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//窗口设置this->resize(600,500);//重新设置窗口大小this->setWindowTitle("QQ-盗版");//设置窗口名为QQ-盗版this->setWindowIcon(QIcon("D:\\Qt\\funny\\pi…

可以组成网络的服务器 - 华为OD统一考试(C卷)

OD统一考试(C卷) 分值: 200分 题解: Java / Python / C 题目描述 在一个机房中,服务器的位置标识在n*m的整数矩阵网格中,1表示单元格上有服务器,0表示没有。如果两台服务器位于同一行或者同一列…

Arrays.asList() 和 Collections.singletonList()

Arrays.asList() 和 Collections.singletonList() 概述 List 是我们使用Java时常用的集合类型。众所周知,我们可以轻松地在一行中初始化列表。例如,当我们想要初始化一个只有一个元素的List时,我们可以使用Arrays.asList(&#…

nodejs微信小程序+python+PHP基于spark的酒店管理系统-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

如何有效利用餐厅预约小程序推广餐厅品牌

随着餐饮行业竞争的加剧,餐厅订座预约成为了吸引顾客的一种重要方式。而微信小程序作为移动互联网的重要入口之一,为餐厅提供了一个方便快捷的预约平台。本文将介绍如何使用乔拓云平台等第三方小程序制作平台来开发餐厅订座预约微信小程序。 首先&#x…

利用python将data:image/jpg; base64,格式数据转化下载为图片

在做爬虫爬取图片时,发现有的图片url是用“data:image/jpg;base64” 开头的,例如下图 部分开头样式如下: 1、data:image/jpg; base64, 2、data:image/png; base64, 3、data:image/webp;base64, 利用python进行代码进行图片下载,…

Python基础期末复习 新手 2

虽然age 10在__init__方法中定义了一个局部变量age,但这个局部变量并不会影响类属性age的值。类属性是在类级别上定义的,不属于任何一个实例。因此,在创建实例s1和s2时,它们的age属性值都为类属性的初始值0。 尽管对类的属性值进…

云原生的 CI/CD 框架tekton - Trigger(二)

上一篇为大家详细介绍了tekton - pipeline,由于里面涉及到的概念比较多,因此需要好好消化下。同样,今天在特别为大家分享下tekton - Trigger以及案例演示,希望可以给大家提供一种思路哈。 文章目录 1. Tekton Trigger2. 工作流程3…

Redis HyperLogLog 数据结构模型统计

HyperLogLog HyperLogLog 不是一种新的数据结构 , 本质上是字符串类型。 是一种基数算法。 通过 HyperLogLog 可以节省内存空间,并完成独立总数的统计。 HyperLogLog 数据结构可用于仅使用少量恒定内存来计算集合中的唯一元素,具体而言&…

el-table的复选框占满全格

el-table的复选框格子很小每次点击都点不到&#xff0c;又不想设置行点击&#xff0c;因为每次复制内容都会选中&#xff0c;实现效果是点击el-table的复选框单元格就可以选中 <template><div style"width: 60vw; margin: 10px;"><el-table :data&quo…

OpenAI承认GPT-4变懒,即将发布修复方案提升性能

目录 1OpenAI承认GPT-4变懒&#xff0c;即将发布修复方案提升性能 2一文秒懂人工智能全球近况 1OpenAI承认GPT-4变懒&#xff0c;即将发布修复方案提升性能 **划重点:** 1. &#x1f92f; 用户反馈:GPT-4使用者抱怨OpenAI破坏了体验&#xff0c;称模型几乎“害怕”提供答案。…