옵션 |
|
void mainGame::fire()
{
fireAngle = (float)(PI*_pi) / 180;//라디안값
ptX = 300 + x + cos(fireAngle);// 초기값
ptY = 700 + y + (sin(fireAngle));//초기값
}
void mainGame::move()
{
if (bullet.fire == true)
{
ptX += (cos(fireAngle)*speed);
ptY += (-sin(fireAngle)*speed);
bullet.rc = RectMakeCenter(ptX, ptY, 10, 10);
}
이 부분인데요 . 위 식대로 총알을 발사 하는 것입니다. 위의 코드는 직선으로는 날아갑니다.
위 식에 중력을 추가 해서 ptY에 +=(-sin(fireAngle)*speed)-(0.5*9.8)); 로표현을 했는데
원래 진행 시간인 t 값을 1로 줘서 그런건지 그냥 위로 올라가기만 해버리더라구요 어떻게 해야 해결 할 수 있을 까요 ??