当角色面向左右时翻转 2D 子弹精灵

Posted

技术标签:

【中文标题】当角色面向左右时翻转 2D 子弹精灵【英文标题】:Flip 2D bullet Sprite when character facing left of right 【发布时间】:2021-11-18 10:54:58 【问题描述】:

当我向右射击时,子弹向右,Sprite 子弹动画面向右侧,但是当我向左射击时,子弹向左,但 Sprite 动画仍然面向右侧,我该如何解决这个问题?

【问题讨论】:

this 或 this 有帮助吗? 【参考方案1】:

我不太了解您的项目以及所有内容的结构,所以我只能为您提供一些虚拟代码:

在实例化子弹之后,只需翻转子弹 Sprite:

public GameObject bulletPrefab;

public void Shoot(bool movesLeft)

    GameObject bulletObj = Instantiate(bulletPrefab);

    if (movesLeft) // flip Sprite when the player shoots to the left
    
        Vector2 scale = bulletObj.transform.localScale;
        scale.x = -scale.x;
        bulletObj.transform.localScale = scale;
    

    // set position, movement, ...

【讨论】:

我是新手,正如您从我的问题中看到的那样,哈哈,这段代码对我不起作用,或者我不知道如何使用它。无论如何我放弃了,我只是要去使用在两个方向上看起来都一样的子弹精灵,比如球体或其他东西。非常感谢 我只想在玩家面朝左的时候在子弹精灵上翻转X哈哈

以上是关于当角色面向左右时翻转 2D 子弹精灵的主要内容,如果未能解决你的问题,请参考以下文章

在画布中翻转精灵

如何使用 HTML5 Canvas 水平翻转精灵?

敌人的精灵不会向左翻转

Cocos2d-x《赵云要格斗》--虚拟摇杆控制精灵上下左右运动

Python——飞机大战(day10)

如何使用新的 Unity4.3 2D 框架正确翻转 2D 角色? (动画期间游戏对象的旋转)