当前位置: 首页 > news >正文

学习 UE5 的一些前置操作总结

随着 Unity, Godot 这些引擎都玩抽象,主动捅自己一刀后,UE5 的风头不可谓不盛,本着多学一点免得失业的思路方针,咱也研究了一下 UE5 引擎,然后发现想要开始使用 UE5 ,包含了很多前置操作,这里总结出来,方便后来人。

1,修改 Epic 启动器的缓存目录,如果不改的话,默认都丢 C 盘,撑爆你的 C 盘。

这个简单,打开设置,拉倒底下就是了。

2,修改引擎的默认缓存目录。

首先是把已有的缓存删掉,在这个目录,删掉里面的所有文件即可。

C:\Users\xx(这里是你的用户名)\AppData\Local\UnrealEngine\Common\DerivedDataCache

打开引擎2进制文件的所在目录,然后继续进入,并打开文件

引擎版本\Engine\Config\BaseEngine.ini

把其中的 ENGINEVERSIONAGNOSTICUSERDIR%DerivedDataCache 替换为 

GAMEDIR%DerivedDataCache

把缓存目录改为本地,其实所有的 ENGINEVERSIONAGNOSTICUSERDIR 都可以改到 GAMEDIR

3,最好是创建一个 C++ 项目,可以方便我们的后续修改和扩展,当然你创建纯蓝图项目也无所谓。

C++ 项目可以通过工具底下的选项刷新 VS 项目,也可以用来打开 VS 项目。

如果你创建的是 C++ 项目,则可以为引擎安装一个整合工具插件。

4,我们打开项目后,如果显卡不是太好的话,屏幕上可能会显示 Video memory has been exhausted,这是因为 UE5 默认使用的图形 API 是 DX12。

我门先打开项目设置

搜索 default RHI ,并修改为 DX11,需要你重启编辑器,并重新编译着色器(挺久)。

重启回来后,就不会再报那个错误了。

5,打开我们的 VS 项目,随便打开一个文件,它应该会弹出一个工具窗口,如图:

刷新总配置,应该能看到命名约定检查器和 HLSL 支持有警告,按提示需要产生2个配置文件。

首先生成目录不用换,直接选择在项目的根目录就可以。

shadertoolsconfig.json 里面用默认就可以。

.editorconfig 里粘贴以下代码,检查应该就都可以通过了,就是全绿状态了。

