inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

홍정모의 게임 만들기 연습 문제 패키지

1.5 FMOD를 이용한 소리 재생

탱크예제에 포탄 발사소리

300

chat

작성한 질문수 14

0

연습문제 중에 탱크예제에 포탄발사 소리를 넣으려고 하는데

해당 강의에서 배운 내용을 바탕으로 bulletSound()라는 함수를 만들고 

if (isKeyPressedAndReleased(GLFW_KEY_SPACE))

{

for (int i = 0; i < 5; ++i)

{

                        if (bullet[i]==nullptr)

               {

bullet[i] = new MyBullet;

bulletSound();

bullet[i]->center = tank.center;

bullet[i]->center.x += 0.2f;

....

이런식으로 스페이스바 누르면  총알 나가는 구조 안에 bulletSound()를 추가했습니다.

그런데 이렇게하면 bulletSound() 함수 안의

while문(노래끝났으면 break;) 때문에 

효과음이 끝나고나서야 총알이 발사가 됩니다.

bulletSound()함수를 뒤에 위치시켜도 똑같은 결과가 나오구요.

while문을 없애면 소리가 안나오고,

if(!playing) break; 조건을 없애서 

while(true)

{

        system->update();

}

로 하자니 무한반복으로 계속 돌고

어떤 방법을 이용해야 총알과 소리가 같이 나올 수 있을까요

제가 놓치고 있는게 뭔지 알려주시면 감사하겠습니다.

OpenGL oop C++

답변 1

1

홍정모

안녕하세요? 본격적으로 공부를 시작하셨군요.
FMOD 사용자 메뉴얼이나 구글 검색을 통해서 직접 문제를 해결하시는 것이 가장 좋은데 아마 "2.6 싱글톤 - 사운드 엔젠 예제"에서 다시 나오는 것으로 기억을 합니다.

깃허브에서 받은 코드가 왜 강의코드랑 다를까요

0

73

1

Mac vscode 으로 시작하시려는 분들께

0

313

1

마우스 좌우 버튼을 동시에 눌렀을 때의 원의 위치

0

426

1

정답은 어디서볼수있나요?

1

346

2

예제코드

1

491

2

따배C++ 몇 강까지 학습한 후 수강가능 할까요?

1

643

1

15:00 부근 질문 있습니다.

0

420

1

(20.4 참고) 20.4에 해당하는 가이드 페이지가 어디있는지 모르겠습니다.

0

372

1

multimap 질문

0

354

2

도형들의 움직임이 너무 빠릅니다...

0

465

1

vcpkg 설치를 했는데

0

683

2

mutiple bullet 관련 질문 드립니다.

0

481

2

실행 후 화면 꺼짐

0

579

2

예제 파일 실행 시, 에러

1

559

1

아직 못풀어도 괜찮을까요?

0

500

1

코드 열었을 때 오류

1

807

3

코딩공부에 대해서 막히는부분

0

336

1

vcpkg 설치 오류

0

593

2

랜덤값 질문입니다.

0

426

1

vcpkg 다운로드에 문제를 겪고있습니다

1

423

1

if 문에 >= 대신 == 넣으면 작동을 하지 않는 이유가 무엇인가요.

0

283

1

multiple bullet 문제

0

316

1

프로그램 실행 순서 질문

0

273

1

2.2.2 상속으로 깔끔하게 init 메서드 질문

0

228

1