SpriteRenderer组件(精灵渲染器)
---一个用来显示Sprite(精灵)的组件
里面有很多选项,我们先看这几个:
1.Sprite(精灵):表示当前显示Sprite(精灵的)组件。
如果我们想把一个精灵换成另一个精灵(一个水果换成另一个水果)的话,需要先删除场景中的精灵,再把项目里的精灵拖到场景中,这样是不是很麻烦呢?有没有简便的方法呢?当然有啊,不然我为什么要写这么多话?
点击精灵的选项进行更换就行了!
西瓜成功变成番茄。
还有一种方法,可以直接拽过去:
2.Color:给Sprite(精灵)叠加的颜色。
只是叠加一个颜色,并不是更改颜色,注意!不是更改颜色!
3.Flip:翻转。
翻转精灵的方向。
4.SortingLayer:排序层。
当我们做2D游戏的时候,建筑物或者背景图一般情况下,都会在玩家的背后,所以,我们肯定要让玩家操控的人物挡住建筑物,这样玩家才能看见自己干了什么,怎么做才可以呢?
假设西红柿是任务,西瓜是建筑物,这样肯定不行。
改变的方法有两种:
1.改成3D场景,通过Z轴改变:
就可以变成我们预想的这样:
但是这样改很烦,一但物体多了之后,就需要一个一个去改;而且我们这个游戏是2D的,修改Z轴显然不合理。
所以我们需要用到SortingLayer(排序图层)选项
先添加
这里这个命名的是番茄
这里上面命名的就是西瓜。
Layer越往下,优先级越高,就离我们的屏幕越近。
5.OrderinLayer:排序值。
这里的数值又是什么呢?先说结论:修改同级的优先级,什么意思呢?看图吧:
这两个的图层都是番茄吧,相同图层的顺序,数值越高的离屏幕越近,相反数值越低的,离屏幕越远。
也可以在代码里面修改:
这样游戏运行后就会变成,精灵3--橙子的模样。
public class L3_2Demo : MonoBehaviour
{
private SpriteRenderer SR;
public Sprite sp;
void Start()
{
SR = GetComponent<SpriteRenderer>(); //获取游戏物体身上的组件给 SR
SR.sprite = sp;
SR.color = Color.black;
}
}