
UE4
文章平均质量分 59
leonwei
腾讯专家游戏开发工程师(T12/T4-1) 《黎明觉醒》引擎组组长
展开
-
基于UE4的多RHI线程实现
1 UE4的现有多线程架构UE的多线程渲染结构如下图, 它有几个特点game thread 负责逻辑tick,render thread 负责culling、batching和draw api的生成, rhithread 负责drawapi的执行game和render两个线程最多可以差一帧,即前后两帧的gam额和render可以并发,通过Fframeendsync做同步render 和rhi之间的关系是帧内的合作关系,即不能达到前后两帧render和rhi的并发,前一帧的drawapi最多在下一帧原创 2021-10-13 17:17:21 · 6606 阅读 · 0 评论 -
UE高级性能剖析技术(三)-- Android内存分布和优化
在基于ue的手游开发中,经常会发现android系统的实际内存占用要比我们预估的高很多,优化内存的占用就要先明确究竟每1k实际的内存占用分布在哪里及如何运用工具有效的获取真实的内存组成,本文将结合项目经验详细介绍这个部分,并据此分别介绍一些常用的瓶颈和优化。最终了解你的android程序中的每1k内存。 Android程序内存分配原理 Android内存管理基础Android内...原创 2020-04-11 21:00:04 · 9182 阅读 · 5 评论 -
PBR以及在Disney和UE渲染模型中的使用
PBR,基于物理的渲染模型,是当前主流游戏引擎使用的真实感3D渲染模型,在游戏场景渲染中,它用更接近光学物理的方式,建立一个对全场景材质的大一统shader。大一统shader的好处包括:统一美术制作管线加快制作效率,对动态光照环境的更耗的适应性,减少shader维护的负担等。本文总结了PBR的理论知识以及具体在Disney和UE中的典型应用。1 PBR的理论基础1.1光波光波能量描述...原创 2020-01-19 18:52:54 · 5183 阅读 · 2 评论 -
UE4 Render System Sheet(UE4渲染系统概览)
UE4的渲染系统代码量庞大,复杂,我们写UE渲染相关的功能需求的时候,经常需要反复翻阅它里面的数据结构,pipeline,这里用一张图,把UE4的渲染系统的脉络梳理进来,让大家都能更方便的修改UE引擎的渲染功能(你需要点下放大镜) ...原创 2018-12-05 10:28:29 · 5157 阅读 · 3 评论 -
UE高级性能剖析技术(1)-- RHI线程(渲染提交)
在最前面基于UE的手游客户端的性能主要由这七大部分构成:CPU逻辑,CPU渲染,图形API(提交),GPU渲染,内存,带宽,加载时间。这几个基本元素又会合力衍生出一些新的性能指标,例如功耗(往往同gpu负载和带宽紧密相关)。同时这七部分又构成一个闭合的木桶,最长的一块是主要瓶颈,并且瓶颈可以在这几块转移流动。作为开发者我们解决性能问题的步骤一般都是按照做性能剖析,解读结果,定位问题,增加剖析代...原创 2019-07-11 22:14:57 · 16382 阅读 · 9 评论 -
UE高级性能剖析技术(2) -CPU帧率瓶颈和卡顿
CPU上帧率低和卡顿是性能优化中最易出现的一部分,尤其对于手游,提到卡,就大概率是在CPU上出现的问题,CPU上的卡顿一般是卡逻辑或是卡渲染,本篇将详细系统的介绍基于UE的手游对CPU瓶颈的剖析方法。低帧率和卡顿首先低帧率和卡顿是两种完全不同的瓶颈类型,虽然归根到底都是某个函数执行的过慢引起的,但是定位和解决方法并不一样。低帧率瓶颈是需要统计一段时间内CPU把更多的时钟耗费在了哪些函数上...原创 2019-08-27 14:41:06 · 11258 阅读 · 1 评论