VR项目优化设置
在创建针对特定VR平台的新项目时,请在 游戏(Games) 类别下选择 虚拟现实应用(VR Template)。VR模板提供了在虚幻引擎5中开发VR项目所需要的初始内容。 如果不想使用VR模板,可以用以下设置,新建一个空白C++或蓝图项目。 质量预设:可缩放 光线追踪:禁用 初学者内容:禁用 这些设置会创建一个虚幻引擎项目,并启用最少的渲染功能。这样可以确保项目一开始就有良好的帧率,你只要添加需要的渲染功能即可。 在创建项目后,设置以下项目设置,以改善应用的性能: 进入 编辑 > 项目设置 > 描述,并启用 以VR启动。 在 编辑 > 项目设置 > 渲染 >前向渲染器 中,启用前向着色。 在 编辑 > 项目设置 > 渲染 > 默认设置 中,将 抗锯齿方法 设置为多重采样抗锯齿。 在 编辑 > 项目设置 > 渲染(Rendering)> VR 中,启用实例化立体。 * 对于移动设备VR体验,在 编辑 > 项目设置 > 渲染 > VR(Edit > Project Settings...
window下的qt5.14.2配置vs2022
已知qt5.14.2和vs202不兼容,无法自动扫描到vs的编译器。但由于团队协作原因,必须使用qt5.14.2,并且第三方库又依赖vs2022。其实qt5.15.2是支持vs2022的,如果能够用qt5.15.2,还是建议使用qt5.15.2及以上。如果换不了,那看下面吧。 首先可以下载qt5.14.2版本和vs2022,安装包如下: 通过网盘分享的文件:qt-opensource-windows-x86-5.14.2.exe 链接: https://pan.baidu.com/s/1XK0vaVbik5XOPpQ63H0\_dg 提取码: nhxy 通过网盘分享的文件:VisualStudioSetup.exe 链接: https://pan.baidu.com/s/1NlhvO8QjMukXGh8qS2W68Q 提取码: dt4y 其中vs安装的工具集和Windows SDK安装选择如下(为了方便后面可能会用到不同版本,我基本都安装了) 上面安装完之后就需要在qt...
【UE5 C++】C++代码调用蓝图方法或事件
此方法为:先创建C++类MyTest,再以MyTest类为父类创建蓝图;在其他类中,可以通过MyTest调用蓝图对应方法。 1.创建c++代码 通过UE创建继承自Actor的C++代码 2.添加可以在UE中重写方法的说明 需使用声明:UFUNCTION(BlueprintNativeEvent, BlueprintCallable) BlueprintNativeEvent表示在 c++ 中定义事件,可以在UE中实现,c++ 中必须实现。 如果UE中实现了,则覆盖c++中逻辑。 BlueprintCallable 表示可以在蓝图中调用。 完整代码 .h文件: 12345public://添加可以在UE中重写方法UFUNCTION(BlueprintNativeEvent, BlueprintCallable)void Play(int num);virtual void Play_Implementation(int num); .cpp文件增加方法: 123void AMyTest::Play_Implementation(int...
UE5 蓝图调用C++函数方式
本文要记录两种方式蓝图调用C++函数: 一、蓝图调用Actor类的函数 1.1 创建一个基于Actor类: 1.2 创建后,内容浏览器中添加C++类,并自动打开VS 在新建的类下添加如下代码: 代码的方法为获取本机IP .h 代码如下: 1234567891011121314151617181920212223242526#pragma once#include "CoreMinimal.h"#include "GameFramework/Actor.h"#include "MyActor.generated.h"UCLASS()class C_MP_LOBBY_API AMyActor : public AActor{ GENERATED_BODY() public: // Sets default values for this actor's properties AMyActor();protected: // Called when the game starts or...
UE5判断当前是否为VR环境
在Unreal Engine 5 (UE5) 中,如果想判断当前场景是否处于虚拟现实(VR)模式,可以使用几种不同的方法来实现这一功能。 以下是一些常见的方法: 使用 GEngine 和 GIsEditor 使用 FVRPluginFunctionLibrary 使用 IModularFeatures 和 FVRPlugin 使用蓝图(Blueprint) 第一种方法:使用 GEngine 和 GIsEditor 可以通过检查 GEngine 的 IsStereoscopicPass 函数或者使用 GIsEditor 来判断是否处于 VR 模式。这种方法通常在运行时使用。 1.创建一个基于蓝图函数库的C++类(MyBlueprintFunctionLibrary) 过程参照 UE5 蓝图调用C++函数方式 文章 2.在 XXX.Build.cs 文件中添加模块依赖 12345678PublicDependencyModuleNames.AddRange(new string[]{ "Core", ...
UE给场景添加VR组件进行虚拟漫游
将ue5工程,添加VR组件进行虚拟漫游,步骤如下; 1.添加VR虚拟现实库 添加后,内容浏览器中会多出VRSpectator和VRTemplate两个目录 另外,确认插件是否启用了openxr插件。 2.添加VR摄像头(VRPawn) 将VRTemplate目录的Blueprints目录下中VRPawn拖到场景中,并调整位置。 3.项目设置中以VR启动 4.安装并打开SteamVR软件进行设置 启动SteamVR桌面客户端 打开 设置 -> 开发者 查看“当前 OpenXR Runtime“状态 若不是 SteamVR,点击【设置为OpenXR Runtime】 最后,UE5启动时,以VR预览的方式启动即可。 参考资料:https://www.bilibili.com/video/BV1yM4y177dv/?vd_source=16559409b3ad61518421a045daa8639d
UE场景光照变桔黄Nanite缺失项目设置问题
今天新建虚幻引擎项目时 , 编辑器右下角收到这个提示 , 缺失项目设置! 使用Nanite资产需要Shader Model 6(SM6)。请在此启用: 项目设置-> 平台-> Windows->D3D12目标着色器格式如未启用,Nanite资产将无法正常显示。 并且打开场景时,场景光照变桔黄: 如何解决呢? 很简单 编辑 - 项目设置 - 平台 - Windows D3D12 Targeted Shader Formats 开启 SM6 目标RHI 设置成 DirectX 12 那么用UE5做游戏到底要不要开Nanite? 还是那句话 , 能开尽量开 ,...
UE5 局域网联机,寻找会话失败
1.关闭防火墙 2.在【项目名.Build.cs】脚本中添加该行,添加后关闭编辑器,重新生成解决方案。 3.检查是否在同一个C类子网 一般是存在多块网卡(安装虚拟机)或是启用了Hyper-V,先禁用网卡或关闭Hyper-V。 安装VMware会自动添加VMware Network Adapter VMnet1和VMware Network Adapter VMnet8网卡。 安装VirtualBox会自动添加VirtualBox Host-Only Ethernet Adapter网卡。 安装Hyper-V会自动添加Hyper-V Virtual Ethernet Adapter网卡。 详细参考 https://forums.unrealengine.com/t/cant-find-session-in-lan/375836/12 参考资料: 1.Can’t find session in LAN - Programming & Scripting / Multiplayer & Networking - Epic Developer...
UE Gameplay 框架总结
本文介绍了游戏开发中几个重要的概念:GameInstance用于保存临时全局数据,GameMode管理游戏规则和类信息,DefaultPawn提供基础操作,PlayerController连接客户端与服务器,以及GameState和PlayerState负责全局数据管理和玩家状态同步。 各个模块 GameInstance(游戏实例) 实例里的数据不会随着关卡的切换而消失。 作用是为游戏保存临时的全局数据(并不是所有的全局变量都存在GameInstance中,如玩家的信息应该存在PlayerState,游戏的一些信息存在GameState),或者自定义需要在全局使用的逻辑(慎重,GameInstance 的臃肿会导致卡顿)。 通常情况下一个Game中应该只有一个GameInstance(UE也是提供了多个GameInstance协同的扩展的,但是一次Game只能有一个GameInstance生效) GameInstance的生命周期就是从游戏进程启动到游戏进程结束 ...
MySQL5.6-5.7-8.0版本授权用户远程连接
修改配置文件 找到 MySQL 的配置文件 my.cnf(或 my.ini),通常位于 /etc/mysql/ 或者 /etc/my.cnf,使用文本编辑器打开文件,找到 [mysqld] 部分,添加如下内容: bind-address = 0.0.0.0 这将允许所有 IP 地址的连接,如果你想限制只允许特定 IP 地址连接,可以将 0.0.0.0 替换为特定的 IP 地址。 MySQL5.6版本 1mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION; MySQL5.7版本 12mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456';mysql> flush...











