- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(Unity游戏冰霜效果的实现和思考
Unity游戏冰霜效果的实现和思考Unity游戏中如何做出冰霜效果呢?冰霜的覆盖效果在游戏中很常见,那么是如何制作出来的呢,让我们来了看看原因,首先我们需要一个模型,如下图所示:?1.常规的冰霜,最简单的要数霜冻的颜色变化,只需要减少亮度,增加蓝色分量。?片段着色器:?texcol *= fixed4(0.9, 0.9, 0.9, 1f);?texcol.b += 0.2;?效果如下:?虽然简单,但效果也十分一般。?2.如果你玩过冰火围城,它里面的冰冻效果则是更加金属化,给人的感觉是一层灰色滤镜再增加一点蓝色,然后顶部会更亮。?首先,我们要计算法线夹角,方便处理顶部更亮这部分。?顶点着色器:?float3 normal = mul(SCALED_NORMAL, (float3x3)_World2Object); fixed dotProduct = dot(normal, fixed3(0, 1, 0)) / 2; if(dotProduct = 0) { dotProduct = 0; } o.color = dotProduct.xxx; 然后灰化整个角色,并且增加顶部亮度。?片段着色器:?float grey = dot(texcol.rgb, float3(0.299, 0.587, 0.114)) + i.color.x;?texcol = fixed4(grey, grey, grey, texcol.a);?texcol.r -= 0.15texcol.b += 0.15;?;?效果如下:?不过由于这个模型本身比较暗,所以看上去有点像雕像。但这似乎不是我们想要的效果呢,于是我打算换一个思路,让材质先变成霜。?增加了一张贴图,看看霜的效果:?哈哈,有点像冰棍了呢。但霜应该要亮一些,我打算增加下亮度,同时增加外发光。?顶点着色器:?fixed3 viewDir = normalize(ObjSpaceViewDir(v.vertex));??fixed dotProduct = 1 - dot(v.normal, viewDir);?o.color = smoothstep(0, 1, dotProduct);o.color *= _RimColor;?片段着色器:?texcol.rgb += i.color;?效果:?可是这样就完全是冰棍了呢,我想要混合一下原始的像素,于是增加一个变量,控制一下混合。?片段着色器:?texcol = texcol * _Frezz + ?alpha * (1 - _Frezz);?设置效果:?通过控制滚动条可以调整混合比例,这个大概是64开的比例,看着还行吧。?但这样就结束的话还是差强人意,因为冰霜的变化太过规则了,我们很多时候希望的是随机变化,显得更自然。?再增加一张噪点贴图,通过获得贴图的值调整混合比例。?float ClipTex = tex2D (_RandomTex, i.uv).r ;?float ClipAmount = (_Frezz - ClipTex) / 2 + 0.5;??if(ClipAmount 0)??{? ClipAmount = 0;?}?if(ClipAmount 1)??{??ClipAmount = 1;??}?效果如下:?这样马马虎虎吧,如果还要继续就需要法线贴图,遗憾的是这个模型没有法线贴图。?如果有法线贴图,我们可以再法线贴图层面上增加冰霜的颜色变化。?最后 的完整shader代码:?// Upgrade NOTE: replaced PositionFog() with multiply of UNITY_MATRIX_MVP by position // Upgrade NOTE: replaced V2F_POS_FOG with float4 pos : SV_POSITION Shader Custom/CharactorShaderCullOff { Properties { _MainTex (Base (RGB), 2D) = white {} _AlphaTex (Base (RGB), 2D) = white {} _RandomTex (Base (RGB), 2D) = white {} _RimColor (Rim Color, Color) = (1, 0, 0, 1) _Color(_Color, Color) = (0.5,0.5,0.5,1) _Rampage(_Rampage, Float) = 0 _Frezz(_Frezz, Range(0, 1)) = 0 } SubShader { //Tags {Queue=Transparent IgnoreProjec
您可能关注的文档
- (Pv3D8.外部模型.doc
- (PS设计整洁漂亮的网页页面布局和背景.doc
- (ps设计网页样图.doc
- (QC安装.doc
- (QC安装和配置手册.docx
- (Python程序设计语言笔记.docx
- (QC10安装步骤及客户端配置.doc
- (QGDW196015801006配电电缆培训标准.doc
- (QC成果青岛港大港公司工具队研制30吨板坯装卸工具.doc
- (QQ2009QQ2010登陆框制作图文教程.doc
- 第二单元第1节《电子表格基础》教学设计 河大音像版(2020)初中信息技术七年级下册.docx
- 第一单元第5节《图文美化》教学设计 河大音像版(2020)初中信息技术七年级下册.docx
- 专题学习活动 人无信不立(教学设计)语文统编版2024八年级上册.docx
- 2024-2025学年广西河池市环江县统编版一年级下册期中考试语文试卷.docx
- Unit4 课时2 Understanding ideas (教学设计)英语外研版2024七年级上册.docx
- 2024-2025学年山东省德州市夏津县第二实验小学青岛版一年级下册第一次月考数学试卷.docx
- 3.2 青春有格(核心素养教学设计)七年级道德与法治下册.docx
- 第六单元 阅读(单元解读讲义)语文统编版一年级上册(新教材).docx
- 2024-2025学年河北省邢台市威县七级堡部分学校冀教版一年级下册3月月考数学试卷.docx
- 云南师范大学附属中学2025-2026学年高三上学期适应性月考(四)历史试题(含答案).pdf
最近下载
- 24.XX银行_信息科技外包服务中断应急预案管理办法.doc VIP
- 学习贯彻《关于加强党的作风建设论述摘编》PPT:持之以恒推进作风建设常态化长效化,保持党的先进性和纯洁性(附文稿).pptx VIP
- 绍兴续志1994—2005湖塘街道资料长篇.doc
- 快乐汉语第一册第二课.pptx VIP
- ISO8502-3喷砂后钢板表面灰尘清洁度标准.pdf
- 牛津译林版英语九年级上册9AReading &Task中文翻译口语材料.docx VIP
- 初中历史教师如何应对学生的个别差异.pptx VIP
- 部编版四年级语文上册期中自主综合测试 (基础卷)(含答案).docx VIP
- 人教版七年级上册期中模拟试题(Starter Units 1-Units4)(含答案).docx VIP
- 嵌入式软件工程师招聘条件.pdf VIP
原创力文档


文档评论(0)