首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
ue4 FAutoDeleteAsyncTask崩溃
2024-11-09
【UE4 C++ 基础知识】<14> 多线程——AsyncTask
概念 AsyncTask AsyncTask 系统是一套基于线程池的异步任务处理系统.每创建一个AsyncTas,都会被加入到线程池中进行执行 AsyncTask 泛指 FAsyncTask 和 FAutoDeleteAsyncTask,一般声明为友元函数,FNonAbandonableTask 派生类作为模板 FNonAbandonableTask 是要继承的基类,不可被终止的任务,可以看作是任务执行体的抽象 FAsyncTask 模板类 DoWork() 实现具体任务,自定义类作为模板参数
[UE4]崩溃的原因收录
UTool tool; 这样声明可以编译通过,但是UE4 Editor会直接崩溃. 应该改成这样: UTool* tool;
修复UE4编辑器,ClearLog操作导致的崩溃
UE4 4.24.3版本,编辑器Output Log窗口中,右键--Clear Log操作很大概率会导致编辑器奔溃:解决办法: 相关文件: Engine\Source\Developer\OutputLog\Private\SOutputLog.cpp Engine\Source\Developer\OutputLog\Private\SOutputLog.h SOutputLog.h文件中添加: bool bNeedClearLog; void DoClearLog(); SOutputLog
《Exploring in UE4》多线程机制详解[原理分析]
转自:https://zhuanlan.zhihu.com/c_164452593 目录一.概述二."标准"多线程三.AsyncTask系统3.1 FQueuedThreadPool线程池3.2 Asyntask与IQueuedWork3.3 其他相关技术细节四.TaskGraph系统4.1 从Tick函数谈起4.2 TaskGraph系统中的任务与线程4.3 TaskGraph系统中的任务与事件4.4 其他相关技术细节五.总结 一.概述 多线程是优化项目性能的重要方式之一,游戏也不例
《Inside UE4》-1-基础概念
<Inside UE4>-1-基础概念 InsideUE4 创建测试项目 接上文的准备工作,双击生成的UE4Editor.exe,选择创建测试C++空项目Hello(以后的源码分析都会基于该最简单的项目) 项目文件结构 VS项目和文件目录: 可以看到,Config目录里带着3个最主要的配置,Editor,Engine,Game.代码方面自动生成了用于编译系统的3个.cs文件,C++代码方面生成了一个Hello "Game Module",和HelloGameMo
UE4.7的IOS发布和调试的相关问题
UE4.7以后正式源码免费了,正好最近工作也在做这部分,ue4的官方文档虽然有一部分ios平台的资料,那也只是通过编辑器来发布或预览一类,但手游程序员都知道,一些cpu和gpu性能上的调试是在所难免的,所以还是有必要通过Xcode来真机运行的.这点U3D还是比UE4体贴多了,发布时就自动生成Xcode的工程了,而UE4这方面的资料官方还是没有一个合理的流程或文档.这里就分享下我在4.7时的流程和遇到问题的解决方法吧. 首先你要从github或其他地方下载ue4的源码,如果是githu
UE4/Unity3D中同时捕获多高清摄像头的高效插件
本文主要讲实现过程的一些坑. 先说下要实现的目标,主要功能在UE4/Unity中都要用,能同时捕获多个摄像头,并且捕获的图片要达到1080p25桢上,并且需要经过复杂的图片处理后丢给UE4/Unity3D,并且要CPU要占用小,以便在UE4/Unity有大的余地做更多的事件. 市面上一般1080p后的摄像头,在20桢以上都不会提供原生的rgba32数据,一般常见的有压缩格式mjpg,末压缩的一般是nv12,牛点的会提供yuv2,正常的实现会把内存流里的数据提供给对应的UE4/Unity3D,然后
UE4命令行使用,解释
命令行在外部 从命令行运行编辑项目 1 导航到您的[LauncherInstall][VersionNumber]\Engine\Binaries\Win64 目录中. 2 右键单击上 UE4Editor.exe 的可执行文件,并选择创建快捷方式. 3 重命名该快捷方式,它会启动编辑器,即 MyProject 的- Editor.exe. 4 右键单击新创建的快捷方式并选择属性. 5 加入项目文件参数属性: [LauncherInstall][VersionNumber]\Engine\Bina
深入浅出UE4网络
UE4中的官方文档结构比较混乱,且有部分错误,不方便学习.笔者试图通过本文,整理出一篇关于UE4网络的文章,方便朋友们对UE4中的网络同步部分的认识,并有进一步理解.如有讲得不清楚明白的地方,还望批评指正.如需转载请注明出处,http://www.cnblogs.com/Leonhard-/p/6511821.html,这是对作者最起码的尊重,谢谢大家. 本文的结构如下: 一.UE4网络综述 二.UE4中的几种同步方式 1.Actor Replication 2.Property Replica
UE4 C++ Tips
篇写的是关于UE4的C++方面的小技巧: 1.在构造函数里 //构建组件 RootComponent = CreateDefaultSubobject<USceneComponent>(TEXT("RootComponent")); Camera = CreateDefaultSubobject<UCameraComponent>(TEXT("Camera")); //把组件放到其它组件下 VRCamera->SetupAttachme
[UE4]一个好用的虚幻4插件,根据资源名称动态加载资源,GetCurrentLeveName(获得当前地图名称)
下载地址 一.下载与UE4相对应的版本 二.在工程根目录新建Plugins目录,解压插件. 三.如果工程已经打开,则需要重新打开 四.重新打开工程后,右下角会有提示有新插件可用. 五.这个插件提供了很多常用的方法.作者也会随着虚幻4版本的更新而更新. 六.如果这里的spawnObject放在Event Pre Construct事件,拖放本UI到其他UI就会出现UE4崩溃,不知道是什么原因 七.根据资源名称动态加载资源 已经实现了动态加载小地图的图片,再把Map Ratio(比例尺)和Cen
UE4 框架
转自:http://www.cnblogs.com/NEOCSL/p/4059841.html 有很多人是从UE3 接触到Unreal,如果你也对UE3非常了解,便能很快的上手UE4.但是,UE4的开发模式还是有所不同的. 1.谈谈过往,UE1和UE2. 我知道在那个时候咱们一样挥霍美好的童年在玩游戏而不是做游戏,当然做游戏更挥霍你的青春XD UE1和UE2是为FPS设计的,使用UnrealScript来进行编程.说实话UnrealScript是最好的学习面向对象编程的语言. 2.UE3 添加了
UE4蓝图与C++交互——射击游戏中多武器系统的实现
回顾 学习UE4已有近2周的时间,跟着数天学院"UE4游戏开发"课程的学习,已经完成了UE4蓝图方面比较基础性的学习.通过UE4蓝图的开发,我实现了类似CS的单人版射击游戏,效果如下视频: 不得不说UE4蓝图功能的强大,无需写一句代码,就能实现一个基本的游戏玩法.并且使用门槛极低,只要熟悉蓝图的API,通过"拖拖,连连"就能完成游戏玩法的开发,对游戏策划(设计师)及其友好,与C++相比,生产效率极高. 多武器系统 目前的游戏设定是开场后,角色身上就自动装
UE4中使用RenderDoc截帧
RenderDoc(src,doc,ue4 doc,ue4文档)是一个独立的开源图形调试器,通过采集和检查GPU上运行的单个帧,来定位图形bug和优化性能 RenderDoc支持任何在Win7.Win10.Linux或Android上使用Vulkan.D3D11.D3D12.OpenGL3.2+ & OpenGL ES2.0-3.2的应用程序 市面上大部分Android平台的GPU都是通用的,因此,RenderDoc作为通用的图形调试器,对这些GPU都可以进行截帧 而不像高通和mali的截帧工具
UE4的多线程
1. 源代码 AsyncWork.h 2. 多线程的使用 参考文档:https://wiki.unrealengine.com/Using_AsyncTasks 当我们需要执行一个需要很长时间的任务时,放在主线程里会导致很卡,把此任务放到其他线程里则会好很多,此时多线程就可以起到关键的作用了. 在UE4里,我们可以使用FAsyncTask 或者FAutoDeleteAsyncTask. 使用FAsyncTask 时,我们需要手动停止或删除任务:使用FAutoDeleteAsyncTask时,系统
ue4 优化建议与经验
转自:https://dawnarc.com/2016/12/ue4%E4%BC%98%E5%8C%96%E5%BB%BA%E8%AE%AE%E4%B8%8E%E7%BB%8F%E9%AA%8C/ 内容都是处理项目问题的相关笔记,留给自己做备忘录,也分享出来让别人少走弯路. 零散记录 GPUProfile来统计性能消耗的时候,在editor模式下不是很准,因为编辑器的消耗也算进去了,如果要用,最好以Game模式来查看. UE4不支持640X480的分辨率,如果在这个分辨率下运行程序,会导致程序崩
UE4物理模块(一)---概述与可视化调试
UE4.21前的版本采用的是NVIDIA的PhysX做为其默认的物理引擎,用于计算3D世界的碰撞查询与物理模拟.自4.21版本开始改物理调用接口,但这并不是闲来重构代码,果然在2019GDC大会上放出了正在自建Chaos物理系统的消息,从4.22预览版中已经可以看到相关代码,官方预计4.23就可以开始使用,还是值得期待的. 最近打算重点研究下物理系统,知乎上已经有相当不错的研究报告了,强烈推荐看的是: Jerish:<Exploring in UE4>物理模块浅析[原理分析]zhuanlan
Aery的UE4 C++游戏开发之旅(4)加载资源&创建对象
目录 资源的硬引用 硬指针 FObjectFinder<T> / FClassFinder<T> 资源的软引用 FSoftObjectPaths.FStringAssetReference TSoftObjectPtr<T> 同步加载资源 LoadObject/LoadClass TryLoad/LoadSynchronous 异步加载资源 FStreamableManager.RequestAsyncLoad() 卸载资源 创建对象 创建一般对象 创建Actor派生类
Aery的UE4 C++游戏开发之旅(5)字符&字符串
目录 TCHAR 字符 使用TEXT()宏包裹字符串字面量 转换字符编码 FString 字符串 FString 剖析 FString 使用 FName 字符串 FName 剖析 FName 使用 FText 字符串 FText 剖析 FText 使用 总结 参考 TCHAR 字符 C++支持两种字符集:即常见的ANSI编码和宽字符的Unicode编码,实际对应的字符类型分别是char和wchar_t,在不同平台环境下,我们可能需要不同的字符类型. TCHAR就是UE4通过对char和wchar
【UE4 C++ 基础知识】<12> 多线程——FRunnable
概述 UE4里,提供的多线程的方法: 继承 FRunnable 接口创建单个线程 创建 AsyncTask 调用线程池里面空闲的线程 通过 TaskGraph 系统来异步完成一些自定义任务 支持原生的多线程 std::thread 在GameThread线程之外的其他线程中 不要 spawning / modifying / deleting UObjects / AActors 不要使用定时器 TimerManager 不要使用任何绘制接口,例如 DrawDebugLine,然有可能崩溃 如果
热门专题
最短路与Apriori
命令末尾加上--nodeps --force卡住了
EVP_SignFinal签名信息长度
swiper分页器不显示
怎么调整world 的目录
maya注册表怎么删
phalApi框架打印sql
eclipse导入外面的项目报红叉
在idea中使用Eclipse编译器
xlslib 背景颜色
powershell查看显卡型号
ConnectionManagerImpl 关闭 连接
tun和tap的区别
springboot约定优于配置怎么理解
如何判断一个系统是否为动态系统
QT 发布 https
C#的string.equel和=
paintschainer网页上传不了图片
python接口数据落库
MySQL 登陆 socket 文件