[*.{cpp,h}]# Naming convention rules (note: currently need to be ordered from more to less specific)cpp_naming_rule.aactor_prefixed.symbols                    = aactor_class
cpp_naming_rule.aactor_prefixed.style                      = aactor_stylecpp_naming_rule.swidget_prefixed.symbols                   = swidget_class
cpp_naming_rule.swidget_prefixed.style                     = swidget_stylecpp_naming_rule.uobject_prefixed.symbols                   = uobject_class
cpp_naming_rule.uobject_prefixed.style                     = uobject_stylecpp_naming_rule.booleans_prefixed.symbols                 = boolean_vars
cpp_naming_rule.booleans_prefixed.style                   = boolean_stylecpp_naming_rule.structs_prefixed.symbols                   = structs
cpp_naming_rule.structs_prefixed.style                     = unreal_engine_structscpp_naming_rule.enums_prefixed.symbols                     = enums
cpp_naming_rule.enums_prefixed.style                       = unreal_engine_enumscpp_naming_rule.templates_prefixed.symbols                 = templates
cpp_naming_rule.templates_prefixed.style                   = unreal_engine_templatescpp_naming_rule.general_names.symbols                      = all_symbols
cpp_naming_rule.general_names.style                        = unreal_engine_default# Naming convention symbols         cpp_naming_symbols.aactor_class.applicable_kinds           = class
cpp_naming_symbols.aactor_class.applicable_type            = AActorcpp_naming_symbols.swidget_class.applicable_kinds          = class
cpp_naming_symbols.swidget_class.applicable_type           = SWidgetcpp_naming_symbols.uobject_class.applicable_kinds          = class
cpp_naming_symbols.uobject_class.applicable_type           = UObjectcpp_naming_symbols.boolean_vars.applicable_kinds          = local,parameter,field
cpp_naming_symbols.boolean_vars.applicable_type           = boolcpp_naming_symbols.enums.applicable_kinds                  = enumcpp_naming_symbols.templates.applicable_kinds              = template_classcpp_naming_symbols.structs.applicable_kinds                = structcpp_naming_symbols.all_symbols.applicable_kinds            = *# Naming convention stylescpp_naming_style.unreal_engine_default.capitalization      = pascal_case
cpp_naming_style.unreal_engine_default.required_prefix     =
cpp_naming_style.unreal_engine_default.required_suffix     =
cpp_naming_style.unreal_engine_default.word_separator      =cpp_naming_style.unreal_engine_enums.capitalization        = pascal_case
cpp_naming_style.unreal_engine_enums.required_prefix       = E
cpp_naming_style.unreal_engine_enums.required_suffix       =
cpp_naming_style.unreal_engine_enums.word_separator        =cpp_naming_style.unreal_engine_templates.capitalization    = pascal_case
cpp_naming_style.unreal_engine_templates.required_prefix   = T
cpp_naming_style.unreal_engine_templates.required_suffix   =
cpp_naming_style.unreal_engine_templates.word_separator    =cpp_naming_style.unreal_engine_structs.capitalization      = pascal_case
cpp_naming_style.unreal_engine_structs.required_prefix     = F
cpp_naming_style.unreal_engine_structs.required_suffix     =
cpp_naming_style.unreal_engine_structs.word_separator      =cpp_naming_style.uobject_style.capitalization              = pascal_case
cpp_naming_style.uobject_style.required_prefix             = U
cpp_naming_style.uobject_style.required_suffix             =
cpp_naming_style.uobject_style.word_separator              =cpp_naming_style.aactor_style.capitalization               = pascal_case
cpp_naming_style.aactor_style.required_prefix              = A
cpp_naming_style.aactor_style.required_suffix              =
cpp_naming_style.aactor_style.word_separator               =cpp_naming_style.swidget_style.capitalization              = pascal_case
cpp_naming_style.swidget_style.required_prefix             = S
cpp_naming_style.swidget_style.required_suffix             =
cpp_naming_style.swidget_style.word_separator              =cpp_naming_style.boolean_style.capitalization              = pascal_case
cpp_naming_style.boolean_style.required_prefix             = b
cpp_naming_style.boolean_style.required_suffix             =
cpp_naming_style.boolean_style.word_separator              =

完成前面的一大串操作后,我们应该就可以开始正经的游戏开发了,UE5 的前摇动作是真滴长~

相关文章:

学习 UE5 的一些前置操作总结

随着 Unity, Godot 这些引擎都玩抽象,主动捅自己一刀后,UE5 的风头不可谓不盛,本着多学一点免得失业的思路方针,咱也研究了一下 UE5 引擎,然后发现想要开始使用 UE5 ,包含了很多前置操作,这里总…...

C#/.NET/.NET Core技术前沿周刊 | 第 10 期(2024年10.14-10.20)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。 欢迎投稿、推荐…...

Git 基本配置

目录 打开 Git Bash设置用户信息查看配置信息修改电脑名字为常用指令配置别名打开用户目录,创建 .bashrc 文件在 .bashrc 文件中输入如下内容:打开gitBash,执行 source ~/.bashrc 解决GitBash乱码问题打开GitBash执行下面命令${git_home}/etc…...

理工科考研想考计算机,湖南大学、重大、哈工大威海、山东大学,该如何选择?

C哥专业提供——计软考研院校选择分析专业课备考指南规划 计算机对理工科同学来说,还是性价比很高的,具有很大的优势! 一、就业前景广阔 高需求行业 在当今数字化时代,计算机技术几乎渗透到了各个领域,无论是互联网…...

使用langchain和大模型API提取QA的实战教程

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于大模型算法的研究与应用。曾担任百度千帆大模型比赛、BPAA算法大赛评委,编写微软OpenAI考试认证指导手册。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。授权多项发明专利。对机器学…...

