请选择 进入手机版 | 继续访问电脑版

【3D技术宅公社】XR数字艺术论坛  XR技术讨论 XR互动电影 定格动画

 找回密码
 立即注册

QQ登录

只需一步,快速开始

调查问卷
论坛即将给大家带来全新的技术服务,面向三围图形学、游戏、动画的全新服务论坛升级为UTF8版本后,中文用户名和用户密码中有中文的都无法登陆,请发邮件到324007255(at)QQ.com联系手动修改密码

3D技术论坛将以计算机图形学为核心,面向教育 推出国内的三维教育引擎该项目在持续研发当中,感谢大家的关注。

查看: 879|回复: 6

[基础技术] 【Uniyu Shader】实现简单的淡入淡出效果

[复制链接]
发表于 2018-12-24 15:03:30 | 显示全部楼层 |阅读模式
淡入淡出效果
各位读者大家好:
由于Unity内置的透明材质放到复杂的模型上面会有面的穿插效果,看起来很不美观,所以这里我简单介绍下Unity Shader的淡入淡出效果;
我们可以自己在Unity里面创建一个Unity Shader来自己编写简单的效果;
首先我们打开Unity New一个工程文件
0.png
然后在Assets下右键创建一个Unity Shader材质球,如下图;
1.png

在属性面板点击Open…打开 这里默认的是Visual Studio 打开
2.png

然后编写,如下图;
3.png
4.png

以上是Shader代码,因为没有用到很复杂的一些接口,所以这里只开放了alpha
、贴图和颜色;
可以通过脚本用代码控制透明度0-1的数值(0完全透明 1不透明);
也可以通过Unity2017以上版本的Timelin组件控制Shader 里面alpha接口来改变透明度数值;

下面是在Unity里面,把编写好的Shader放到材质球上后的属性面板;
Color修改颜色;
Texture 可以放置简单的贴图;

Alpha Scale 通过修改 0-1之间的数值可以控制透明度;

这样我们在场景中就可以看到物体的透明效果,数值改成0.5的效果如下;
5.png
6.png

Alpha Scale数值还原成1的效果如下;
7.png
8.png

由于Unity内置的透明材质模型复杂的话会有模型穿插效果,通过这种方式可以去掉穿插效果,以上就是简单的淡入淡出的实现,避免了模型面的穿插;

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|3D数字艺术论坛 ( 沪ICP备14023054号 )

GMT+8, 2021-4-20 21:43

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表