Calmer的文章

  • 首页
  • 文章归档
  • 关于页面

  • 搜索
体验游戏 笔记 推荐 工具链 工具使用 小游戏 插件 UI 软件 教程

UE5问题记录(一)

发表于 2022-05-30 | 分类于 游戏开发 | 0 | 阅读次数 1292

前言

以下笔者在练习使用UE5从0-1开发一款图片软件过程中所遇到的问题,说起来简单,但是依旧能在练习过程中学到一些新的知识,或者曾经模糊的知识,以此加以巩固。


遭遇问题

1.使用UE5如何设置打包?

UE5的打包设置并不困难,只是需要耐心一些解决一些JDK和NDK兼容的问题,可能最新的版本的会导致打包不过。
image.png
参考链接:
https://docs.unrealengine.com/4.27/zh-CN/SharingAndReleasing/Mobile/Android/PackagingAndroidProject/

2.UE5怎么将APP设置为竖屏?

image.png

3.如何设计PanelManager,使用C++还是蓝图?

本次PanelManager就设为一个Actor,因为不涉及到场景的切换,所以直接拖放一个到场景中作为单例使用,当然也可以参考StreamManager封装成单例来使用。
image.png

image.png

4.PanelManager应该放在哪里可以方便调用?

本次是拖放到场景中,然后使用静态蓝图方法封装一个Get
image.png
因为BP_Instance的时序要更早,所以初始化是放在场景中BP_Main进行统一初始化
image.png

5.如何设置光标可见?

image.png

6.UE5项目需要拷贝,需要移植那几个文件夹?

image.png
如果有插件的,还需要选择插件目录
image.png
不过最好的是去掉插件里的构建文件夹,否则会文件会很大

7.如何在蓝图中加载数据表(DataTable)?

image.png

8.遇到结构体无法在蓝图中展开?

需要注意几点:

  • 该结构是否标记为蓝图类型
  • 该结构中的字段是否标记为UPROPERY,且要设置为BlueprintReadWrite和EditAnywhere
  • 该结构中的字段是否能被蓝图支持
    image.png

9.UE5中怎么实现单例?

  • SubSystem
  • GCObject
  • UObject放GameInstance
    可以参考官方StreamableManager的实现
    image.png

10.UFUNCTION,UPROPERY的使用方法?

可以参考官方
https://docs.unrealengine.com/4.26/zh-CN/ProgrammingAndScripting/GameplayArchitecture/Properties/
以及大象无形书籍里的第五章
image.png

11.LoadDynamicTexture怎么实现异步加载?

本例的实现方式:单独开一个线程,该线程负责IO和解码等运算,然后将颜色值返回到主线程,使用Tick进行Spawn相关的UObject。

12.UE5在cpp使用插件蓝图库文件报错?

报错:
image.png
解决前:
image.png
解决后:
image.png

需要在对应的蓝图库前补上模块名

13.UE5中的委托

单播动态委托可以用于蓝图传参,
但是多播动态委托不能用于蓝图传参,不过可以参考引擎源码中的DownloadImage的在蓝图中的使用方法。
参考链接:
https://www.bilibili.com/read/cv9602026

14.UE5怎么打包图集?

使用TexturePacker

15.UE5中加载资源的几种方法

LoadObject(加载非蓝图资源)
LoadClass(加载蓝图资源)
StreamManager

16.避免与解决UE5一启动就崩溃的Engine.ini配置方法。

image.png
image.png
本次真实的情形:
真实崩溃的原因是因为在ResourceManager里声明初始变量直接进行了赋值,但是这里的引用其实还没有被加载。
注意:单例不能在声明变量时直接初始化,因为在编辑器可能时加载了,但是打到包可能没有加载就会产生闪退。

一般崩溃的时候会把崩溃信息复制进粘贴板,只需要找一个文本粘贴即可。

17.为什么在UE5中无法播放视频?

  • 可能是编码的问题
  • 可能是RHI的问题
    image.png
    本次的解决方案是将DX12改为DX11就可以解决了

18.UE5如何遍历枚举类型?

image.png

19.怎么获取视频的分辨率大小?

image.png
使用GetVideoTrackDimensions,不过需要Delay,也就是视频要完全加载完毕,才能获取到正确的值。

20.UE5中的定时器

UKismetSystemLibrary::K2_SetTimerDelegate
image.png

21.怎么把Obb文件打入包里?

image.png

  • 本文作者: Calmer
  • 本文链接: https://mytechplayer.com/archives/ue5问题记录一
  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
# 笔记
自动插入键值对代码(用于性能分析埋点分析时可以批量快速埋点)
UE4性能优化工具和经验
  • 文章目录
  • 站点概览
Calmer

Calmer

88 日志
7 分类
10 标签
RSS
Creative Commons
0%
© 2020 — 2025 Calmer
由 Halo 强力驱动
蜀ICP备20010026号-1川公网安备51019002006543
Copyright © 2020-2025 Calmer的文章