뽐뿌
뽐뿌와는 상관없지만 알아두면 좋은, 두고두고 볼 수 있는 정보를 공유하는 공간입니다. [생활정보 이용규칙]
정말 쉬운 코딩 강의를 만들었습니다. (파이썬 활용편 / 게임개발 / 3시간) 172
분류: 기타정보
이름: hafali0711


등록일: 2020-05-06 21:13
조회수: 16002 / 추천수: 185


1.gif (382.1 KB)
2.png (11.4 KB)

More files(21)...


안녕하세요!
 
 
지난 3월에 올린 기본편에 이어서 파이썬 활용편 강의를 만들어서 글을 올립니다.
 
 
 
[지난글] 정말 쉬운 코딩 강의를 만들었습니다. (파이썬 기초, 6시간)
 
 
많은 분들이 파이썬 기초까지는 잘 배우지만
 
 1. 초보를 벗어나 중급자로 실력을 키우려면?

 2. 파이썬을 가지고 뭘 할 수 있는지?
 
이 2가지로 어려움을 겪고 있는 줄로 압니다.
 
 
 
그래서 저는 이 분들을 위해서 다양하면서도 쓸모 있는, 

총 8개의 실전 프로젝트를 만들며 실력을 키울 수 있는 강의를 제작하기로 하였습니다.

그리고 그 첫번째 프로젝트가 바로 '게임 개발'입니다.
 

1.gif

 




이 게임 아시나요?
 
저도 예전에 오락실에서 종종 했었는데요, 캐릭터가 무기를 쏴서 공을 맞추어 없애는 간단한 게임입니다.

2.png

 



파이썬에는 pygame 이라는 유명한 라이브러리가 있구요, 
 
이것을 활용하면 몇 줄 안되는 코드로 손쉽게 게임을 제작할 수 있답니다.
 
실제로 위 게임을 주석 빼고 약 250 줄의 코드로 만들었어요 ^^

 
 

게임에는 이미지 리소스가 반드시 필요한데요

따로 이미지도 다운로드 받고 편집이라는 번거로운 작업도 거쳐야 해서
 
관련 프로그램을 잘 다루시는 분들이 아니라면 불편하실 수가 있습니다.

3.png

 



그래서 저는 그림판을 통해 쉽게 가짜 이미지를 만들어서 강의를 진행하고
 
원하시는 분은 나중에 따로 이미지 편집을 통해 입혀보실 수 있도록 준비했습니다.

이런 이미지로 만들어서 작업하니까 시간 낭비도 없어요 ^^

4.png

 





게임 개발 프로젝트는 이런 식으로 진행됩니다.

*개발환경 : VSCode, Python 3.x

pygame 기본 사용법을 크게 아래 4단계로 먼저 공부하는데요
 
 
 
1. 배경을 하나 만들어 넣어보구요

5.png

 



2. 빨간 게임 캐릭터도 넣어봅니다

6.png

 



3. 이제 캐릭터를 움직여 봐야지요?
 
키보드를 통해 캐릭터를 움직이는 공부를 진행합니다.

7.gif

 



4. 노란색 적군(소위 나쁜놈) 을 하나 넣구요
 
그리고 충돌 체크를 통해 게임을 종료하는 로직을 넣어봅니다.

8.gif

 



기초는 이 정도면 충분합니다.
 
게임 프레임을 정리하는 시간을 잠깐 가지고 나서
 
공부하시는 분들이 직접 복습 해보실 수 있게 퀴즈를 하나 드립니다.

퀴즈.png

 



퀴즈는 '똥 피하기' 게임이구요,
 
이런 걸 직접 만들어 봅니다.

9.gif

 




우리 강의에서는 똥은 하나씩만 떨어지도록 처리하면 되구요

10.gif

 



이렇게 완성하고 나면 게임 이미지를 입혀서 그럴듯하게 만들어봅니다.

11.gif

 









마지막으로, 진짜 게임 프로젝트를 진행해봅니다.

