考虑到每个人基础可能不一样,且并不是所有人都有同时做2D、3D开发的需求,所以我把 【零基础入门unity游戏开发】 分为成了
C#篇、unity通用篇、unity3D篇、unity2D篇
。
- 【C#篇】:主要讲解C#的基础语法,包括变量、数据类型、运算符、流程控制、面向对象等,适合没有编程基础的同学入门。
- 【unity通用篇】:主要讲解unity的基础通用的知识,包括unity界面、unity脚本、unity资源管理、unity动画、unity摄像机等,适合unity初学者入门。
- 【unity3D篇】:主要讲解unity3D的知识,unity3D角色、unity3D物理系统、unity3D光照等,适合只想做2D游戏的开发者学习。
- 【unity2D篇】unity2D篇:主要讲解unity2D的知识,包括unity2D角色、unity2D物理系统、unity2D光照等,适合只想做3D游戏的开发者学习。
这样方便大家按需选择性的去学习,比如有编程基础的大概率可以直接从unity通用篇开始入门,没有编程基础的建议从C#篇开始学习。只想做2D游戏的话,可以直接从unity2D篇开始学习,3D篇大概率就不需要看了,节约学习时间成本。
文章目录
- 一、SpriteMask精灵遮罩是什么
- 二、创建SpriteMask精灵遮罩
- SpriteMask组件参数介绍
- 1、Sprite 精灵
- 2、Sprite排序点
- 3、Alpha Cutoff Alpha修剪
- 5、Custom Range 自定义范围
- 三、实战
- 1、制作圆形头像
- 2、实现类似相框的效果
- 3、实现图片背景消融渐变效果
- 专栏推荐
- 完结
一、SpriteMask精灵遮罩是什么
SpriteMask是精灵遮罩的意思。它的主要作用就是对精灵图片产生遮罩,制作一些特殊的功能,比如只显示图片的一部分让玩家看到。常常用于制作玩家圆形头像、场景过渡、镂空图。
一般要和配合使用SpriteRenderer精灵渲染器组件的Mask Interaction 遮罩交互
参数配合使用
实战参考:【unity实战】2d血液飞溅喷射到墙上和TileMap上,留下血迹的效果
二、创建SpriteMask精灵遮罩
创建精灵遮罩后在精灵遮罩组件选一个图片。再创建一个2D精灵选择一张图片。把2D精灵调成可以和遮罩交互的模式。可以看到遮罩效果。
SpriteMask组件参数介绍
1、Sprite 精灵
遮罩图片。决定了遮罩的轮廓。
2、Sprite排序点
计算摄像机和精灵之间距离时,使用精灵中心Center还是轴心点Pivot,一般情况下不用修改。
3、Alpha Cutoff Alpha修剪
透明度的分界线。比如设为0.5时:50%透明度以上的区域显示。
下面实战举例会详细介绍如何使用。
5、Custom Range 自定义范围
自定义遮罩范围。可以实现只遮罩影响部分图层。
只有>=back(背部
),且<front(前面
)的排序层都会被渲染。比如Back=0, Front=5 时:只影响排序层0-4的对象。
三、实战
1、制作圆形头像
- 使用SpriteRenderer组件,在场景放置一个2d对象
- 设置SpriteRenderer组件遮罩交互为
遮罩中可见
- 新增一个遮罩
- 将遮罩移动到人物头的位置
- 可以选择不同的遮罩图形
- 修改SpriteRenderer组件遮罩交互为
遮罩外可见
2、实现类似相框的效果
配合Sorting Group 组件使精灵遮罩只对自己的子节点起作用
- 跟前面类似,不过把2d对象变为遮罩的子物体,实现类型相框的作用
- 但是当然没有这么简单,我们复制多个对象看看效果。发现遮罩间会互相产生效果
- 解决方案,为每个对象的父物体,也就是遮罩添加Sorting Group 组件,可以使精灵遮罩只对自己的子节点起作用。Order in Layer可以设置渲染层级(前后遮盖效果)
- 效果
3、实现图片背景消融渐变效果
Alpha Cutoff透明度裁剪的使用
- 随便再网上下载一张封面图
- 导入封面图片到unity,配置基本不需要修改,为了规范可以修改模式为单一图。
- 拖入图片进场景,设置SpriteRenderer组件遮罩交互为
遮罩中可见
- 随便在网上下载一张带颜色渐变的图片作为遮图
- 导入图片进unity,设置图片Alpha源为
从灰度
,将他变成一张【带有透明度的图片】
- 添加遮罩,记得遮罩要覆盖前面的封面图
- 修改Alpha Cutoff 值效果
这就实现了一个简易的消融效果,之前我其实也用Shader Graph制作过一个消融效果:【实现100个unity特效之9】Unity 2D Shader Graph溶解效果教程,对比使用遮罩当然要简单很多,当然效果自然也没那么好。
专栏推荐
地址 |
---|
【零基础入门unity游戏开发——C#篇】 |
【零基础入门unity游戏开发——unity通用篇】 |
【零基础入门unity游戏开发——unity3D篇】 |
【零基础入门unity游戏开发——unity2D篇】 |
【制作100个Unity游戏】 |
【推荐100个unity插件】 |
【实现100个unity特效】 |
【unity框架/工具集开发】 |
完结
好了,我是向宇
,博客地址:https://xiangyu.blog.csdn.net,如果学习过程中遇到任何问题,也欢迎你评论私信找我。
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注
,你的每一次支持
都是我不断创作的最大动力。当然如果你发现了文章中存在错误
或者有更好的解决方法
,也欢迎评论私信告诉我哦!