您的位置:首页 > 移动开发 > Unity3D

【Unity2D游戏制作(三)】通过渲染图片改变角色运动时的方向

2020-04-20 16:19 946 查看
  • 当你拥有角色四个不同方向的图片时,通过Sprite Renderer组件中的Sprite改变渲染图片来更改运动时的方向。
private SpriteRenderer sr;
//声明一个变量用来获取角色的SpriteRenderer组件。
public Sprite[] kSprite;
//声明一个Sprite数组用来访问需要更改渲染的图片。
//用public访问修饰符访问,可在Inspectoe菜单的代码组件中直接访问到。
//将角色的上下左右状态图片依次拖入代码组件的sprite数组中。则上下左右依次对应下标为0,1,2,3。(也可以随意拖动,只要调用时一一对应即可。)
private void Awake()
{
sr = GetComponent<SpriteRenderer>();
}
//在调用前通过Awake获取SpriteRenderer组件。
void Uptade()
{
float h = Input.GetAxisRaw("Horizontal");
transform.Translate(Vector3.right*h*Time.deltaTime, Space.World);
//水平方向位置移动,详解看上节代码
if(h < 0)
{
sr.sprite = kSprite[2];
//按下左方向键时,h = -1。更改SpriteRenderer组件中sprite的值为左方向图片。
}
else if(h > 0)
{
sr.sprite = kSprite[3];
//按下右方向键时,h = 1。更改SpriteRenderer组件中sprite的值为右方向图片。
}

float v = Input.GetAxisRaw("Vertical");
transform.Translate(Vector3.up*v*Time.deltaTime, Space.World);
if(v < 0)
{
sr.sprite = kSprite[1];
}
else if(v > 0)
{
sr.sprite = kSprite[0];
}
//垂直方向同理。
}
  • 现在运行我们的unity,角色就可以根据你的按键转变方向了。
  • 点赞 2
  • 收藏
  • 分享
  • 文章举报
Kyy@ 发布了12 篇原创文章 · 获赞 10 · 访问量 424 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: