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

绵阳网站建设 科雨网络淘宝运营

绵阳网站建设 科雨网络,淘宝运营,嘉兴港区建设局网站,logo免费设计在线生成下载原文链接:虚幻4渲染管线入门 - 知乎 从原文摘抄一下: 渲染框架 1,一套是传统的以RHICmdList为核心构建RenderPass,从RHICmdList.BeginRenderPass(...)开始,以RHICmdList.EndRenderPass()结束的框架。 2.一套是以新的Gr…

原文链接:虚幻4渲染管线入门 - 知乎

从原文摘抄一下:

渲染框架

1,一套是传统的以RHICmdList为核心构建RenderPass,从RHICmdList.BeginRenderPass(...)开始,以RHICmdList.EndRenderPass()结束的框架。

2.一套是以新的GraphBuilder为核心来构建RenderGraph,通过GraphBuilder.AddPass(...),以回调的方式来设置每个渲染Pass的逻辑。

GraphBuilder使用的形式

RDG_GPU_MASK_SCOPE(GraphBuilder, View.GPUMask);
RDG_EVENT_SCOPE_CONDITIONAL(GraphBuilder, Views.Num() > 1, "View%d", ViewIndex);auto* PassParameters = GraphBuilder.AllocParameters<FDistortionPassParameters>();
PassParameters->Pass = CreateDistortionPassUniformBuffer(GraphBuilder, View);
PassParameters->RenderTargets[0] = FRenderTargetBinding(DistortionTexture, LoadAction);
PassParameters->RenderTargets.DepthStencil = StencilWriteBinding;GraphBuilder.AddPass({},PassParameters,ERDGPassFlags::Raster,[this, &View](FRHICommandListImmediate& RHICmdList)
{QUICK_SCOPE_CYCLE_COUNTER(STAT_FSceneRender_RenderDistortion_Accumulate_Meshes);Scene->UniformBuffers.UpdateViewUniformBuffer(View);SetStereoViewport(RHICmdList, View);View.ParallelMeshDrawCommandPasses[EMeshPass::Distortion].DispatchDraw(nullptr, RHICmdList);
});

 原文链接:Unreal从0到1专栏概述 - 知乎

 以下是笔记:

并行异步与渲染模块分析

一,虚幻的多线程Task系统

1,FRunable:标准多线程

2,AsyncTask:基于线程池的异步实现

        它是对Runable进一步的封装,基于FQueuedThreadPool实现的异步任务系统,本质上是对IQueuedWork(任务队列)的实现

3,TaskGraph:任务图表系统

        TaskGraph中工作线程是FWorkThread,它由两部分组成FRunnableThread* RunnableThread,FTaskThreadBase* TaskGraphWorker

        TaskGraph通过FTaskGraphImplementation来创建和分配任务,这个类公有继承于FTaskGraphInterface【与FThreadManager类似,这才是任务分配的管理者,不过它也是个抽象类只负责提供接口,其功能具体实现是在FTaskGraphImplementation中完成的】

引擎初始化FTaskGraphImplementation会创建24个FWorkerThread,其中包括5个FNamedTaskThread:

  • GameThread:游戏线程,也是虚幻引擎的主线程,向RenderThread发出CommondList
  • ActualRenderingThread:渲染线程,也是本节重点关照的,向RHI发送CommondList
  • RHIThread:RHI线程,向不同平台GPU发送指令
  • AudioThread:AudioThread
  • StatThread:StatThread

以及N个FTaskThreadAnyThread类型的Thread。其中StatThread与RenderingThread会在引擎初始化阶段执行FEngineLoop.PreInit时创建新的Runbale

TaskGraph系统要在引擎Prelnit阶段完成初始化,具体实现可以在LaunchEngineLoop.cpp中找到PreInitPreStartupScreen函数

二,UE4的多线程渲染

1,主要线程间通信

实现多线程渲染只要关注GameThreadRenderThread与RHIThread即可

游戏线程是主线程是发送命令的,渲染线程与RHI线程只是执行者

GameThread:戏线程通过某些接口向渲染线程的Queue入队回调接口,以便渲染线程稍后运行时从渲染线程的Queue获取回调,一个个地执行从而生成Command List。

RenderThread:分发执行渲染Task,向RHI线程发送commondList

RHIThread:接收渲染层的指令,发送给硬件执行

http://www.khdw.cn/news/70843.html

相关文章:

  • 镇江做网站搜索引擎链接
  • 永州网站开发班级优化大师怎么下载
  • 网站域名价格 优帮云百度搜索网站排名
  • 宜昌需要做网站建设的公司聊城seo整站优化报价
  • 网站开发后台前端数据库百度竞价官网
  • php做网站需要mysql么400个成品短视频
  • 大连网站制作怎么做网络广告营销策略
  • 商城app开发费用多少钱seo优化一般包括哪些
  • 创建页面wordpress文章广告优化师前景怎样
  • 设计用哪些网站有哪些功能广告投放方式
  • 宝安做网站信科seo研究中心晴天
  • 建筑设计公司名称大全seo的含义是什么意思
  • 幼儿园主题网络图设计模板seo需要掌握哪些技术
  • 如何用本机电脑做网站服务器神马网站快速排名软件
  • 品牌整合营销方案推广seo网站
  • wordpress开发手册下载seo公司网站推广
  • 有没有免费b2b平台seo搜索推广
  • 有什么做礼品的卖家网站2022网站seo
  • 做外贸客户要求看网站seo优化个人博客
  • 宠物网站建设方案地推平台
  • 刚做的单页网站怎么预览十大最靠谱培训机构
  • 个人作品网站怎么做重庆seo顾问
  • 盐城市亭湖区城乡建设局网站网站cms
  • 广州做网站的小广告模板
  • asp网站相册百度移动端点赞排名软件
  • 怀化网站建设公司360识图
  • 中建西部建设网站网站排名优化方案
  • 做酒的网站有哪些备案查询网
  • wordpress 获取用户ip讯展网站优化推广
  • php动态网站开发实例怎么建立网站卖东西