unity3d显示圆形或异形背景

在unity3d里显示圆形的背景。有两种方式,一种是在GUI上显示,通常是用在UI上。另外一种是通过3D的Plane显示,这种时候用在游戏场景里,例如做游戏的小地图。

1、GUI显示


添加背景图片,添加连个图片,分别是透明背景,黑色圆形和黑色五角,png图片。

unity3d显示圆形或异形背景_第1张图片


添加panel,在panel下再添加一个image

unity3d显示圆形或异形背景_第2张图片


把图片背景添加到image上

unity3d显示圆形或异形背景_第3张图片


为panel添加一个mask组件



把圆形添加到panel上

unity3d显示圆形或异形背景_第4张图片


这个时候,就能看见一个圆形的背景图了。



如果把五角形添加在panel上,看到的就是五角形的背景。

unity3d显示圆形或异形背景_第5张图片


2、plane方法

这种方法适合用来做小地图。


首先添加一个Shader

unity3d显示圆形或异形背景_第6张图片


改个名字

unity3d显示圆形或异形背景_第7张图片


双击以后编辑内容

Shader "Custom/Mask"
{
	Properties
	{
		_MainTex("Main Texture",2D)="white"{}
		_Mask("Mask Texture",2D)="white"{}
	}
	SubShader
	{
		Lighting On
		Zwrite Off
		Blend SrcAlpha OneMinusSrcAlpha
		 Pass {
		SetTexture [_Mask] {combine texture}
		SetTexture [_MainTex] {combine texture,previous}
		}
	}
}

在ps里面做一个黑底,白圆。存为tga格式

unity3d显示圆形或异形背景_第8张图片


找到导入的tga文件

unity3d显示圆形或异形背景_第9张图片


重新设置属性如下

unity3d显示圆形或异形背景_第10张图片


在场景里添加一个Plane,并把背景拖到plane上

unity3d显示圆形或异形背景_第11张图片


选中生成的材质

unity3d显示圆形或异形背景_第12张图片


将Shader属性改为Custom/Mask

unity3d显示圆形或异形背景_第13张图片


设置Mask Texture属性为 Mask,这个时候在编辑器里就变成圆的了。



需要把摄像机的Clear Flages属性设置为Depth only

unity3d显示圆形或异形背景_第14张图片


运行预览,就能看见圆的背景了。使用的时候,需要双摄像机,一个显示背景,一个显示内容。


你可能感兴趣的:(unity3d,圆形背景)