gpt4 book ai didi

c - 在 C 中使球从物体边缘反弹

转载 作者:行者123 更新时间:2023-11-30 21:10:00 26 4
gpt4 key购买 nike

我正在尝试使球从矩形桨的边缘弹起,到目前为止我所做的就是使球从桨的顶部边缘弹起。但是,每当球接触任何另一侧(右侧或左侧)时,它就会卡在 Racket 内,并且不会弹开。

为了使球从 Racket 顶部弹起,我使用了下面的直接代码:

// bounce ball off paddle
if (object == paddle)
{
velocityY = -velocityY;
}

任何人都可以帮我增强这段代码,以便它可以检测球是否接触到 Racket 的右侧或左侧,并使其弹开。

请注意,我使用的是 C。

谢谢,

最佳答案

就像您对 Y 轴所做的那样,在发生碰撞后

velocityX = -velocityX

如果你想要“更精致”的东西,你可以尝试制作类似的东西

if (currentX + ball_radius >= MAX_WIDTH)
velocityX = -velocityX;
if (currentY + ball_radius >= MAX_HEIGHT)
velocityY = -velocityY;

其中点 (currentX, currentY) 代表球的中心。

关于c - 在 C 中使球从物体边缘反弹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32667339/

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