[[TableOfContents]] = 비행기 게임 = * 비행기 ê²Œìž„ì„ í•œë²ˆ 만들어 봅니다. * Pythonì„ ìµížˆëŠ” ê³¼ì •ê³¼ 비행기 만드는 ê³¼ì •ì€ ê±°ì˜ ë™ì‹œì— ì´ë£¨ì–´ì§„다. * 기초ì ì¸ ê²ƒë“¤ì€ ë¨¼ì € ìµížŒë‹¤. {{{ 누가, ì–¸ì œ, 어디서, 무엇ì„, 왜, 어떻게 }}}중 들어가야 í• ê²ƒì€? = 공지 = * ì¸ìˆ˜ì•¼~ 재ë™ì•„ ì–¸ì œ 한번 모ì´ìž~~~~~ * 오늘 11ì‹œì— ëª¨ì´ê¸°ë¡œ 했는뎅.. ì•„ë¬´ë„ ì•ˆì™”ë‹¹. ã… ã…œ 재ë™ì´ëŠ” 좀 ëŠ¦ëŠ”ë‹¤ê³ í–ˆê³ , ì¸ìˆ˜ëŠ” 왜 안오는 ê±°ì§•.. ì•„...ì—시 팀 프로ì 트는 ì–´ë µë‹¹.. ã… ã…œ - ìƒí˜‘ = ì°¸ì—¬ìž = || 학번 || ì´ë¦„ || ì—í• || || 01 || 남ìƒí˜‘ || - || || 01 || ê°•ì¸ìˆ˜ || - || || 01 || ì‹ ìž¬ë™ || Graphic Design || = ê³µìœ ì†ŒìŠ¤ = * ["비행기게임/BasisSource"] = 현재 í•´ì•¼í• ì¼ = * ë°°ê²½ 움ì§ì´ëŠ” 효과 * ì 기 종류 늘리기 * ì ì˜ ë¯¸ì‚¬ì¼ë„ 다양하게 만들기(ìœ ë„ ë¯¸ì‚¬ì¼ë“±) * ê° ìŠ¤í…Œì´ì§€ 만들기(한 6íŒ ì •ë„..) * ë¹„í–‰ê¸°ì— ë‹¤ì–‘í•œ 무기 만들기 * 그래픽...처리등.. * ë°°ê²½ 움ì§ì´ê¸° * ëª¨ë“ ì´ë¯¸ì§€ ì—…ê·¸ë ˆì´ë“œ * ì „ì²´ 화면 만들기 * 첫 화면 (게임 ì´ë¦„, 스타트, í•˜ì´ ìŠ¤ì½”ì–´, ì´ë¦„ 넣기) * ì•„ì´í…œ = ë난 ì¼ = * í–‰ë™ í•¨ìˆ˜ 만들기, ì 기 ë¯¸ì‚¬ì¼ ë‚˜ê°€ê²Œ 하기 * ì¶©ëŒ ì²˜ë¦¬ ì œëŒ€ë¡œ 하기.. (ã… ã…œ) * ë¯¸ì‚¬ì¼ ë°œì‚¬í• ë•Œ 몇개가 ì—°ì†ìœ¼ë¡œ 나가는거 해결하기 * í”Œë ˆì´ì–´ 비행기 죽기 * ì ê¸°ë„ ë¯¸ì‚¬ì¼ ì˜ê¸° = ì•„ì´ë””ì–´ = * íš¡ 스í¬ë¡¤ 비행기 게임 => 종 스í¬ë¡¤ë¡œ 변경 * ë¯¸ì‚¬ì¼ ì„¸ì§€ëŠ” ì•„ì´í…œ * ë‚˜ì¤‘ì— ë¹„í–‰ê¸° ë³€ì‹ í•˜ëŠ” ì•„ì´í…œ * 맥스페ì¸ì—ì„œì˜ ì‹œê°„ ëŠë ¤ì§€ëŠ” 효과를 내는 ì•„ì´í…œ * 2ì¸ìš© 대결 모드. ìƒëŒ€íŽ¸ê³¼ ë‚´ê°€ ì¼ì •한 ì‹œê°„í›„ì— ë§Œë‚œë‹¤.. ê·¸ 중간 ê³¼ì •ì—서 얼마나 ë§Žì€ ì»´í“¨í„° ì ì„ ê²©ì¶” í–ˆëŠ”ì§€ì— ë”°ë¼ì„œ 무기를 ì—…ê·¸ë ˆì´ë“œ 하거나 한다. * ê·¸ë¦¬ê³ ë¹„í–‰ê¸° ê²Œìž„ì„ í•˜ë©´ 보통 ìžê¸° 비행기 하나 ë¹¼ê³ ë‚˜ë¨¸ì§€ëŠ” 다 ì êµ°ì´ì„œ 막 ìƒê°ì—†ì´ ë¯¸ì‚¬ì¼ ë²„íŠ¼ë§Œ 누루면서 ê°ˆê¸°ëŠ”ë° ê·¸ê²ƒ 보다 아예 ì 기가 나오면서 ë™ì‹œì— ì•„êµ° ë¹„í–‰ê¸°ë„ ì 당히 등장해서 ìžì‹ ì„ ë•게 한다. ì•„êµ° 비행기는 ìžì‹ ì˜ ë¯¸ì‚¬ì¼ì—ë„ ê²©ì¶”ëœë‹¤. ë” ì‹ ì¤‘í•˜ê²Œ 미사ì¼ì„ 누루게 ë 것ì´ë‹¤. ê·¸ë¦¬ê³ ì•„êµ° 비행기를 ê²©ì¶”í• ì‹œì—는 ì¼ì •한 ë²Œì¹™ì´ ìžˆë‹¤. 무기가 한단계 안좋아 ì§„ë‹¤ë“ ì§€ 하는 ì‹ìœ¼ë¡œ. * ì 기를 막 ì˜ê¸° 보다는 ì ê¸°ì˜ íŠ¹ì •í•œ ë¶€ë¶„ì„ ë§žì¶”ë©´ ì 기가 ë” ìž˜ 부서지게 한다. 예를 들어서 다른 ë¶€ë¶„ì— ë§žìœ¼ë©´ ì 기가 2번 ë§Œì— ì£½ëŠ”ë°, 왼쪽 ë‚ ê°œ ëì— ë§žìœ¼ë©´ ë‹¨ë²ˆì— ì£½ëŠ” ì‹ìœ¼ë¡œ.. * í…œí”ŒëŸ¬ì˜ ì‚¬ì´ì˜¤ë‹‰ 스톰과 ê°™ì€ ë³´ì¡° 무기 * 땅따먹기 + 비행기... ìŒ.. 구체ì 으로는 안 ë– ì˜¤ë¥¸ë‹¤. * ì 기를 ì–¼ë ¤ 버리는 ë³´ì¡° 무기 * ìŒ... ì 기를 삼키는 비행기.. ì ì˜ ë¯¸ì‚¬ì¼ì€ 피해야 한다. ìžê¸°ëŠ” 미사ì¼ì´ ì—†ê³ ì 기를 삼켜야 ì 기를 ííŒŒí• ìˆ˜ 있다. * ì ì˜ ë¯¸ì‚¬ì¼ì„ ë¨¹ê³ ì„±ëŠ¥ì´ ì¢‹ì•„ì§€ëŠ” 비행기. ì ì˜ ë¯¸ì‚¬ì¼ì€ 맞아야 좋다. 단 ì—„ì² ë¹¨ë¦¬ 움ì§ì´ëŠ” ì ê³¼ 부딪히면 죽는다. = ê³¼ì • = == 1단계 == * ë¨¼ì € Pythonì„ ìµížŒë‹¤. V * ì´ˆê³ ì†ìœ¼ë¡œ ìµížŒë‹¤. == 2단계 == * 기초ì ì¸ ëª¨ë“ˆì„ ë§Œë“ ë‹¤. * 비행기 움ì§ì´ëŠ” 모듈 V * ì¶©ëŒ ëª¨ë“ˆ -> ì´ê²ƒì´ 좀 ë³µìž¡í• ê±°ë¼ê³ ìƒê°í–ˆëŠ”ë° pygameì—서 처리하는 함수 ìžˆìŒ ã…¡ã…¡; * ì 기 모듈 * 화면 움ì§ì´ëŠ” 것처럼 ë³´ì´ê²Œ 하는 모듈 == 3단계 == * í•©ì²´ ã…¡ã…¡V == 4단계 == * ì´ì˜ê²Œ 꾸민다. * ì•„ì´í…œì„ ì‹¤ì œì 으로 ê²Œìž„ì— ë„£ëŠ”ë‹¤. = ì§„í–‰ìƒí™© = * ["비행기게임/ì§„í–‰ìƒí™©"] = íŒ = * ì •ì 메소드 쓰는법 {{{~cpp class D : def spam(x, y) : print 'static method', x, y spam = staticmethod(spam) }}} * 파ì´ì¬ 디버그 사용 방법 {{ import pdb pdb.set_trace() //디버그 í• ê³³ì—서 }} = 잡담 = * 게임 만드는 ê²ƒì€ ë‚´ ì·¨í–¥ì´ ì•„ë‹Œê±° 같다. ã… ã…œ, ì´ë²ˆ 비행기 게임 프로ì 트를 통해서 ë¼ˆì €ë¦¬ê²Œ ëŠê¼ˆë‹¤. ë 그래픽 ë„£ì„ë•Œë„ í¬í† 샵 단색으로 ê·¸ë¦¬ê³ , ë˜ ì„¸ì„¸í•œ 부분 ì‹ ê²½ 쓰는걸 잘 ëª»í•˜ê² ë‹¤. 아마다 ëœë 대는 성격때문ì¸ê±° 같다. 오목 만들때는 ìž¬ë°Œì—ˆëŠ”ë° ë¹„í–‰ê¸°ê²œ 만드는건 그것 ë§Œí¼ì€ 아니다. ì©.. - ìƒí˜‘ * ì ˆë§ì´ë‹¤. ã…¡ã…¡;; 마ìŒë§Œ ê¸‰í•´ê°€ì§€ê³ ì„œëŠ”.. í—ˆë‘¥ëŒ€ê³ ìžˆë‹¹... ë§ë§Œ í•˜ê³ ì‹¤ì œë¡œëŠ” í•œê²ƒì´ ì—†ëŠ”ê±° 같당.. ì œëŒ€ë¡œ 공부를 안해서 그런지 ì´ê²ƒì €ê²ƒ 잘 안ë˜ëŠ” ë¶€ë¶„ì´ ë§Žë‹¹.. ê²°ê³¼ì 으로 ë³´ë©´..ì©.. 게임 그래픽 ë¶€ë¶„ì´ ë§Œë§Œì¹˜ 않긴 하지.. íí. 스프ë¼ì´íЏ 그리는 ì‚¬ëžŒì´ ê³ ì¶©ì´ ìƒê°ë³´ë‹¤ ë§ŽìŒ. 안티 엘리어싱 ë¶€ë¶„ì˜ ê²½ìš° íˆ¬ëª…ìƒ‰ì´ ì œëŒ€ë¡œ 처리가 ë˜ì§€ 않기 ë•Œë¬¸ì— ë„트노가다를 해주어야 í•˜ê±°ë“ . ë‚˜ì˜ ê²½ìš° í¬í† 샵으로 ì¼ë‹¨ 트루컬러로 그린뒤 ê·¸ê²ƒì„ 256 indexed color 로 ë°”ê¾¸ê³ íˆ¬ëª…ìƒ‰ 하나 넣어서 ë„트노가다 해주는 ì‹ì´ê±°ë‚˜, ë˜ëŠ” ì•„ì— 3D 툴로 그리ë˜ì§€. (3D 툴로 모ë¸ë§í•˜ê³ ë Œë”ë§ì‹œì— 웬만한 íˆ´ë“¤ì€ alpha channel ì„ ë”°ë¡œ ì €ìž¥í•˜ê±°ë“ . 그래서 3D 툴로 ë§Œë“ ê±´ 안티 엘리어싱 ë¬¸ì œë¥¼ 그리 ì˜ì‹í•˜ì§€ 않ìŒ.) ë˜ëŠ” ì•„ì— ì—”ì§„ ìžì²´ê°€ 3Dì´ê³ 스프ë¼ì´íŠ¸ë“¤ì´ 3D ì´ë˜ì§€ì§€ë§Œ ì´ê±´ ë…¼ì˜ ëŒ€ìƒ ë°–ì´ê² êµ°; 해성ì´ì˜ 경우는 ì›ëž˜ ë„트 ë…¸ê°€ë‹¤ì— ì¼ê°€ê²¬ì´ ìžˆê¸°ì— ë ì „ë¶€ ê·¸ë ¤ì£¼ê¸´ í–ˆê³ ; ê·¸ë¦¬ê³ ëª‡ëª‡ ìºë¦í„°ë“¤ì— 대해서 스프ë¼ì´íЏ 사ì´ì¦ˆì— 대한 ë¬¸ì œë“¤ë„ ìžˆê¸´ 하지만, ë ì´ê±´ ë…¼ì˜ ì œì™¸í•˜ê¸°ë¡œ í•˜ê³ . 암튼. ì´ˆë°˜ì˜ ì—´ì •ì´ í›„ë°˜ì˜ ëˆê¸°ë¡œ ì´ì–´ì§€ë ¤ë©´, 해당 ì¼ì— 대한 ì¢‹ì€ ë°©ë²•ë“¤ì„ ì¤‘ê°„ì— ê³„ì† ê¶ë¦¬í•˜ê³ , ì 용해ë´ì•¼ê² ì§€. ê°œì¸ì ì¸ ì¡°ì–¸ì´ë¼ë©´, ì´ˆë°˜ì— ë„ˆë¬´ 그래픽 ë“±ì— ë§Žì´ ì‹ ê²½ì“°ì§€ ì•ŠëŠ”ê²ƒì´ ë‚«ë‹¤ê³ ìƒê°í•¨. ì¼ë‹¨ì€ ì „ë°˜ì ì¸ í‹€ê³¼ 게임 ì—”ì§„ì„ ë§Œë“ ë‹¤ëŠ” 기분으로 í•˜ê³ , ê·¸ ì—”ì§„ì´ ìžì‹ ì´ ì›í•˜ëŠ” ì•„ì´ë””어를 ìˆ˜ìš©í• ìˆ˜ ìžˆëŠ”ê°€ì— ë” ì´›ì ì„ ë§žì¶”ëŠ”ê²Œ ë‚«ì§€ 않ì„까 함. 단, ìƒê°ì€ ì „ë°˜ì ì¸ ë¶€ë¶„ì„ ë³´ë˜, êµ¬í˜„ì„ ì‰½ê²Œ 하기 위해서는 구체ì ì˜ˆì œ ë°ì´í„°ë¥¼ ê°€ì§€ê³ ìž‘ì—…í•˜ëŠ”ê²ƒì´ íš¨ìœ¨ì ì´ê² ì§€. ê·¸ë¦¬ê³ ê·¸ ì˜ˆì œ ë°ì´í„°ë¥¼ 기반으로 ì¼ì¢…ì˜ SpikeSolutionì‹ìœ¼ë¡œ êµ¬í˜„ì„ í•œë’¤, ê·¸ êµ¬í˜„ëœ í”„ë¡œê·¸ëž¨ì„ ë³´ê³ ë‹¤ì‹œ 코드를 작성하ë˜ì§€ ë˜ëŠ” ["Refactoring"] 해서 ì¼ë°˜í™”시키ë˜ì§€.(새로 ì§œë„ ì–¼ë§ˆ 시간 안걸림. 예ìƒì»¨ëŒ€, 아마 ì¤‘ë°˜ì— ì†ŒìŠ¤ 한번 ë’¤ì§‘ì–´ì£¼ê³ ì‹¶ì€ ìš•êµ¬ê°€ ë‚ ê»„? íí) --["1002"] * 결구 오늘.. 2시 30ë¶„ì— ìž¬ë™ì´ 오구.. 4ì‹œì— ì¸ìˆ˜ 왔당.. -_-;;;; 한가지 ë” ê°œì¸ì ì¸ ì¡°ì–¸ì„ ì¶”ê°€í•œë‹¤ë©´, ì¼ë‹¨ 지금 ìƒê°ë‚˜ëŠ” '앞으로 해야 í• ì¼ë“¤' ì„ ì¢Œì•… ì •ë¦¬í•˜ê¸¸. ê·¸ ë‹¤ìŒ ê·¸ ì¼ë“¤ì— 순위를 매겨서 ì¼ë“¤ì„ í•´ 나가는거지. 그러다가 ì¤‘ê°„ì— '예ìƒì¹˜ 못했ë˜, 하지만 해야 í• ì¼ë“¤' ì„ ë§Œë‚˜ë©´, 앞ì—서 ì ì€ ê·¸ ë¦¬ìŠ¤íŠ¸ì— í•ëª©ì„ ì¶”ê°€í•´ì£¼ê³ ê·¸ ì¼ì„ 하는거지. 'ë‚´ê°€ 해야 í• ì¼ë“¤ì´ 너무 ë§Žì•„' ë¼ê³ ìƒê°ë 때 ì¶”ì²œí•˜ê³ ì‹¶ì€ ë°©ë²•ìž„. --["1002"] * 8ì›” 17ì¼: ì•„ë¬´ë„ ì•ˆ 왔다. ì „í™”ë„ ì•ˆ 받는다. 지금 ë 장난 하는건지. 지금까지는 ì—´ 안 ë°›ìœ¼ë ¤ê³ ë¬´ì§„ìž¥ ë…¸ë ¥í–ˆë‹¤. ê·¼ë° ì´ì œëŠ” ë ì—´ë°›ì„ê²ƒë„ ì—†ì´ ê·¸ëƒ¥ ë‚˜ë„ í”„ë¡œì 트 안하ë˜ì§€ 소스 다 ë‚ ë ¤ 버리ë˜ì§€ í•´ì•¼ê² ë‹¤. -ìƒí˜‘ * 프로ì 트 그만 둘거면 확실히 ë§í•´ì£¼ê¸¸ 바란다. 괜히 ì–´ì •ì©¡í•˜ê²Œ 해서 프로ì 트 진행만 못하게 하지 ë§ê³ . '' 미안.. ë‚˜ë‘ ì—´ì‹¬ížˆ í•´ì£¼ê³ ì‹¶ì€ë°.. 잘 안ë˜ë„¤.. 지금 와서 ê³„ì† í•œë‹¤ê³ í•˜ê¸°ë„ ë¯¸ì•ˆí•˜ê³ ë¹ ì§„ë‹¤ê³ í•˜ê¸°ë„ ë¯¸ì•ˆí•˜ê³ .. ã… .ã… '' * ìŒ.. ë‚´ê°€ ë´ë„ 좀 í¥ë¶„ì„ í–ˆì—ˆë„¹.. -_-;; 얘들아 ë‹´ì£¼ì— ë내서 ì •ëª¨ì— ì„ ì„ ë³´ì´ìž~ ì¸ìˆ˜ì•¼ 하여튼 열심히 하장~ - ìƒí˜‘ ---- '비행기게임' ì„ ìœ„í•œê±´ì§€ 아니면 Python 공부를 위한건지? ë 둘 다 ìƒê´€ì—†ê¸´ 한ë°.. 비행기 게임 ì œìž‘ ê³¼ì •ì— 'Python ìµížˆê¸°' ê°€ ë¨¼ì €ì¸ê±´ 순서가 ì•„ë‹ ê²ƒ 같아서. ê°œì¸ì 으로 'í˜•ì€ ë ë¨¼ì € 했어요?' ë¼ê³ 질문한다ë¼ë©´, '나는 DirectX 7.0 ì˜ Space donut 소스 ë¶„ì„한뒤 만들었지만, ê¼ DX를 ë³¼ 필요는 없다' ë¼ê³ ë§í•´ì£¼ê³ ì‹¶êµ°. ì¼ë‹¨ì€ ìž‘ì€ ì•„ì´ë””어를 하나 ì •í•œë‹¤ìŒ (ê·¸ ë다ëƒ.. ì´ì•Œ 피하기 íì¸ ê²Œìž„ê°™ì€ê±°) 완성시킨뒤, í”„ë¡œê·¸ëž¨ì„ í‚¤ì›Œê°€ëŠ” ê²ƒë„ ì¢‹ì„듯. --["1002"] ---- ["프로ì 트분류"]