Java面试场景题(1)---如何使用redis记录上亿用户连续登陆天数

感谢uu们的观看,话不多说开始~ 对于这个问题,我们需要先来了解一下~ 海量数据都可以用bitmap来存储,因为占得内存小,速度也很快 我大概计算了一下~ 完全够:String类型512M 1byte 8个bit位 8个状态 512M1024byt…...

Element UI

Element ui 就是基于vue的一个ui框架,该框架基于vue开发了很多相关组件,方便我们快速开发页面。 官网: https://element.eleme.io/#/zh-CN 安装Element UI vue init webpack element(项目名)确认项目是否构建成功:进入到项目的根路径 执行 npm start 访问 h…...

②PROFINET转ModbusTCP, EtherCAT/Ethernet/IP/Profinet/ModbusTCP协议互转工业串口网关

EtherCAT/Ethernet/IP/Profinet/ModbusTCP协议互转工业串口网关https://item.taobao.com/item.htm?ftt&id822721028899 协议转换通信网关 PROFINET 转 Modbus TCP (接上一章) 配置使用 与 PROFINET 主站进行组态说明 这里介绍与西门子 PLC 的…...

python+Mosh网课笔记04

太久没写python代码了,学机器学习重新拾起python,笔记比较简陋。 参考:mosh python网课 一、导入同一文件夹下其他文件 first.py def swim():print("swim")def run():print("run")同一个文件夹下的second.py from f…...

【微服务】全面构建微服务监控体系:确保系统稳定与性能优化的关键

目录 引言一、微服务监控概述1.1 微服务监控的定义1.2 微服务监控的重要性1.3 监控的核心目标1.4 微服务监控的关键指标1.5 监控的策略 二、微服务监控的架构2.1 监控架构图2.2 架构组件2.3 监控架构示意图 三、微服务监控的工具3.1 工具概述3.2 Prometheus3.3 Grafana3.4 ELK …...

Gin框架操作指南08:日志与安全

官方文档地址(中文):https://gin-gonic.com/zh-cn/docs/ 注:本教程采用工作区机制,所以一个项目下载了Gin框架,其余项目就无需重复下载,想了解的读者可阅读第一节:Gin操作指南&#…...

鸿蒙系统 VS 安卓系统,谁将引领未来移动操作系统?

文章目录 1. 系统架构:微内核 vs 宏内核2. 设备生态:单设备 vs 全场景分布式3. 开发生态:安卓主导地位 vs 鸿蒙迅速崛起4. 性能与流畅度:安卓优化 vs 鸿蒙调度优势5. 安全性:Google 主导 vs 微内核高安全6. 市场影响力…...

PyTorch 中 functional.py 文件介绍

PyTorch PyTorch 是一个开源的机器学习库,广泛用于计算机视觉和自然语言处理等应用。它由 Facebook 的人工智能研究团队开发,并得到了许多研究机构和企业的支持。PyTorch 以其易用性、灵活性和强大的社区支持而受到欢迎。一些特点如下: 动态…...

SQL Injection | SQL 注入 —— 报错盲注

关注这个漏洞的其他相关笔记:SQL 注入漏洞 - 学习手册-CSDN博客 0x01:报错盲注 —— 理论篇 报错盲注(Error-Based Blind SQL Injection)是一种常见的 SQL 注入技术,适用于那些页面不会直接显示后端处理结果的查询方式…...

网络通信与并发编程(四)操作系统、进程理论、开启进程的两种方式

多道技术、进程理论 文章目录 多道技术、进程理论一、操作系统1.1操作系统1.2操作系统中的常见概念1.3操作系统的发展史 二、进程理论2.1同步、异步、阻塞、非阻塞2.2 进程的层次结构2.3 运行态、阻塞态、就绪态 三、开启进程的两种方式3.1使用Process创建进程的两种方式3.2 父…...

Java--集合(三)之vectorlinkedlisthashset结构

