Unreal Engine 4套件开发系列教程:多线程库

人宅老师在这一期课程中给大家带来一套工具类教程,如何开发UE4多线程商业库。

tut_ue4suite_190813_02

教学总长度5小时20分钟左右

使用软件:UE4、VS 2017

本教程只能在线播放,且暂不支持移动端。目前支持win和mac系统。

本套教程将融合了UE4代理,UE4多线程,UE4智能指针,插件开发等综合知识进阶的技巧,是一套综合实战课程。虽然UE4为我们游戏开发提供了三套多线程解决方案,但是在我们日常开发项目中,依然需要封装和整合UE4线程,比如做服务器开发 or 是引擎开发。如果对多线程使用上只是熟悉或者不太了解的,那么在使用中会出现很多奇奇怪怪的问题,而束手无策。那有没有什么库可以解决这个问题,当然有,非常多,比如std::thread,Boost库等,都提供了丰富的多线程的封装,但是有一点,它们的风格不是UE4C++风格,维护上也是一件很麻烦的事情,因为这些库的源码不可能为你公开的,及时公开,源码也不一定看得懂。

这一期我们来封装一套基于UE4C++商业版本的线程库,直接可以用于项目中,最重要是使用方便,轻巧便捷,维护性强。

教学为进行时教学,每周周五更新,更新完毕教学恢复原价。

第一章 搭建线程插件
这一节我们会讲解如何封装一套属于自己的Runnable多线程,这一节为后面封装线程管理莫定基础。
第二章 封装线程池的同步和异步
这一章我们通过对信号量的设置来实现线程的同步和异步,这一章同样我们会封装我们的代理线程,并且解决线程安全等问题
第三章 封装线程任务管理
这一章我们开始封装线程池任务,我们也称为任务队列,我们可以不断的向任务线程发送任务请求,一旦有闲置线程便可以执行我们的任务,通过这种方式,我们便可以高效的利用我们线程池里面的线程,防止线程资源的浪费,这一节为我们后面搭建服务器有巨大的帮助。
当然我们还会分析该插件跨平台问题等。
第四章 通过模板高效封装UE4线程
我们已经封装代理线程和任务线程,UE4Abandonable线程,这一章我们开始通过模板整合这三种线程通用的函数,使其结构更加精炼,使用上风格更加统一,最后我们再加入协程,并且讲解什么是协程,最终我们会将协程封装到我们的插件中。
第五章 前置任务线程封装
这一节我们开始封装UE4使用频率最高的线程Graph线程,我们也会讲解如何封装我们的渲染线程,这对我们以后学习渲染有很大的帮助哦~
当然我们还会讲解如何封装我们的原生Windows线程,理解并且使用我们的它。
第六章 封装异步资源管理
这节我们开始讲解异步资源管理,并且将它进行高级封装,最终效果是方便又实用,而且我们还会讲解里面涉及到的异步管理,以及GCObject类讲解等。
第七章 如何使用SimpleThread
这一章我们主要是以测试线程为主,通过前面的各种封装,这一章是真正检验我们线程插件商业价值的地方.这一章我们会讲解如何使用代理线程,任务线程,同步异步线程,资源管理线程,图表线程,协程,以及各种宏线程。

我们简单介绍一下这套教程会给您带来哪些技能的知识点;
1. 掌握UE4多线使用,
怎么加锁,如何挂起线程,如何唤醒,如何避免死锁,如何让线程同步,如何异步,如何开启线程,如何安全的销毁线程,如何高效的使用UE4线程,如何创建任务队列,如何搭建和维护自己的线程池。
2 封装技巧
我们主要讲解的是商业版本的多线程库的封装,你可以在该教程中学习到很多高级的封装技巧,如何封装管理类,如何使用模板的高级封装,这些封装最终是让使用者更加便捷,我们会用最少的代码来描述一套商业线程是如何高质量开发出来的,学完这些技巧后您可以运用在自己的项目中,使代码令人眼前一亮。
3 代理的高级运用
我们会讲解代理的高级运用,这套教程您将对代理有了更深刻的理解,这些技巧您将会在日后的项目开发中,让代码更有分量感。
4 协程
我们会讲解什么是协程,怎么使用以及,如何高级的封装UE4协程。
5. 原生多线程
我们会讲解最最原生的多线程案例,UE4的多线程都是基于此API架构的,知彼知己方能百战不殆。
6 UE4异步资源加载系统
我们会封装一套基于UE4的异步加载资源系统,并且会讲解所涉及到UE4异步资源加载类,比如FGCObject,FStreamableManager,FStreamableHandle等类的讲解
7 其他知识点
通过本套教程,您将对UE4多线程的使用有一个非常深刻的认识,不论是做服务器还是客户端,还是热更新,这将是一个非常好的基础。

内容偏向

UE4套件开发 100%

完成效果截图

课程目录

第一章 搭建线程插件
1-1 创建线程插件
1-2 创建线程接口
1-3 封装Runnable线程
1-4 封装线程池管理

第二章 封装线程池同步异步
2-1 建立线程绑定执行机制
2-2 如何正确删除线程
2-3线程安全与线程同步
2-4 Bind匹配代理模板
2-5 线程异步问题

第三章 封装任务管理
3-1 自动化任务队列设计
3-2 封装信号量
3-3 高级封装线程管理接口
3-4 高级封封装代理线程管理
3-5 高级封装任务线程管理和总管理
3-6 插件的跨平台问题

第四章 通过模板高效的封装UE4线程
4-1 利用宏编程实现UE4线程池同步和异步
4-2 封装线程同步和异步到管理
4-3 通过模板匹配同意代理接口
4-4 什么是协程
4-5 封装协程对象
4-6 封装协程管理

第五章 前置任务线程封装
5-1 封装前置任务UE4线程管理
5-2充分发挥Graph线程特性
5-3 CreateThreadWindowsAPI封装
5-4 渲染线程讲解

第六章 封装异步资源读取
6-1 封装资源异步加载
6-2 StreamableManager讲解
6-3FGCObject讲解
6-4FStreamableHandle讲解

第七章 如何使用SimpleThread
7-1测试Proxy线程解决线程绑定和销毁问题
7-2测试Task线程解决传值的乱码问题
7-3测试Abandonable线程的同步异步
7-4 测试协程
7-5测试Graph线程和Windows线程
7-6测试异步资源加载使用

本 教学需要您对基础的3D概念和术语有一定的了解,比如Polygon(多边形),Edge(边),Face(面),Axis(轴向),Space(空 间),Map(贴图)等等,因为教学中,这些术语都是用英语发音的,如果您对3D完全一无所知,可能会导致对教学的理解困难。请先咨询客服后再买。

本教程只能在线播放,且暂不支持移动端。目前支持win和mac系统,播放之前需要与微信账户绑定。如果您有疑问,可以访问”帮助中心“获得解答。

课程评价

没有找到该课程的评论

学习本课程

加入购物车

教程精确搜索

加入我们

成为合作教师

推荐教程

帮助提示

阅读更多

help_howdownload

如何观看教程?

教程都是在线播放的,无需下载

阅读更多

help_active

理解硬件绑定和授权

购买的教学将与计算机绑定

阅读更多

help_oldcus

授权绑定额度用完

无法在新的设备上激活