분류 | 게시판 |
베스트 |
|
유머 |
|
이야기 |
|
이슈 |
|
생활 |
|
취미 |
|
학술 |
|
방송연예 |
|
방송프로그램 |
|
디지털 |
|
스포츠 |
|
야구팀 |
|
게임1 |
|
게임2 |
|
기타 |
|
운영 |
|
임시게시판 |
|
옵션 |
|
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로 줘서 그런건지 그냥 위로 올라가기만 해버리더라구요 어떻게 해야 해결 할 수 있을 까요 ??
죄송합니다. 댓글 작성은 회원만 가능합니다.