Unity shader Note :噪声纹理(模拟简单水面)

本文介绍如何使用Unity shader实现简单的水面模拟,包括通过GrabPass获取屏幕图像模拟折射、利用Cubemap模拟反射、应用菲涅尔系数和Time.y调整,以及屏幕纹理偏移以创造水下视觉效果。
摘要由CSDN通过智能技术生成

简单的水面模拟

在这里插入图片描述

主要思路

①通过GrabPass获取屏幕图像, 模拟折射
②通过环境纹理–Cubemap, 模拟反射
③菲涅尔系数,Time.y
④对屏幕纹理进行偏移,来模拟水下效果

主要代码
Shader "Unlit/water"
{
   
	Properties
	{
   
		_MainTex ("Texture", 2D) = "white" {
   }
		_Color ("Main Color", Color) = (0,0.15,0.115,1)
		_WaveMap("Wave map", 2D) = "bump"{
   }
		_CubeMap ("Environment Cubemap", Cube) = "_Skybox"{
   }
		_WaveXSpeed("Wave Horizointal Speed", Range(-0.1,0.1)) = 0.01
		_WaveYSpeed("Wave Vertical Speed", Range(-0.1,0.1)) = 0.01
		_Distortion ("Distortion", Range(0,100)) = 10
	}
	SubShader
	{
   
		Tags {
    "Queue"="Transparent"  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值