gpt4 book ai didi

C++ SFML - 如何制作弹跳 Sprite ?

转载 作者:行者123 更新时间:2023-11-28 05:42:53 27 4
gpt4 key购买 nike

我尝试使用 SFML 使用 C++ 制作 2D 游戏。我画了 Sprite ,现在我想让那个 Sprite 自动移动到随机方向,当它撞到墙上时,它会弹开并改变方向。我不知道如何做自动移动 Sprite 从墙上反弹的东西......所以请帮助我。

最佳答案

sf::Sprite 有一个成员函数 setPosition (float x, float y) 可以用来在绘制之前设置 Sprite 的位置。通过将 Sprite 移动到每帧的新位置,您可以创建运动的印象,就像卡通一样。通过将 sprite 的位置与场景中其他元素(如墙壁)的位置进行比较,您可以计算出两个物体何时碰撞并采取适当的行动。通常它是这样工作的:

  • 在新帧的开始重置时钟,例如可以使用sf::Clock 或 C++ 的 chrono。
  • 更新场景中应该移动的所有元素的位置,例如:ObjectSpeed * 前一帧时间
  • 绘制框架
  • 保存计算下一帧的时间
  • 循环

关于C++ SFML - 如何制作弹跳 Sprite ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36795254/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com