查看: 24880|回复: 1118
[图文原创教程] Unity3D体积烟雾制作思路分享_by474

549

薇星辰

14

薇积分

5142

精灵币

三星会员

CGwell游戏特效01期学员一年相伴 感谢有你薇儿被上了100天CGwell游戏特效03期学员CGwell游戏特效04期学员二年相伴 感谢有你

发表于 2017-4-12 22:21
在一些写实风格的游戏中,我们经常可以看到由爆炸、燃烧所产生的滚滚浓烟。其中的的烟雾特效好似不是一张贴图,而像是真实的物理烟雾。例如

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47447 作者:474 帖子ID:39592

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47438 作者:474 帖子ID:39592

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47447 作者:474 帖子ID:39592
什么是体积烟雾?先看一下对比图。

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47438 作者:474 帖子ID:39592
左边和右边用到的是同一张贴图。明显可以看到,左边的更真实、具有空间感和立体感,右边就显得比较平。那么这种体积烟是怎么做的呢?通常有几种做法,一个是利用法线图将烟雾的光照信息记录下来,通过计算得到贴图的明暗关系与受光情况。另一种是利用一张遮罩图,人工将贴图的亮面和暗面划分出来(也是大菠萝3的做法)。这里主要讲第二种方法。




首先我们在制作shader前,先明确几个需求:
1、shader需要有两张贴图,一张烟雾纹理(带有alpha通道)、一张mask遮罩(用来划分明暗面)。
2、需要控制烟雾出生的旋转角度来制造随机感,但是遮罩图是不会旋转的(或者旋转角度是个固定值)
3、可以使用粒子系统控制烟雾透明度,从而达到淡入淡出的自然消散效果。


接下来开始分析:

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47463 作者:474 帖子ID:39592

框1部分的作用是:利用单色通道(R)去控制贴图的旋转角度。其中的随机系数,是对单色通道的数值进行一个倍数放大的运算,来提高随机性。有人会问:粒子系统里不是有随机初始角度吗?这个问题我们稍后再说。
框2部分的作用是:通过一个数去控制mask图的旋转角度,这个数是一个确定的值,可以再shader外部去调整,0-1代表一个旋转周期。
最后的顶点色Vertex Color的alpha通道与贴图通道相乘,以便于在粒子系统里控制淡入淡出。

接下来是贴图部分。这里我用到两张贴图,纹理图是

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47471 作者:474 帖子ID:39592
遮罩图是

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by4743 作者:474 帖子ID:39592
。纹理图你可以使用各种各样的烟雾贴图去尝试,遮罩图的绘制方法也很简单。(涂涂抹抹随便乱画)


最后是粒子部分,发射器基本参数大家都会,这里就不一一详细说了。重点部分是:
1、不能再按照以往常规的做法给start rotation 0-360的随机变化去改变贴图的初始角度了。因为一旦改变,mask图也会跟着旋转,明暗关系就乱了。
2、刚才我们在shader里是利用单色通道去控制纹理图的旋转角度,所以这里我们利用初始颜色,将它设置为从为从黑道白的随机值,即可实现纹理图的随机旋转。

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47489 作者:474 帖子ID:39592



之后就完成啦,附上gif图,一个是多角度的动态,一个是改变光照方向动态。

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47465 作者:474 帖子ID:39592

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47444 作者:474 帖子ID:39592



需要说明的是,因为我们在制作shader的过程中,占用了R通道,所以无法通过粒子系统去改变烟雾的颜色。解决办法也很简单,你可以再shader中加入控制颜色的外部变量,或者直接ps涂涂抹抹乱花一通,至于更加帅气的拓展就要靠各位小伙伴们的聪明才智来自由发挥了~


附上制作好的shader文件,当然还是希望大家理解原理之后举一反三。
链接: https://pan.baidu.com/s/1qYBCGRa 密码: rdph








cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47430 作者:474 帖子ID:39592

cgwellUnity3D体积烟雾制作思路分享_by474

