티스토리 뷰
게임 프로그래머가 되고 싶다는 막연한 생각을 가지고 프로카데미 게임개발 입문 개론을 들어봤습니다. 후회없는 선택이였고, 정말 많은 내용을 알 수 있었습니다. 제가 보고 들은 내용을 보시고 게임개발에 대해서 고민을 하고 계시는 분들에게 많은 도움이 되었으면 좋겠습니다. 질문은 언제나 환영입니다!
1. 게임 프로그래머의 종류
- 흔히 우리가 말하는 게임 프로그래머는 클라이언트 프로그래머를 말합니다. 클라이언트 프로그래머는 실제로 눈에 보이는 그래픽들이나 애니메이션, 행동, 퀘스트, UI등을 디자인하고 프로그래밍 합니다.
- 보통 클라이언트 프로그래머는 Unity나 Unreal이라는 게임엔진을 주로 사용하고, 펄어비스나 Colud Imperium Games와 같이 자회사의 게임엔진을 사용하는 회사 또한 존재합니다.
- 따라서 클라이언트 프로그래머를 꿈꾸신다면 가고 싶은 회사의 모집요강을 파악하시어 그와 관련된 엔진을 공부하시면 됩니다.
- 두번째로는, 게임 서버 프로그래머입니다. 우리가 흔히 아는 로스트아크, 디아블로, 와우 등 MMORPG의 서버를 제작하는 프로그래머입니다.
- 클라이언트와 같이 화려한 그래픽을 다루지는 않지만, 온라인 게임에서 게임의 실질적인 컨텐츠 처리 (퀘스트,아이템,성장,구매,조합 등...) 는 서버에서 담당 합니다. 유저의 핵,치트 사용 방지를 위해 중요 컨텐츠 대부분을 서버가 전담합니다.
2. 기본 선수 지식
클라이언트, 서버 프로그래머 모두 알아야하는 선수 지식입니다.
- C, C++, C#, WinAPI(전부 X 시스템 관련)
- 알고리즘 및 자료구조(구현 가능할 정도로)
- 파싱(문자열 장난), 컴파일러, 암호화(간단한 이론)
- 수학(경우의 수, 이차 방정식, 삼각함수, 행렬, 벡터 등)
- CS(컴퓨터 기본 지식)
3. 클라리언트 프로그래머 공부
- DirextX -> 정말 어렵습니다. 그래서 제가 물어보니까 실제로 DirextX 가지고 프로그래밍을 하는 경우는 정말 드물기도 하고 어렵다고 합니다. 따라서 DirextX의 구조나 작동방식 등을 이해하고 말할 수 있을 정도까지라도 공부를 하는 것이 좋다고 합니다.(물론 프로카데미에서는 프로그래밍까지 하는게 좋다고 말씀하시기는 했습니다 ㅎㅎ;)
- 회사에 맞는 언리얼 또는 유니티 공부 -> 특히 유니티가 자료가 많습니다. 물론 언리얼도 그에 맞춰서 자료가 많아지는 추세입니다.
- 만약에 인디게임을 만드실 것이라고 하신다면, 블렌더 등도 하시면 본인이 원하시는 캐릭터 등을 디자인 하실 수 있습니다.
4. 서버 프로그래머 공부
- 일단 온라인 게임에서 서버는 두가지가 존재합니다. Stateless 서버와 Stateful 서버 두 가지가 존재합니다. 간단하게 말하면 Stateless는 비동기식, Stateful은 실시간입니다. 정확한 내용을 알고 싶으신 분들은 http://post.procademy.co.kr/archives/category/gameserver 참고부탁드립니다. 따라서 어떤 서버를 공부하느냐에 따라서 내용이 크게 차이가 납니다.
먼저 선수지식 입니다.
- 네트워크 프로그래밍 및 이론, 데이터베이스(제 3정규형 까지), 컴퓨터 사이언스(OS, CPU), 멀티스레드, 웹프로그래밍, 고수준 디버깅
1. Stateful Game Server - MMO 장르 게임
- 윈도우 IOCP Network Programming
- 멀티스레드 프로그래밍 - winapi 이후 C++ thread
- 메모리 관리 및 디버깅 ( 메모리 풀 ) - 특히 디버깅 연습을 잘하자(소스코드 고치지 말고 디버깅 해보자)
2. stateless Game Server - 모바일 캐주얼 장르
- NodeJs, PHP, 파이썬, 자바 등이 웹 언어 사용
- HTTP 프로토콜 기반의 웹 서버 방식
- 웹서버로 이루어져있습니다.
일단 듣고 정리한 내용은 이정도인 것 같습니다. 이제는 들은 내용을 토대로 저도 공부를 해 나갈 예정이고, 생각했을 때 바뀔만한 부분이 있으면 수정하겠습니다. 봐주셔서 감사합니다!
'개인' 카테고리의 다른 글
Windows 10 Education 버전에서 원격 오류 해결하기(ADD) (0) | 2023.06.04 |
---|---|
코로나.. 걸려버렸습니다.. (2) | 2022.08.07 |
그냥 일기 (0) | 2022.07.25 |
심심한 나의 학교 야경 사진 (0) | 2022.06.14 |
우리학교 마스코드 냥이.. (0) | 2022.05.31 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 드림핵
- Dreamhack
- 알고리즘
- 시스템보안
- 자료구조
- 고양이
- c++
- 멀티쓰레드
- 지뢰찾기
- 스레드풀
- 정보보안
- 보안
- 더블버퍼링
- 학교
- 레지스터
- 컨퍼런스
- 인제대학교
- 링크드 리스트
- queue
- STL
- 야경
- 백준
- BFS
- 개발
- 워셜알고리즘
- Select모델
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
글 보관함