水波荡漾效果+渲染顺序+简单UI绘制

创建场景及布置

创建新场景Main,在Main场景中创建一个plane物体,命名为WaterWavePla,具体数值及层级面板排布如下:

编写脚本

创建一个文件夹,用于存放脚本,命名Scripts,创建一个子文件夹Effect,存放特效相关脚本,创建脚本,命名Ef_WaterWave。

脚本代码如下:

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Ef_WaterWave : MonoBehaviour {
	public Texture[] textures;
	private Material material;
	private int index = 0;
	void Start () {
		material = GetComponent<MeshRenderer>().material;
		InvokeRepeating("ChangeTexture", 0, 0.1f);
	}
	void ChangeTexture () {
		material.mainTexture = textures[index];
		index = (index + 1) % textures.Length;
	}
}

将脚本挂载到WaterWavePla物体上,拖拽水波纹的图片组到Texture[]数组中,如下图所示:

运行游戏,实现效果如下:

渲染顺序

新建一个Canvas物体,命名Order90Canvas,将其Canvas组件中的Order in Layer数值改为90。

UI绘制

创建空物体ButtonPanel(在UGUI中,空物体作为其他UI组件的父物体时,其锚点锁定应与其父物体大小一致),添加两个子物体(UI->Image),添加Button组件,设置默认图及点击时更换的图片,在Order90Canvas下创建子物体,命名CountdownPanelImg,创建Text子物体,命名Timer,相关数据如下:

复制Timer,重命名RewardButton,文本内容"奖金",添加Button组件,默认取消勾选。

层级面板排布如下,运行游戏,测试几个按钮的可用性:

本栏目为网络课程学习笔记,仅供学习参考使用。

相关推荐
SmalBox1 小时前
【光照】[漫反射]UnityURP兰伯特能量守恒吗?
unity·渲染
SmalBox1 天前
【光照】[漫反射diffuse]以UnityURP为例
unity·渲染
SmalBox2 天前
【光照】[自发光Emission]以UnityURP为例
unity·渲染
SmalBox3 天前
【光照】Unity中的[经验模型]
unity·渲染
萘柰奈3 天前
Unity学习----【进阶】TextMeshPro学习(三)--进阶知识点(TMP基础设置,材质球相关,两个辅助工具类)
学习·unity
Yasin Chen3 天前
Unity UI坐标说明
ui·unity
陈言必行3 天前
Unity 性能优化 之 编辑器创建资源优化( 工作流 | 场景 | 预制体)
unity·编辑器·游戏引擎
1uther4 天前
Unity核心概念⑨:Screen
开发语言·游戏·unity·c#·游戏引擎
死也不注释4 天前
【Unity UGUI 交互组件——Slider(7)】
unity·游戏引擎·交互
程序猿多布4 天前
XLua教程之热补丁技术
unity·c#·lua·xlua