cgwellUnity3D体积烟雾制作思路分享_by47498 作者:474 帖子ID:39592

cgwellUnity3D体积烟雾制作思路分享_by474100 作者:474 帖子ID:39592 True Smoke.rar (2.36 KB, 下载次数: 316, 售价: 10 精灵币)

评分

参与人数 11精灵币 +77 薇积分 +5 收起 理由
老K丶 + 10 马老师厉害了。
房诗鹭 + 10 啥也不说了,精灵币是你的了
离水丶 + 5 厉害了马老师
小威哥 + 10 你就是特效界的科学家~
戏魁、 + 3 赞一个!
L酱 + 10 水帖处罚
DaBing + 2 给你一个B,证明我爱过
JS_柒 + 10 你就是游戏特效之星
云何为人演说 + 2 啥也不说了,精灵币是你的了
好纯洁的名字 + 10 给你一个B,证明我爱过
大AD + 10 给你一个B,证明我爱过

查看全部评分




上一篇:制作魔法阵
下一篇:AE------溶解亮边效果和粒子飘动的教程..........

56

薇星辰

0

薇积分

78

精灵币

一星会员

发表于 2018-4-19 10:26



看了楼主的帖子,不由得精神为之一振,自觉七经八脉为之一畅,七窍倒也开了六巧半,自古英雄出少年,楼主年纪轻轻,就有经天纬地之才,定国安邦之智,古人云,卧龙凤雏得一而安天下,而今,天佑我大中华,沧海桑田5000年,中华神州平地一声雷,飞沙走石,大舞迷天,朦胧中,只见顶天立地一金甲天神立于天地间,这人英雄手持双斧,二目如电,一斧下去,混沌初开,二斧下去,女娲造人,三斧下去,小生倾倒.得此大英雄,实耐之幸也,民之福也,怎不叫人喜极而泣.......古人有少年楼主说为证,少年之楼主如红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,皇皇;干将发硎,有作其芒;天戴其苍,地履其黄;纵有千古,横有八荒;【小生对楼主之仰慕如滔滔江水连绵不绝,海枯石烂,天崩地裂,永不变心】
楼层回复(0) 收起

1

薇星辰

0

薇积分

2

精灵币

见习会员

发表于 2018-4-11 19:48

看了楼主的帖子,不由得精神为之一振,自觉七经八脉为之一畅,七窍倒也开了六巧半,自古英雄出少年,楼主年纪轻轻,就有经天纬地之才,定国安邦之智,古人云,卧龙凤雏得一而安天下,而今,天佑我大中华,沧海桑田5000年,中华神州平地一声雷,飞沙走石,大舞迷天,朦胧中,只见顶天立地一金甲天神立于天地间,这人英雄手持双斧,二目如电,一斧下去,混沌初开,二斧下去,女娲造人,三斧下去,小生倾倒.得此大英雄,实耐之幸也,民之福也,怎不叫人喜极而泣.......古人有少年楼主说为证,少年之楼主如红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,皇皇;干将发硎,有作其芒;天戴其苍,地履其黄;纵有千古,横有八荒;【小生对楼主之仰慕如滔滔江水连绵不绝,海枯石烂,天崩地裂,永不变心】
楼层回复(0) 收起

1

薇星辰

0

薇积分

2

精灵币

见习会员

发表于 2018-4-11 19:47

看了楼主的帖子,不由得精神为之一振,自觉七经八脉为之一畅,七窍倒也开了六巧半,自古英雄出少年,楼主年纪轻轻,就有经天纬地之才,定国安邦之智,古人云,卧龙凤雏得一而安天下,而今,天佑我大中华,沧海桑田5000年,中华神州平地一声雷,飞沙走石,大舞迷天,朦胧中,只见顶天立地一金甲天神立于天地间,这人英雄手持双斧,二目如电,一斧下去,混沌初开,二斧下去,女娲造人,三斧下去,小生倾倒.得此大英雄,实耐之幸也,民之福也,怎不叫人喜极而泣.......古人有少年楼主说为证,少年之楼主如红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,皇皇;干将发硎,有作其芒;天戴其苍,地履其黄;纵有千古,横有八荒;【小生对楼主之仰慕如滔滔江水连绵不绝,海枯石烂,天崩地裂,永不变心】
楼层回复(0) 收起

