어제인가 그저께인가에 이어서 작업. 입력을 받는 부분 위주로 만들었다.

 그리고 앞서 2015/09/25 - [프로젝트 일지/게임 프로그래밍] - 심심풀이 습작 - 2일차 에서 책을 좋게 평가했는데, 진행하다보니 문제가 많다.

책이 몇 판인지는 모르겠지만(사실 개정판은 없을 것 같다) 간간히 오류가 있고, 내가 놓쳤는지 아무리 책을 뒤져도 내용이 나오질 않는 함수가 있다. 뭘까 이거.. 대충 이런 함수겠거니 하고 만들긴 했지만 은근 신경쓰인다. 이것 뿐만 아니라 전체적으로 설명이 좀 빈약하고 오류가 있음. 컴파일이 안될 수 밖에 없는 코드가 예제로 들어가있을때는 이 저자는 대체 소스를 어디서 어떻게 만들어내는지 궁금하기도 하다. 완성품을 다 만든 상태에서 대충대충 과정을 보여주느라 그런걸까?

 원서라 영알못인 내가 감히 이렇게 평가를 내는 게 꺼림칙해서 아마존 쪽 리뷰도 찾아봄. "발상은 좋았으나 세련됨이 딸린다.", "이 책의 코드는 버그로 가득차 있다!"(....). 그래도 시작한 이상 끝은 봐야겠지........


오늘한 것

  • 조이스틱을 초기화하고 입력을 받을 수 있도록 함. 사실 키보드로 만드는 게 정석일텐데, 어쩌다보니 이렇게 되었다. 키보드로 바꾸는거야 간단하지만 처음에는 조이스틱용 코드인지도 모르고 그냥 치다가 중간부터 '응...?' 싶었다. 새로운 경험이 될 듯.
  • 입력에 따라 움직......일 터인데...분명 상하좌우만 움직이는데 뭔가 이상하다. 어째서인지 대각선으로 간..다?
    • 혹시 조이스틱 문제인가 싶어서 장치관리자에서 입력을 따로 확인해보았는데 딱히 보이는 문제는 없음......
    • 이상한 점이 많은 게 0,1,3,4번축을 입력으로 받는데(예제상) 0번축만 조작했는데 뜬금없이 1번축도 조작이 들어온다.
    • 보통 0번축이 x축, 1번축은 y축 이렇게 사용될텐데 내가 쓰는 조이스틱은 뜬금없이 4번축을 y축으로 사용한다;;
    • 짜증나서 걍 1번축 3번축을 주석처리했다. 1번 축 입력은 대체 왜 잡히는 것일까. 다른 조이스틱도 확인해보고 싶은데 찾기가 귀찮은 관계로 생략.. 일단은 해결됨.
  • 마우스 입력을 처리하자니 갑자기 화가 나기 시작한다. 시부럴 글을 쓰는 지금 어디선가 폭죽을 터뜨리는 것 까지 짜증난다. 왜 폭죽질이여! 마우스 입력 하나하나까지 벡터로 받아서 처리하는 저 깐깐함이 짜증나는 것이다.
  • 키보드 입력을 받아 이동하는 부분을 만들었다. SDL_GetKeyboardState 함수를 이용하면 편하게 만들 수 있다는 사실을 알게 되었다.
    • 해당 함수는 const Uint8 *를 반환하는 함수이다. 이걸 받아 배열처럼 사용하고(Uint8*로 캐스팅할 것), 인덱스는 SDL_SCANCODE 상수로 사용하면된다.
      • if( m_pKeyState[_key] == 1 ) 이런식으로 말이다. 여기서 _key에 들어가는 값은 앞서 말했다시피 SDL_SCANCODE값.
  • 코드 정리. 약간 짜증나는 게 있다...........왜 갑자기 소스를 참고하라며 생략이 되는 것인가....이거때문에 코드 좀 갈아엎었는데... 심지어 함수 두개는 어떻게 쓰는지 알려주지도 않아..... 빌어먹을 예제는 일일이 사이트에 들어가 이메일이랑 이름을 쳐서 메일로 들어가 받아야 하고 말이다.
  • 게임 상태를 관리하는 부분에 들어가기 시작해따..


투 비 컨티뉴드...... 벌써 책의 절반 가까이 왔다. 한 게 아무것도 없는 것 같은데..

'프로젝트 일지 > 게임 프로그래밍' 카테고리의 다른 글

심심풀이 습작 - 6일차  (1) 2015.10.11
심심풀이 습작 - 5일차  (0) 2015.10.09
심심풀이 습작 - 3일차  (0) 2015.10.07
심심풀이 습작 - 2일차  (0) 2015.09.25
심심풀이 습작 - 1일차  (0) 2015.09.24

+ Recent posts