中级Shader教程18 多层透明叠加渲染

这篇中级Shader教程详细介绍了多层透明物体的渲染技术,包括从前往后混合和从后往前混合两种方法。文章强调了在处理透明颜色时,实际显示的颜色是rgb乘以alpha(a)的值,这对于理解透明叠加至关重要。提供了相应的Shader代码实现,并提到这些技术在渲染云和风等场景中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


layout: post
title: “中级Shader教程18 多层透明叠加渲染”
date: 2018-04-23 16:09:03
author: Jiepeng Tan
categories:

  • shader tutorial
    tags: shader_tutorial sea shader wave
    img_path: /assets/img/blog/ShaderTutorial2D/Snow
    mathjax: true

Shader 视频教程

0.说在前面

1.我们通常说起颜色通常说“这个颜色的rgb值是多少”,而不是说“这个颜色的rgba值是多少”,不说a是因为我们默认改颜色的a = 1.0,即是不透明的

2.所以得提醒:使用rgba表示颜色时,我们最终看到的颜色不是rgb,而是rgb*a。这点对于理解多层透明混合很重要。

3.这个代码将会在后面渲染云和狂风中出现,如果想要真正理解并灵活运用该渲染套路,请重视!

1.从前往后混合:

我们设前景色为fCol,背景色为bCol
一开始我们的可以拥有的目光为remainA = 1.0,看到到的颜色为sumCol = 0

迭代1:
    我们的目光透过前景色后:  
    remainA1 = 1.0- fCol.a  
    sumCol1 = fCol.rgb * fCol.a  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JiepengTan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值