6

薇星辰

0

薇积分

35

精灵币

见习会员

发表于 2018-3-28 13:09




看了楼主的帖子,不由得精神为之一振,自觉七经八脉为之一畅,七窍倒也开了六巧半,自古英雄出少年,楼主年纪轻轻,就有经天纬地之才,定国安邦之智,古人云,卧龙凤雏得一而安天下,而今,天佑我大中华,沧海桑田5000年,中华神州平地一声雷,飞沙走石,大舞迷天,朦胧中,只见顶天立地一金甲天神立于天地间,这人英雄手持双斧,二目如电,一斧下去,混沌初开,二斧下去,女娲造人,三斧下去,小生倾倒.得此大英雄,实耐之幸也,民之福也,怎不叫人喜极而泣.......古人有少年楼主说为证,少年之楼主如红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,皇皇;干将发硎,有作其芒;天戴其苍,地履其黄;纵有千古,横有八荒;【小生对楼主之仰慕如滔滔江水连绵不绝,海枯石烂,天崩地裂,永不变心】
楼层回复(0) 收起

6

薇星辰

0

薇积分

17

精灵币

见习会员

发表于 2018-3-22 22:38
看了楼主的帖子,不由得精神为之一振,自觉七经八脉为之一畅,七窍倒也开了六巧半,自古英雄出少年,楼主年纪轻轻,就有经天纬地之才,定国安邦之智,古人云,卧龙凤雏得一而安天下,而今,天佑我大中华,沧海桑田5000年,中华神州平地一声雷,飞沙走石,大舞迷天,朦胧中,只见顶天立地一金甲天神立于天地间,这人英雄手持双斧,二目如电,一斧下去,混沌初开,二斧下去,女娲造人,三斧下去,小生倾倒.得此大英雄,实耐之幸也,民之福也,怎不叫人喜极而泣.......古人有少年楼主说为证,少年之楼主如红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,皇皇;干将发硎,有作其芒;天戴其苍,地履其黄;纵有千古,横有八荒;【小生对楼主之仰慕如滔滔江水连绵不绝,海枯石烂,天崩地裂,永不变心】
楼层回复(0) 收起

1

薇星辰

0

薇积分

7

精灵币

见习会员

发表于 2018-3-6 09:07
看了楼主的帖子,不由得精神为之一振,自觉七经八脉为之一畅,七窍倒也开了六巧半,自古英雄出少年,楼主年纪轻轻,就有经天纬地之才,定国安邦之智,古人云,卧龙凤雏得一而安天下,而今,天佑我大中华,沧海桑田5000年,中华神州平地一声雷,飞沙走石,大舞迷天,朦胧中,只见顶天立地一金甲天神立于天地间,这人英雄手持双斧,二目如电,一斧下去,混沌初开,二斧下去,女娲造人,三斧下去,小生倾倒.得此大英雄,实耐之幸也,民之福也,怎不叫人喜极而泣.......古人有少年楼主说为证,少年之楼主如红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,皇皇;干将发硎,有作其芒;天戴其苍,地履其黄;纵有千古,横有八荒;【小生对楼主之仰慕如滔滔江水连绵不绝,海枯石烂,天崩地裂,永不变心】
楼层回复(0) 收起

55

薇星辰

0

薇积分

59

精灵币

一星会员

发表于 2018-3-24 12:33
简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了
楼层回复(0) 收起

16

薇星辰

0

薇积分

39

精灵币

一星会员

发表于 2018-4-10 10:26
简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒了简直太棒
楼层回复(0) 收起

21

薇星辰

0

薇积分

23

精灵币

一星会员

