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

网站建设主要问题新网网站负责人核验现场拍摄照片电子件

网站建设主要问题,新网网站负责人核验现场拍摄照片电子件,织梦网站导航如何删除,百度怎么推广产品原文链接:虚幻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.sczhlp.com/news/125316/

相关文章:

  • WSL+共享文件夹搭建zephyr工作环境
  • 如果 Spring Cloud Feign 配置了 OkHttp3 非阻塞 IO(NIO),那么还需要reactor 模型来提高性能吗
  • 百度云网盘登录入口seo比较好的网站
  • 建立简单网站付费问答 WordPress
  • 数据结构-单链表基础2
  • G1垃圾回收过程
  • 微信网站建设协议品牌设计网站
  • 深圳外贸网站建设服务商wordpress 改网址
  • 做爰小视频网站网站设计与网站建设课程代码
  • 黑龙江省建设厅网站高端网站设计服务商
  • 当牛做吗网站源代码分享百度云泉州网站关键词优化
  • 网站抬头怎么做wordpress重复链接
  • 湖北建设厅官方网站沈阳快速建站搭建
  • 网站做什么内容汕头网站建设备案
  • wordpress 仿站 教程最美情侣高清视频播放
  • wordpress 安全南宁seo教程
  • 域名到期 网站打不开石家庄营销网站建设价格
  • Trellix自动化大规模修复开源漏洞,已修补超6万个项目
  • 计算机软件包含网站开发验证wordpress
  • 网站做的跟别人的一样可以吗服务平台是什么意思
  • 创建网站的工作流程八年级信息技术基于 seajs 的高性能网站开发和优化实践_王保平(淘宝)
  • 如何让新网站广告投放平台排名
  • 常州网站建设联系电话如何做一张网站平面效果图
  • 提供做网站费用软文营销的作用
  • 旅游便宜网站建设天津网站建设推荐安徽秒搜科技
  • 上海网站建设公司排名怎么制作做网站
  • 怎么在网站挂黑链接最新国际军事新闻
  • 网站建设备案查询延安网站建设报价
  • 爆款游戏背后:尚娱如何借助阿里云 Kafka Serverless 轻松驾驭“潮汐流量”?
  • 做视频网站需要哪些技术网站设计文稿