프로젝트.png

 



1. 이제 한 번 해봤으니 배경과 캐릭터를 바로 넣구요

14.png

 



2. 키보드를 통해 좌우로 움직이며 무기도 쏴 봅니다
 
원본 게임에서는 무기를 딱 한 발씩만 쏠 수 있는데,
 
프로젝트에서는 무한대로 쏠 수 있게 합니다. (개발자 마음이죠 ㅋㅋ)
 
 

15.gif

 



3. 이제 공을 튕겨볼까요?
 
편의상 공은 네모라고 가정할게요
 
바닥에 튕기며 속도 조절도 하고 벽에 닿으면 방향도 바꿉니다
 
 

16.gif

 



4. 무기에 닿으면 충돌 감지를 통해 공을 나누어야겠지요

17.gif

 



5. 나머지 세세한 부분 구현 및 버그까지 잡고 나서 게임 이미지만 바꿔주면

18.png

 


 

19.png

 



20.gif

 



이렇게 게임이 완성됩니다.


21.gif

 



어때요? 원본과 비슷한가요?



22.png

 






단 3시간 만에 기초/퀴즈는 물론 프로젝트까지 진행합니다.

(시간배분)
1:00 기본기
0:15 퀴즈
1:35 프로젝트


비록 pygame 에 대해 모든 것을 다루지는 않지만,
 
이 정도만 하셔도 취미 삼아 충분히 다양한 게임을 만들 수 있을거라 생각합니다.



파이썬을 기초까지는 배우셨는데 한단계 더 나아가고 싶으신 분들,
 
내 손으로 게임 한 번 만들어 보고 싶으신 분들께 권해 드립니다. ^^
 
 
 
(활용편 게임개발)

 
 
 
 
 

아직 파이썬을 배우지 않으신 분들,
 
이 참에 공부 한 번 해볼까 하시는 분들은 기본편 먼저 공부해주세요.


(기본편)






영상 하나에 모든 내용을 집어넣어서 재생시간이 꽤 깁니다.
 
고정 댓글에 적어둔 목차의 링크를 통해 편하게 이동 가능하구요.
 
* 광고는 1초도 없으니 쾌적하게 보세요 ^^






이 강의 이후 커리큘럼은 대략 이렇게 구상중입니다.

1. 게임 개발 (업로드 완료) 
 - 오락실에서 하던 Pang 게임
 
*2. GUI 프로그래밍 (제작 중)
 - 영상에서 캡처한 이미지들을 하나로 합치는 프로그램
   대충 이런 식의 프로그램을 만들어봅니다 ^^

23.gif

 



3. 웹스크래핑
 - 내가 원하는 뉴스를 매일 자동으로 긁어오는 프로그램

4. 업무자동화
 - 엑셀, 인터넷, 데스크탑 등 컴퓨터에게 일을 시키는 스크립트

5. 데이터 분석 및 시각화
 - 빅데이터를 활용한 대한민국의 인구 문제 분석

6. 얼굴 인식
 - 이미지 / 영상에서 얼굴을 인식하여 얼굴 위에 재밌는 캐릭터 씌우기

7. 머신러닝
 - KNN 을 통해 사용자별 영화 추천 시스템 개발

8. 사물인터넷
 - 아두이노를 활용한 RC Car 제작



작은 지식이나마 코딩 공부하시는 분들께 도움되면 좋겠습니다.

감사합니다. ^^

본 게시글은 작성자에 의해 2020-05-06 21:17:21에 최종 수정되었습니다. (2회)


추천 185

다른 의견 0

1 2 3 4 5 6 7 8 9 10 .. 18 다음  

상대에게 상처를 줄 수 있는 댓글은 삼가주세요.
직접적인 욕설 및 인격모독성 발언을 할 경우 제재가 될 수 있습니다.
이모티콘 사진  익명요구    다른의견   
△ 이전글▽ 다음글 -목록보기