发表于 2017-5-9 08:59
大神,我看了你发的关于体积烟雾的帖子,我贴图和shader都一模一样可是连不出来你那样的效果。我用粒子黑白通道随机值改变不了烟雾的旋转,还是要通过0-360取控制,可是做出来很奇怪,还有blending的模式里blend mode是选择的哪个模式啊。谢谢大神,问题有点多,希望看到帮我解答一下,谢谢、cgwellUnity3D体积烟雾制作思路分享_by47490 作者:PPSS 帖子ID:39592
楼层回复(0) 收起

165

薇星辰

2

薇积分

378

精灵币

二星会员

发表于 2017-4-25 10:42
大神请问一下,如何让粒子能收到光照影响,像最下面那张有火的烟,下方靠近火的位置的烟会有被光照红的表现,这个怎么实现?我在烟雾粒子下方加了一个灯光但是粒子并没有被照亮
楼层回复(4) 收起
  • murasakijade可以添加颜色的节点,用时间来控制
    2017-6-5 14:17 回复
  • TTTMMM回复 murasakijade :666
    2017-11-25 01:25 回复
  • AsasC你好!道友!你的问题解决了么? 我想知道你是怎么弄的,我没弄明白~
    2018-1-9 17:25 回复
  • twilightzsc回复 AsasC :其实直接用粒子的生命时间控制颜色变化就很方便,做个假的效果,不一定真的要用灯光照亮
    2018-2-27 13:37 回复

469

薇星辰

4

薇积分

804

精灵币

三星会员

CGwell游戏特效01期学员CGwell游戏特效02期学员CGwell游戏特效04期学员

发表于 2017-4-12 22:30
给大佬递茶
楼层回复(0) 收起

459

薇星辰

25

薇积分

2601

精灵币

三星会员

薇儿被上了100天CGwell游戏特效03期学员CGwell游戏特效04期学员

发表于 2017-4-12 22:32
很棒
楼层回复(0) 收起

474

薇星辰

10

薇积分

177

精灵币

二星会员

CGwell游戏特效03期学员

发表于 2017-4-12 22:32
嗯,路过
楼层回复(0) 收起

445

薇星辰

4

薇积分

22

精灵币

二星会员

CGwell游戏特效01期学员薇儿被上了100天

发表于 2017-4-12 22:33
递酒!
楼层回复(0) 收起

429

薇星辰

16

薇积分

4345

精灵币

三星会员

CGwell游戏特效01期学员

发表于 2017-4-12 22:33
好厉害啊,非常好,跪拜
楼层回复(0) 收起

721

薇星辰

48

薇积分

1438

精灵币

三星会员

CGwell游戏特效01期学员

发表于 2017-4-12 22:34
474大神也是为了那本书吗~~cgwellUnity3D体积烟雾制作思路分享_by47433 作者:杨杨杨丶 帖子ID:39592
楼层回复(0) 收起

390

薇星辰

5

薇积分

577

精灵币

二星会员

薇儿被上了100天CGwell游戏特效03期学员CGwell游戏特效04期学员

发表于 2017-4-12 22:38
感谢分享
楼层回复(0) 收起

159

薇星辰

2

薇积分

189

精灵币

二星会员

CGwell游戏特效04期学员

发表于 2017-4-12 22:39
感谢大大分享
楼层回复(0) 收起

130

薇星辰

0

薇积分

278

精灵币

二星会员

CGwell游戏特效03期学员

发表于 2017-4-12 22:40
cgwellUnity3D体积烟雾制作思路分享_by47448 作者:dapingguo 帖子ID:39592
楼层回复(0) 收起

您需要登录后才可以回帖 登录 | 普通注册

本版积分规则 回复 诸如“sadasdasf”“撒旦撒旦撒范围为” 将被直接禁言 快捷回复内容选择:

CG薇儿热门讨论X

误删公告

近日,本站受到了持续性的广告垃圾信息轰炸,管理员已经积极删帖,但可能存在误删的情况,对此造成的不变深感歉意。...

参加讨论查看详情
快速回复 返回列表 客服中心
快速回复 返回顶部 返回列表