학력
- Condorcet Prépa MPSI 수료 (프랑스)
- 칭화대학교 소프트웨어공학 학사 (중국)
- 고려대학교 정보보호대학원 석사 (한국)
경력
- 前 크래프톤 (테라 서버팀)
- 前 엔씨소프트 (Blade&Soul2 컨텐츠 프로그래밍팀)
관심 분야
- 리버싱 및 취약점 분석
- MMORPG 게임 개발 (C++, C#)
- 외국어 (영어, 프랑스어, 중국어, 일본어)
소개
해킹 공부를 위해 순전히 호기심으로 시작한 게임 개발인데...
시간이 흘러 어느덧 10년차 게임 개발자가 되었습니다.
"이래서 언제 게임을 만들지~?"
한숨 나오는 기초 문법부터 시작해서,
차츰 만들어가는 나만의 게임 세상.
그리고 그 세상에 접속한 다수의 플레이어를 볼 때의 뿌듯함.
공부를 할 수록, MMORPG의 매력에는 헤어나올 수가 없습니다.
제가 느낀 감동을 여러분도 느낄 수 있으면 좋겠네요.
강의
로드맵
전체 2수강평
- [C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
- [Rookiss 라이브 세미나] AI 시대를 살아가는 게임 업계의 인재상 및 공부 전략
- [Rookiss 라이브 세미나] AI 시대를 살아가는 게임 업계의 인재상 및 공부 전략
- [Rookiss 라이브 세미나] AI 시대를 살아가는 게임 업계의 인재상 및 공부 전략
게시글
질문&답변
SceneType 질문
꼭 써야 하는 것은 아니고 말 그대로 Scene의 종류를 변수로 남긴 것입니다.GameScene, LoadingScene 등등 실제 게임에선 씬이 다양하게 있기 때문입니다.
- 0
- 2
- 10
질문&답변
학습 관련 질문입니다.
AI를 활용한 1인 게임 개발은 그냥 어느 상황이라도 필수가 되어야 한다고 봅니다.다만 본인이 순수 디렉터 입장에서 게임을 만들고 싶은 것인지,아트의 강점을 살리고 싶은지, 테크의 강점을 살리고 싶은 것인지에 따라방향성 및 만들 게임의 장르와 난이도를 조절하면 됩니다.예를 들어 정말 테크를 병행하고 싶다면,1인 게임을 만들더라도 기술에 도움이 되는 쪽으로 방향을 설정하시면 됩니다.예를 들어 지금의 저라면 Peak같은 멀티게임 출시를 노려볼 것 같네요.그것도 아니라면 PCG 기술을 연구해서 절차적 던전 생성을 연구하면서 가면 꿀잼일 것 같기도 하고요.생성형 AI로 추출한 2D Sprite 에셋 기반의 2D MMO에 진지하게 도전해보는 것도 괜찮아 보입니다.뭐 이런 식으로 길을 정하시면 됩니다. 꼭 1인 게임이라고 해서 작은 게임을 의미하진 않습니다.
- 0
- 2
- 22
질문&답변
그럼 게임업계가 아닌 다른 개발쪽은 안전할까요?
다른 분야라고 다를 바 없습니다.게임은 엔진에 적용하는 단계라도 있지, 웹은 코드 자체가 완성되면 바로 띄울 수 있으니 학습이 훨씬 쉽습니다.이미 프론트엔드는 멸종 루트를 타고 백엔드가 프론트까지 같이 하는 추세입니다.그 백엔드조차도 어지간한 시니어가 아니면 굉장히 힘들죠
- 0
- 2
- 83
질문&답변
루키스님이 어떻게 공부하는지에 대한 질문
사실 대단히 뾰족한 방법이 있는 것은 아닙니다.정보가 잘 없는 분야면 책/학원/강의/독학 모든 수단을 동원해야 하고그나마 해외 (일본어/중국어/영어) 등으로는 책이나 강의가 더 많은 편입니다.서버는 주로 2000년도 초반에 나온 중고책들을 싹 뒤지면서 독학을 하면서, 정말 실험과 헤딩을 많이 했습니다. DX는 아주 이전에 학원에서 배운 DX9 지식을 토대로 11, 12는 틈틈히 책이나 강의나 문서를 보며 공부했습니다. 유니티/언리얼 등은 지금은 없어진 스킬트리 아카데미 주말반에서 찍먹을 해보고, 그 이후 회사 프로젝트에서 많이 배운 것 같고요. 근데 중요한 건 절대적으로 시간을 정말 많이 때려 박았습니다. 신입~4년차 될 때까진 거의 항상 평일 3시간, 주말 8시간 스터디 카페에서 죽치고 공부하는 패턴을 유지했습니다. 심지어 학원도 합해서 10개 이상 다니긴 했는데 대부분 별다른 도움이 안 됐고. 1년동안 종만북을 보며 알고리즘 기본기를 확실히 다진 것이랑, 그 외에는 회사에서 본 코드를 외워와서 모방하는 작업이 가장 많이 도움이 되었던 것 같네요.하나 느낀 것은 어느 정도 이상의 수준이 되면 공부에도 가속도가 붙고, 아는 게 많아지면 보이는 것도 많아져서 그 이후로는 정말 학습 속도가 아주 빨라집니다. 처음 보는 내용도 어디선가 봤던 원리인 경우가 많고 뭐 기술은 이어지기 때문이죠.
- 0
- 2
- 35
질문&답변
C++ 전혀 모르는데 C# 서버
네 전~~~~~혀 상관이 없습니다.사실 C++ 서버 하기 전에 C#으로 흐름을 이해하는 것도 좋습니다.
- 0
- 2
- 36
질문&답변
강의에 질문이 있습니다
기본적으로 엔진 코드와 컨텐츠 코드는 분리해야 엔진 코드를 재사용할 수 있습니다.따라서 Func은 Connection이 맺어질 때 처리하는 함수를 컨텐츠 쪽에서 정의하는 것입니다. 사실 엔진에선 이 기능을 어떻게 활용해 게임을 만들지 예상할 수 없기 때문이죠.sessionFactory는 말 그대로 처리하는 함수를 연결하는거라,Connect를 호출할 때마다 sessionFactory를 교체하진 않습니다.사실 Connect를 멀티쓰레드로 처리할 이유는 없지만설령 그렇다 하더라도 멀티쓰레드 이슈는 컨텐츠 쪽에서 알아서 처리해야 합니다(sessionFactory 구현 내부에서 락을 건다거나)
- 0
- 2
- 36
질문&답변
500 vs 500
서버 입장에서 2D 3D의 차이는 딱히 없습니다. 어차피 데이터 쪼가리일 뿐이죠.다만 클라 입장에서는 3D로 갈 경우 렌더링 부하가 심해져서 고사양의 게임이라면 조금 문제가 생길 수 있습니다.서버 입장에서 중요한 것은 칸 단위로(그리드) 움직이는지 (리니지 등), 자유롭게 미세한 좌표 이동이 가능한지(와우 등)입니다.칸 단위로 움직이면 판정도 쉽고 애당초 타게팅 스킬 기반으로 가는 경우가 많습니다.다수 PK야 뭐 리니지 라이크 게임을 보시면 되는데 한 화면에 대략적으로 200명 정도 아닐까 싶네요.
- 0
- 2
- 45
질문&답변
멀티스레드 이해도 질문
어차피 한 번 본다고 이해하기 힘든 개념입니다.그냥 넘어가셔도 무방합니다.사실 서버에서 멀티쓰레드를 활용하는 부분 또한 제한적이라 (패킷 받을 때 등) 몰라도 크게 상관 없기도 합니다.
- 0
- 1
- 30
질문&답변
3D인데 직교투영?
예리한 질문입니다. 사실 큰 이유는 아니고 여러 샘플들을 분석해보니, 그 쪽이 더 이쁘게 나와서 그렇게 따라간 것인데요.Perspective로 하면 멀리 있는 물체는 더 작게 보이는 원근법이 적용 되고,Orthographic는 물체의 거리와 무관하게 동일한 크기로 보이는데,BurgerPlease 같은 장르 특성상 전체 화면의 프랍들이균일한 크기로 보이는 것이 화면이 더 괜찮은 감이 있어 그렇습니다. 물론 Perspective로 잘 꾸밀 수 있다면 크게 상관 없는 부분입니다.
- 0
- 1
- 36
질문&답변
지난 강의와 이어지는게 맞을까요?
본 시리즈는 1강부터 9강까지 쭉 이어지게 되어 있습니다.지난 강의라는 것은 Part4 서버 강의를 말하는 것입니다. (서버 엔진을 다룸)물론 굳이 Part4를 안 보더라도, 그냥 코드는 복붙해서 수정해서 사용하면 되지만서버에 대한 기본 이해도가 있어야 온라인 게임 원리를 이해하기 수월합니다.
- 0
- 2
- 27