Realtime Rendering 3rd笔记 7

本文介绍了像素着色器(PS)的工作原理及其在图形渲染管线中的作用,包括其输入输出、限制及如何影响片段颜色。同时,还讨论了合并阶段如何处理来自PS的数据,与帧缓冲区进行深度值和颜色的合并。

3.6 The Pixel Shader

在vs和gs执行之后,图元被clipped并set up准备光栅化,这个阶段是很固定的,不能编程(值得注意的例外是pixel shader可以指定使用哪种插值,perspective corrected or screen space, or none)。每个三角形依次处理,顶点数据在三角形内插值。pixel shader是下一个可编程阶段。在OpenGL中,被称作fragmenet shader,这在某种角度是一个更好的名字。这个意思是说,一个三角形全部或部分的覆盖每个像素,并且材质描绘为不透明的或透明的。光栅器不直接修改像素的颜色,而是生产数据,描述三角形如何覆盖像素。之后在merging阶段,片段的数据被使用来修改像素。
vs的输出成为ps的输入,SM4.0中一共有16个vector可以从vs传输到ps,如果使用gs,可以输出32个vector到ps。SM3.0之后,给ps的额外的输入被加入,例如三角形的哪个面是可见的作为一个输入标志。片段的屏幕坐标对于ps也是可用的。
ps的限制是他只能影响他所处理的片段,不能将结果直接传递给相邻的像素,而是使用顶点插值的数据和存储的常量以及纹理数据。然而,这个限制也不是太严重,因为可以使用image processing来影响相邻的像素(10.9)。
一种情况下ps可以访问临近像素的信息(虽然是间接的),即计算梯度(gradient)或者derivative information。The pixel shader has the ability to take any value and compute the amount by which it changes per pixel along the x and y screen axes.这对于多种计算和纹理寻址很有用。梯度信息不能被动态控制流影响的shader访问。
ps一般是设置片段的颜色,颜色在最终的merging阶段被合并。光栅化阶段产生的深度值也可以被ps修改。stencil buffer的值是不可以修改的,会直接发送到merge阶段。从SM2.0开始,ps可以丢弃(discard)输入的片段数据,即不产生输出。这种操作是消耗性能的,因为GPU将不能进行优化。在SM4.0中,fog计算和alpha test从merge阶段被移动到ps中。(es2.0也一样)
ps可以进行的处理,这种在单一pass中计算任意数目值的能力促进了multiple render targets(MRT)的使用。每个片段可以生成多个向量并被保存到不同的多个buffer中,这些buffer必须是相同尺寸的,并且一些架构需要他们具有相同的bit depth(尽管如果需要格式可以不同)。PS输出寄存器的数量参考独立的buffer的数量,例如4或8。不同于color buffer,附加的target有一些限制。例如,不能使用反锯齿。尽管有这些限制,MRT功能对于更有效的执行渲染算法是一个强大的辅助。如果有很多中间结果的image需要从一批相同的数据中计算出来,只需要一个rendering pass就可以了,而不是每个pass对应一个输出buffer。另外的一个MRT相关的关键能力是从产生的image读取回数据作为纹理使用。

3.7 The Merging Stage

merge阶段独立片段的深度值和颜色和frame buffer进行组合。stencil-buffer,Z-buffer操作在这阶段进行。另外一个操作是color blending。merge阶段是不可编程的,但也不完全固定,他可以通过配置来定制操作。特别是color blending,可以使用很多不同的操作,例如乘法,加法,减法,使用颜色和alpha值;其他的操作如取最小值和取最大值也是可能的,以及还有位逻辑操作。DirectX10增加了从pixel shader输出两个颜色和frame buffer上的颜色进行混合的功能,被称作dual-color blending。
如果采用了MRT功能,blending可以在多个buffer上进行。DirectX10.1引入了一个功能:在每个MRT buffer上进行不同的混合操作,在之前的版本中,所有的buffer只能进行相同的混合操作。(注意dual-color blending和MRT不兼容)

内容概要:本文为《科技类企业品牌传播白皮书》,系统阐述了新闻媒体发稿、自媒体博主种草与短视频矩阵覆盖三大核心传播策略,并结合“传声港”平台的AI工具与资源整合能力,提出适配科技企业的品牌传播解决方案。文章深入分析科技企业传播的特殊性,包括受众圈层化、技术复杂性与传播通俗性的矛盾、产品生命周期影响及2024-2025年传播新趋势,强调从“技术输出”向“价值引领”的战略升级。针对三种传播方式,分别从适用场景、操作流程、效果评估、成本效益、风险防控等方面提供详尽指南,并通过平台AI能力实现资源智能匹配、内容精准投放与全链路效果追踪,最终构建“信任—种草—曝光”三位一体的传播闭环。; 适合人群:科技类企业品牌与市场负责人、公关传播从业者、数字营销管理者及初创科技公司创始人;具备一定品牌传播基础,关注效果可量化与AI工具赋能的专业人士。; 使用场景及目标:①制定科技产品全生命周期的品牌传播策略;②优化媒体发稿、KOL合作与短视频运营的资源配置与ROI;③借助AI平台实现传播内容的精准触达、效果监测与风险控制;④提升品牌在技术可信度、用户信任与市场影响力方面的综合竞争力。; 阅读建议:建议结合传声港平台的实际工具模块(如AI选媒、达人匹配、数据驾驶舱)进行对照阅读,重点关注各阶段的标准化流程与数据指标基准,将理论策略与平台实操深度融合,推动品牌传播从经验驱动转向数据与工具双驱动。
3D应力敏感度分析拓扑优化】【基于p-范数全局应力衡量的3D敏感度分析】基于伴随方法的有限元分析和p-范数应力敏感度分析(Matlab代码实现)内容概要:本文档围绕“基于p-范数全局应力衡量的3D应力敏感度分析”展开,介绍了一种结合伴随方法与有限元分析的拓扑优化技术,重点实现了3D结构在应力约束下的敏感度分析。文中详细阐述了p-范数应力聚合方法的理论基础及其在避免局部应力过高的优势,并通过Matlab代码实现完整的数值仿真流程,涵盖有限元建模、灵敏度计算、优化迭代等关键环节,适用于复杂三维结构的轻量化与高强度设计。; 适合人群:具备有限元分析基础、拓扑优化背景及Matlab编程能力的研究生、科研人员或从事结构设计的工程技术人员,尤其适合致力于力学仿真与优化算法开发的专业人士; 使用场景及目标:①应用于航空航天、机械制造、土木工程等领域中对结构强度和重量有高要求的设计优化;②帮助读者深入理解伴随法在应力约束优化中的应用,掌握p-范数法处理全局应力约束的技术细节;③为科研复现、论文写作及工程项目提供可运行的Matlab代码参考与算法验证平台; 阅读建议:建议读者结合文中提到的优化算法原理与Matlab代码同步调试,重点关注敏感度推导与有限元实现的衔接部分,同时推荐使用提供的网盘资源获取完整代码与测试案例,以提升学习效率与实践效果。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值