如何在unity 2d中翻转复合字符?



我真的需要Unity 2D的帮助。目标是让玩家在向左移动时翻转,在向右移动时返回。在互联网上有很多选择,如何通过精灵渲染来做到这一点。但问题是,我的角色是由部分组成的,因为动画是骨。每个部分都可以翻转。当你在对象本身的精灵渲染中打开翻转时,什么都不起作用。问题是如何一下子使整个人物发生政变?如果没有,又该如何做呢?

你应该按比例翻转,它会影响所有组件。文档中也提到了。

我相信您在教程中熟悉Input.GetAxisRaw ("Horizontal")。以最简单的方式返回该字符:

var xAxis = Input.GetAxisRaw("Horizontal");
if (xAxis != 0) transform.localScale = new Vector3(xAxis, 1, 1);

在此脚本中,如果Axis不为0(没有按下键或停止按),则设置精灵的ScaleX等于xAxis方向。

就像oistikbal说的,像这样使用缩放:

void Update()
{
if (Input.GetKeyDown(KeyCode.A))
{
transform.localScale = new Vector3(-1, 1, 1); ;
}
if (Input.GetKeyDown(KeyCode.D))
{
transform.localScale = new Vector3(1, 1, 1); ;
}
}

当按下A/D键时,比例被改变,字符被翻转。

最新更新