文章目录 0.架构图1.vector解析2.LinkedList分析2.1源码分析2.2迭代器遍历的三种方式 3.set接口的使用方法3.1基本使用说明3.2基本遍历方式3.3HashSet引入3.4数组链表模拟3.5hashset扩容机制3.6hashset源码解读3.7扩容*转成红黑树机制**我的理解 0.架构图 1.vector解析 和之前介…...

upload-labs Pass-04

upload-labs Pass-04 在进行测试前,先了解一下.htaccess文件 .htaccess文件 .htaccess是Apache网络服务器一个配置文件,当.htaccess文件被放置在一个通过Apache Web服务器加载的目录中,.htaccess文件会被Apache Web服务器软件检测并执行&…...

如何修改jupyter notebook的工作目录

1.生成配置文件: 打开Anaconda Prompt,输入如下命令 jupyter notebook --generate-config 用代码可以找到配置文件位置,如果没有填y可以生成。 2.修改配置文件: 修改jupyter_notebook_config.py的配置文件,需将c.Not…...

23种设计模式具体实现方法

提示:文章 文章目录 前言一、背景二、设计模式1、代理模式2、适配器模式2.1 总结 三、3.1 总结 前言 前期疑问: 本文目标: 一、背景 最近 二、设计模式 1、代理模式 参考的这篇文章,代理模式(Proxy) 同时这篇文章还引用了另…...

cisco网络安全技术第3章测试及考试

测试 使用本地数据库保护设备访问(通过使用 AAA 中央服务器来解决)有什么缺点? 试题 1选择一项: 必须在每个设备上本地配置用户帐户,是一种不可扩展的身份验证解决方案。 请参见图示。AAA 状态消息的哪一部分可帮助…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

深入理解Optional:处理空指针异常

1. 使用Optional处理可能为空的集合 在Java开发中&#xff0c;集合判空是一个常见但容易出错的场景。传统方式虽然可行&#xff0c;但存在一些潜在问题&#xff1a; // 传统判空方式 if (!CollectionUtils.isEmpty(userInfoList)) {for (UserInfo userInfo : userInfoList) {…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...

《Docker》架构

文章目录 架构模式单机架构应用数据分离架构应用服务器集群架构读写分离/主从分离架构冷热分离架构垂直分库架构微服务架构容器编排架构什么是容器&#xff0c;docker&#xff0c;镜像&#xff0c;k8s 架构模式 单机架构 单机架构其实就是应用服务器和单机服务器都部署在同一…...

【UE5 C++】通过文件对话框获取选择文件的路径

目录 效果 步骤 源码 效果 步骤 1. 在“xxx.Build.cs”中添加需要使用的模块 &#xff0c;这里主要使用“DesktopPlatform”模块 2. 添加后闭UE编辑器&#xff0c;右键点击 .uproject 文件&#xff0c;选择 "Generate Visual Studio project files"&#xff0c;重…...

在 Visual Studio Code 中使用驭码 CodeRider 提升开发效率:以冒泡排序为例

目录 前言1 插件安装与配置1.1 安装驭码 CodeRider1.2 初始配置建议 2 示例代码&#xff1a;冒泡排序3 驭码 CodeRider 功能详解3.1 功能概览3.2 代码解释功能3.3 自动注释生成3.4 逻辑修改功能3.5 单元测试自动生成3.6 代码优化建议 4 驭码的实际应用建议5 常见问题与解决建议…...

node.js的初步学习

那什么是node.js呢&#xff1f; 和JavaScript又是什么关系呢&#xff1f; node.js 提供了 JavaScript的运行环境。当JavaScript作为后端开发语言来说&#xff0c; 需要在node.js的环境上进行当JavaScript作为前端开发语言来说&#xff0c;需要在浏览器的环境上进行 Node.js 可…...

【大模型】RankRAG:基于大模型的上下文排序与检索增强生成的统一框架

文章目录 A 论文出处B 背景B.1 背景介绍B.2 问题提出B.3 创新点 C 模型结构C.1 指令微调阶段C.2 排名与生成的总和指令微调阶段C.3 RankRAG推理&#xff1a;检索-重排-生成 D 实验设计E 个人总结 A 论文出处 论文题目&#xff1a;RankRAG&#xff1a;Unifying Context Ranking…...