unity3d显示圆形或异形背景
2016-04-05 16:54
1541 查看
在unity3d里显示圆形的背景。有两种方式,一种是在GUI上显示,通常是用在UI上。另外一种是通过3D的Plane显示,这种时候用在游戏场景里,例如做游戏的小地图。然后,ngui的方式也比较简单。
添加panel,在panel下再添加一个image
把图片背景添加到image上
为panel添加一个mask组件
把圆形添加到panel上
这个时候,就能看见一个圆形的背景图了。
如果把五角形添加在panel上,看到的就是五角形的背景。
首先添加一个Shader
改个名字
双击以后编辑内容
在ps里面做一个黑底,白圆。存为tga格式
找到导入的tga文件
重新设置属性如下
在场景里添加一个Plane,并把背景拖到plane上
选中生成的材质
将Shader属性改为Custom/Mask
设置Mask Texture属性为 Mask,这个时候在编辑器里就变成圆的了。
需要把摄像机的Clear Flages属性设置为Depth only
运行预览,就能看见圆的背景了。使用的时候,需要双摄像机,一个显示背景,一个显示内容。
首先添加一个panel,设置为Texture Mask,然后把圆形的png图片拖进去
在panel下添加一个ngui对象,我添了一个2d sprite,把背景图片拖进去
运行,ok。ngui果然好用啊
1、GUI显示
添加背景图片,添加连个图片,分别是透明背景,黑色圆形和黑色五角,png图片。添加panel,在panel下再添加一个image
把图片背景添加到image上
为panel添加一个mask组件
把圆形添加到panel上
这个时候,就能看见一个圆形的背景图了。
如果把五角形添加在panel上,看到的就是五角形的背景。
2、plane方法
这种方法适合用来做小地图。首先添加一个Shader
改个名字
双击以后编辑内容
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格式
找到导入的tga文件
重新设置属性如下
在场景里添加一个Plane,并把背景拖到plane上
选中生成的材质
将Shader属性改为Custom/Mask
设置Mask Texture属性为 Mask,这个时候在编辑器里就变成圆的了。
需要把摄像机的Clear Flages属性设置为Depth only
运行预览,就能看见圆的背景了。使用的时候,需要双摄像机,一个显示背景,一个显示内容。
3、ngui显示
在ngui里面,也比较简单首先添加一个panel,设置为Texture Mask,然后把圆形的png图片拖进去
在panel下添加一个ngui对象,我添了一个2d sprite,把背景图片拖进去
运行,ok。ngui果然好用啊
相关文章推荐
- iTween基础之Color(变换颜色)
- Unity Shader 效果学习
- 使用Mali Graphics Debugger调优Unity程序(Killer示例)
- Unity3D 烘焙 对游戏包的影响
- Unity 设置图片和屏幕的分辨率
- 联机Unity Profile技巧--mac
- Unity 5.3 官方VR教程(二) 创建第一个VR项目
- Unity 如何让using resolution为真正的分辨率
- 承接Unity3D外包公司 — 技术分享
- Unity轻量数据保存
- Unity Animator的使用技巧
- unity animator 基本属性
- UnityVS(Visual Studio Tools For Unity)的下载、安装与使用
- MICROSOFT VISUAL STUDIO COMMUNITY 2015软件许可条款
- unity5与android通信报错
- Unity初级工程师面试指导
- Unity3D中级开发工程师面试指导
- [转] Unity Mathf 数学运算(C#)
- 【Unity】4.1 创建组件
- 【Unity】4.0 第4章 创建基本的游戏场景