디지펜 공과대학
[clearfix]
1. 개요
미국 워싱턴 주의 레드먼드 시에 위치한 게임 개발 교육[5] 에 특화된 공과대학으로, 컴퓨터 사이언스와 게임 디자인 관련 학사 프로그램들을 메인으로 한 수준높은 교육을 제공한다.
'''세계 최초'''의 4년제 게임 프로그래밍 특화 학사과정[6] 을 창설한 이래 현재까지도 이 과정을 운영해오고 있으며, 디지털 오디오, 게임 아트, 애니메이션, 머신 러닝(2019년 신설), 게임 디자인, 게이밍 하드웨어 엔지니어링 등 게임 개발의 전분야를 커버하는 9종의 학사과정 & 2종의 석사과정을 운영중이다.[7]
2019년 초를 기준으로 그동안 재학생들이 타온 총 IGF 어워드의 수는 총 '''57개'''로, 게임 개발 분야에 한해서는 세계 최정상급의 명성을 보유하고 있다.[8] 다름아닌 포탈 시리즈의 프로토타입쯤 되는 게임이 다름아닌 디지펜 학부생들의 졸업작품이였다.
설립자 겸 총장은 닌텐도 NST의 공동설립자이며, 닌텐도 NST의 사옥을 캠퍼스로 빌려쓰기도 하는 등 닌텐도와 여러모로 연이 많다.
게임 프로그래머 및 디자이너와 같은 게임 산업의 근간이 될 양질의 인력 배출을 목표로 운영되고 있으며, 프로그래밍 커리큘럼은 미국 기준으로도 하드코어한 것으로 악명이 높다. 물론, 이 덕분에(?) 졸업생들은 닌텐도나 유비소프트와 같은 저명한 게임 개발 스튜디오뿐만 아니라 마이크로소프트나 아마존과 같은 대기업에 취직하기도 한다.
전라북도 완주군의 한국게임과학고등학교와 유학생 교류협약을 맺고, 대구에 위치한 사립대학인 계명대와 복수학위 프로그램을 맺음으로써 국내에 이름이 알려졌는데, 계명대에서 '''1+4학기'''[9] 를 공부하고 미국에서 남은 4학기를 공부하는 방식으로, 레드먼드 캠퍼스와 동일한 커리큘럼을 따라가며 (물론 본캠 교수분들이 한국에 직접 오셔서 강의한다) 졸업 시 계명대와 디지펜의 학위를 동시에 수여받는다.
2. 학비
객관적으로 보자면 '''타 미국대학에 비해서는''' 등록금이 그다지 비싼 편은 아니라고 하더라도, '''내국인 기준으로는''' 억소리가 나오는 금액인 만큼 이에 대해 제대로 된 자료를 원하는 학생들이 있을 거라 판단해 따로 개설.
애초에 복수학위 과정의 경우만 하더라도, '''비싼 국내대학이 아니라 싼 해외유학이라는 관점으로 접근해야 하기에...'''
~ 계명대학교 2019학년도 등록금 책정표 PDF 파일 (입학처 공지 파일) ~ 링크
계명대의 복수학위 과정을 따라가는 학생들의 경우, '''한국에서의 첫 5학기 동안은''' 이 금액을 얼추 따라간다고 보면 된다.
기본 공대 입학 및 등록금에 더해서 디지펜 복수학위 과정의 재학생들은 수업료 명목으로 약 140만원을 추가로 내야 한다. '''학기당 560만원 정도.'''
비싸다고? '''학기당 1800만원에 비하면 이 정도는 양반이다.''' 여기에다가 장학금까지 더해지면... 이하생략.
계명대 기숙사의 경우에는 동에 따라 학기당 '''30만원~110만원''' 주변을 왔다갔다한다. 당연히(?) 비쌀수록 시설이 좋다.
식비는 '''75만원'''을 조금 넘어가는 정도이나...
직접 와서 먹어본 사람(들)의 조언 : 매일매일 '먹을 만한' 음식을 먹고 싶다면 신청하지 마라. 밥이랑 김치는 괜찮은데(...) 국에서 맛이 느껴지지가 않는다.
자신이 초 니트 히키코모리여서 멀리 가기가 싫다면 또 모르겠지만, 고등학교 급식보다도 맛이 없다. 영양가와는 또 별개지만.
문제라면, 과실에서의 밤샘 과제 레이드 및 팀 프로젝트 때문에 기숙사 이용이 가면 갈수록 까다로워진다는 건데... 0학기는 해당사항 없다.
물론 외박을 잘 활용하면 이론상으로는 문제가 없을 테지만, 기숙사에 살아본 재학생들 모두는 이 대신 자취를 선택했다.
문화대쪽에 자취방을 잡고, 문화대 정문을 통해 들어가 계명대 공대로 진입하는 지름길을 쓴다면 최단거리 등교가 가능하다.
미국에서는 본캠 기숙사를 가거나, 주택을 여럿이 같이 리스하는 (경제적 이유상) 등 여러 선택지가 있는데, 렌트와 학교까지의 거리를 고려해서 잘 선택해보도록 하자. 어떻게 계산하느냐에 따라 기숙사가 더 나을수도 있고, 주택이 더 나을수도 있기 때문. 레드먼드 재학생 / 졸업생들이 올리는 경험담이나 팁들이 과 디스코드에 계속해서 올라오기 때문에 안심하고 군문제와 한국학기를 전부 해결하고 나서 생각해도 늦지 않다...
생활비를 제외한 '''미국에서의 4학기 + 알파''' (4학기 내로 졸업하지 못하는 사람들이 의외로 많다) 동안의 등록금은 공홈에 언제나 공지되어 있다.
복수학위 과정의 학생들은 2년 + 알파, SAT를 치고 본캠으로 직행하는 학생들의 경우는 '''이 등록금을 4년 + 알파 동안 내는 셈이다.'''
앞서 말한 복수학위 과정의 여러 메리트들 중 하나가 여기에서 드러난다. '''경제적 부담을 큰 폭으로 덜어준다.'''
미국대학은 국내대학와는 달리 '''크레딧'''이라는 단위를 쓰는데, 간단하게 적게 들으면 적게 내고, 많이 들으면 정해진 정도의 돈을 낸다는 시스템이다.
허나 재학생의 '''코스로드(Courseload)를''' 고려해보자면(...) 평균적으로는 '''한 학기당''' 저 Flat Rate라는 놈을 낸다고 보면 된다. (연당 3600만원 정도)
Course Credit에 대해서 더 자세히 알고싶다면 여기를 참조.
본교 등록금은 매년 조금씩 오르고 있으나 비사스칼라 장학금은 그대로다(...) 미국 시민권자가 아닐 경우 등록금으로 '''매년 300만원 정도가 추가로 빠진다.'''
석사과정의 경우에는 '''Tuition/Credit'''이 조금 더 크게 나타난다. 그래도 단위수가 적어서 '''최종적으로는 조금 더 싸다.''' 석사학위를 노리는 이들은 참고.
결론적으로, 자신의 조건에 알맞게 '''입학금 + 등록금 + 생활비 + 비행기값 등등'''을 더해서 여기서 '''장학금을 뺀 값이''' 최종 학비가 되시겠다.
'''반드시 이를 직접 계산하고 자릿수를 부모님과 함께 확인한 다음''' 원서를 넣도록 하자.
3. 입시
국내에서는 크게 계명대의 디지펜 복수학위 과정을 노리는 방법과 SAT를 치고 본캠으로 직행하는 두 가지 루트로 나뉘는데, 후자에 빠삭한 사람이 혹시나 이 문서를 보게 된다면 부디 도움을...
싱가포르 캠퍼스와 빌바오 캠퍼스 또한 존재한다.
3.1. 계명대학교 디지펜 게임공학과
레드먼드 디지펜 홈페이지의 복수학위 프로그램 소개
계명대학교 2020 기본계획
2020년도 (2020년 입학) 입시 기준으로 '''학종 8명, 교과 4명'''씩 전국&지역에서 각각 12명, 수시로만 24명을 뽑는다. 여기에다 수능을 합하면 '''30명'''.
영어특기자 전형은 2017년도 입시를 마지막으로 폐지.
교과는 '''3점 초중반'''까지 최초합을 노려볼 수 있고, 종합은 종합이 종합인지라(...) 확실히 끊을 수는 없지만, 2018년도 입시 때에는 '''평균 4.74'''라는 평균이 나왔다. 물론 미치도록 이 학과에 오고 싶다면 자신의 내신을 1년 전 입결보다 1등급 정도 올려놓도록 하자.
여담으로, 2019년도 입시에서 학종 평균이 '''4.74 → 3.9'''로 떡상했다. 최종후보순위는 '''0.'''.
2020년도 입시에서는 교과 평균 '''4.49''' 종합 평균 '''4.56'''으로 2019 입시보다 성적이 다소 하향한 모습을 보여줬다. (최종후보 순위는 각각 10, 11)
생각보다 교차지원으로 문과에서 오게 된 사람들의 비율이 크다. 물론 그만큼 열심히 해야 한다.
2019년도 입결
2020년도 입결
2018년 11월자 학종 면접후기
2019년 11월자 학종 면접후기
이 학과는 '''특정 조건'''만 넘기면 학부생의 본캠으로의 진학을 허용해주는데, '''(토플 80 & 평점 3.0 이상 + 미국에서의 4학기 학비)'''[11] 저걸로 본교 수업을 따라올 수 있다고는 안했다.
여러 이유로 인해 2020년에 학과장이신 데이빗 교수님이 3.0 제한을 없애려고 노력하셨는데, 불발되면서 그레이드를 조금 후하게 주는 방식으로 (절대평가 → 상대평가) 전체적인 평가방식의 선회가 있을 듯 하다.
통계상, 2008년도 ~ 2013년도 입학생들을 합해 120명 '''(정원외 제외)''' 의 학부생에 '''(전부 입대 가정)''' 2014년도와 2015년도의 입학생들을 '''포함해''' 32명이 2017년도를 기준으로 최종적으로 레드먼드 본캠에 진학했다. 32/(120 + 재외국민 + 알파) = '''1/4 미만...''' 이였으나 18년도 기준 '''12명'''이 한번에 본캠에 진학하며 32명이 44명으로 업데이트되며 1/4 선을 돌파했다. 근거자료[12]
낮은 미국 본캠 진학률의 이유로는 정신나간 '''학비''' & 정신나간 '''커리큘럼'''이 주된 원인이니 정말로 제대로 생각하고 원서를 넣자.
미국대학 기준 약 5년동안 배워야 할 것들을 '''4년''' 안에 때려넣고 거기다가 인턴쉽 및 '''프로젝트''' 수업을 더하면 여기 커리큘럼이 나온다.
정시(수능)의 경우는 백분위 평균이 '''300 주변'''을 상회하는데, 학교치고는 꽤나 높은 편이다. '''75 * 4가 300'''이다. '''수시에 비해서 난이도가 높다.'''
수시와 마찬가지로, 수능 역시 2019년도 입시 기준 백분위 평균 '''319.75'''를 찍었다.
2020년도 입시 기준으로는 백분위 평균 '''290.44'''.
참고로, 디지펜 게임공학과는 신입생 대상 장학금 선발시스템이 다른 과들과는 별개로 돌아간다. 이는 '''KAC'''나 '''EMU'''와 같은 특수학과도 마찬가지.
'''입학생들의 입학성적의 변동 폭이 매우 크다. 근 3년간의 종합전형만 보더라도 4.74 → 3.9 → 4.56이다'''.
유학 학비 문제도 있고, 인지도나 프로그램 포기 비율 등 여러 요소가 겹쳐지면서 오려고 작정한 사람들만 오는 마이너 과라는 느낌이 강하다.
상기되어 있듯이 원래부터 소수과인 점에 더해져 여러 요인으로 인한 중도포기 등으로 졸업자가 아직 적긴 하지만, 레드먼드 디지펜 기준으로 졸업할 시의 Salary는 준수한[13] 편. RTIS로 대표되는 간판 프로그래밍 학위 취득자들이 가장 대접이 좋고, 그 뒤가 BSGD 등이다. BSGD는 게임 디자인에 더해 프로그래밍까지 커버하고 들어가기 때문에 BAGD에 비해서 대접이 좋다. 디지펜에서 가장 평가가 좋은 프로그램이 게임 디자인 프로그램이기도 하고.
디지펜은 미국 기준으로 외국 국적의 학생들이 전체의 10%를 차지하고 있는 학교인데다가, 미국이 다인종 국가라는 점, 거기에다 미국 IT 회사들의 개방성을 고려하면 한국인이라고 해서 취업에 있어서의 차별을 받을 이유가 없다. 실제 복수학위 프로그램 기준 아웃풋[14] 도 그렇다.
여담으로, 2019년도 입학식 기준 비사스칼라 장학생 대표를 배출해냈다! 만세!
====# 신입학 장학금 (수능 || 토익 || 토플) #====
입학 '''후에''' 평점(70% 반영)과 토익 점수(30% 반영)를 통해 학기 성적우수 장학금을 타서 싸게 다닐거라는 생각은 하지 않는 편이 좋다.
예를 들자면, 신입학 장학 없이 기적적으로 '''매 학기 4.5를 따가며''' 필사적으로 5학기 내내 과탑을 유지한다 해도...
적절히 4.0 언저리를 따가는 비사스칼라 장학생의 왕복 비행기값과 3만달러는 받지 못한다.
만약 굳이 과정에 '''들어오고 나서 성적장학을 타겠다고 하더라도''' 토익성적을 미리 만들고 오는 것을 추천한다.
1등을 하면 전액, 2등이 반액... 같은 식인데, 장학생들을 제외한 과 1등을 하고서도 토익점수가 낮아 전액장학금을 놓친 대참사가 발생 할 수 있다.
미국에서의 학비까지 학교에서 지원받은 매우 특수한 케이스가 하나 있기는 하나, 어디까지나 특수한 케이스다.
'''물론 미국에 가서 1,2등을 먹는다면''' 그에 따른 '''Merit Scholarship'''을 받겠지만, 어... 음...
비사스칼라 받는다고 메릿 스칼라쉽 못받는거 아니니 굳이 받지 않고 들어올 이유가 없다.
미국에서의 장학금은 성적장학(메릿 스칼라쉽)을 제외하면 없다고 보는게 편하나, 소득분위에 따라 등록금을 감면(최대 20% 정도)시켜주는 제도는 존재한다.
신입학 장학 자격을 얻는 방법은 크게 '''두 가지'''가 있다. '''수능(정시), 그리고 공인어학성적(토익/토플).''' 토익으로 받기가 '''그나마 가장 쉽다.'''
초등학생 때부터 토익과 토플을 준비한 어느 동기의 동기의 말로는, (고2 기준 토익 985) '''토플은 진짜 하드코어였다고 한다.'''
돈은 돈대로 깨지고, 여러모로 신경써야할게 엄청나게 많아서 스트레스가 미친다 카더라.
물론 미국에 가기 전까지 학부생 모두가 '''거의 무조건 토플 80점'''을 만들어놓아야 하지만, 이건 합격하고 나서의 문제다.
토플에 비하면 토익은 리스닝 파트야 어찌어찌 감으로 때웠다고 쳤을 경우, 리딩 파트야 '''읽고 푸는 객관식 문제니''' 적당히 빨리 풀고 전부 맞히면 끝.
'''응시료가 상대적으로 쌈 + 객관식 + 수능과 달리 거의 언제든지(?) 응시 가능'''이라는 장점이 있으므로 적극 추천.
'''반드시 반드시 반드시''' 입학처에 '''직접''' 전화해서 서류제출을 놓치는 일이 없도록 하자. 참조
정시장학금의 경우에는 국어,수학,영어,탐구 4개 영역 '''(한국사 포함 x)''' 의 등급을 합산하여 장학 등급이 결정된다.
수학 나형의 경우에는 등급이 '''하나 하향되어''' 적용된다.
즉, 수학 나형을 응시해서 1등급을 받았다면, 한등급 하향하여 나머지 과목들과 더한 뒤 등급표를 보면 된다.
탐구과목영역의 등급은 '''두 개 과목 등급의 평균'''으로 계산된다.
ex) 물리I 2등급 지구과학I 3등급 → 탐구영역 '''2.5등급'''
참고로 탐구영역 등급의 소수점은 '''절삭되지 않고 계산된다.'''
예를 들자면, 국어 2등급 수학 가형 3등급 영어 1등급 탐구영역 2.5등급을 받았을 경우 총합 '''8.5등급으로,''' 비사 우수 장학금에 해당되는 것이다.
정시 장학금을 노리고 있으면서, '''정말 디지펜아니면 가기싫다!''' (수학 나형으로 응시하면 일반적으로 선택의 폭이 좁아지기 때문...) 싶은 학생은 수학 나형을 선택하는것도 '''전략적으로 좋은 선택일 수 있다.''' 한등급이 하향되긴 하지만, 수학 가형과 수학 나형의 난이도차를 고려하면... 수학 나형으로 1등급 받을 확률이 수학 가형으로 3등급 이상 받을 확률보다 높기 때문. 수학을 정말 잘해서 상관없으면 뭐...
읽는이가 만약 이러한 정시파이터에 해당할 경우, 그저 진심으로 무운을 빈다.
학점 평균 '''3.5점 이상 유지''' 조건이 붙으므로 받았다고 해서 방심하지 말자. 저게 아까워서라도 '''훨씬 더 빡세게 공부해야 한다.'''
참고로, '''F'''를 하나라도 받으면 장학금이 날아간다고 하니 P/F 수업을 특히 조심하자.
환산가치 '''6500만원 주변.''' (5개학기 등록금 + 30000달러 + 왕복 뱅깃값 + 기숙사 우선입사권)
참고로, '''IGF 우승상금이 30000달러이다.''' 일반인 자격으로 우승하면 받을 수 있다. 게임사에 자신의 이름을 새길 수 있는 절호의 찬스니 참고(...)
마찬가지로 학점 유지 조건이 붙는다. '''허나 애초에 이 학과에서는 학점이 3.0을 넘지 못하면 5학기를 넘기지 못하므로''' 반강제 학점유지.
2019년도 입학생들 기준으로 비사스칼라가 4명, 비사 우수는 아무도 없었다. (5개학기 등록금 + 15000달러 + 편도 뱅깃값)
계명대를 공짜로 다닐 수 있는 '''마지노선.''' (5개학기 등록금 ONLY) 마찬가지로 3.5점 유지 조건이 붙는다.
계명대를 반값으로 다닐 수 있다. 이런저런 교내외 장학제도들을 합쳐서 가능한 한 싸게 학교를 다녀보자. (5개학기 등록금의 50% 감면, 입학금 제외)
나형 1등급 하향을 제외하면 교과 최저와 동일. 다른 장학에 비하면 혜택이 초라하다. (2개학기 등록금의 30% 감면, 입학금 제외)
참조
비사스칼라만큼은 아니지만, 재학 도중에도 충분히 활용가능한 수많은 장학제도들이 존재하니 적극적으로 장학금을 타면서 다니도록 하자.
====# 신입학 장학금 (국가우수장학금) #====
국가우수장학금
공대 내에서 정해진 수의 학생들을 뽑는데, 공대 입결 탑을 책임지고 있는 과인 만큼 디지펜에서 최소 1명은 나온다.
수시우수유형과 수능우수유형 등 여러 루트가 있고, 이 중 수시우수유형은 '''학종'''으로 선발한다.
수학과 과학 내신이 우수함 & 학종에서 1등으로 들어왔다면 거의 확정적으로 받을 수 있다.
마찬가지로 '''평점 3.5'''를 유지하는 한 매 학기의 등록금을 전액 지원받지만, 미국에 이동하고 나서는 장학생으로써의 입장이 애매해진다는 듯 하다.
이 외의 자세한 사항들은 직접 문의해서 알아보도록 하자.
3.2. 워싱턴 레드먼드 캠퍼스
입결 이를 보면 알겠지만, 백분위[15] 부터가 국내 입시와는 차원이 다르다. 입시 시스템도 '''강화형 학종''' 같은 느낌. 물론 가장 중요한 것은 '''내신,''' 그리고 고등학교에서의 추가적인 '''활동''' 내역이다. 비교과 활동을 외국 대학들은 '''엄청나게 중요하게 본다.''' 당연히 '''에세이'''도 장난아니게 중요하다. 그럼에도 불구하고 점수가 너무 낮으면 그대로 분쇄기로 원서가 직행할 위험이 있으므로... SAT 문서 참조.
참조
점수 구간별 지원자 통계 또한 돌아다니니 참조. '''NICHE'''발 신용성 높은 정보다. 비교적 SAT의 커트라인이 조금 더 높은 편이다. 이쪽도 참조.
여기는 '''5등급도''' 디지펜 학과를 들어가는데, 저쪽에서는 디지펜 들어갈 성적을 가지고 있을 경우 보통[* UCLA] 이런 곳을 쓴다.
즉슨, 한국의 복수학위 과정의 학부생들은 사실상 '''EJU급 치트키를 써서 훠어어얼씬 편하게 들어가는 셈이니''' 국내 입시로도 못갔다면 깔끔하게 포기하자(...)
첫 지원자 중 '''반 정도를 떨구고,''' 여기서 '''4~6년에 걸쳐서 또 반을 떨궈내고''' 졸업시킨다.[16] 아웃풋의 질을 유지하기 위해 이를 완화시킬 생각은 1도 없다 카더라.
미국 기준으로도 빡센 커리큘럼으로 유명하니, 돈만 버리고 빠꾸치지 않고 싶다면 '''진짜 제대로 생각해보고 결정하도록 하자.'''
4. RTIS 전공
5. BSGD 전공
6. 컴퓨터 사이언스 강의
6.1. '''CS099'''
====# Spring 2019 #====
디지펜 소속 Rudy Castan 교수가 직접 가르치신, 신입 학부생들이 맞닥뜨린 첫 프로그래밍 강의이다. 후에 커리큘럼 개정이 계획대로 진행된다면 사라지게 될 예정이다. 현재 커리큘럼과 개정 예정 커리큘럼 비교 스프레드시트
복수학위 프로그램 기준 0학기의 유일한 디지펜 전공 과정이다. (레드먼드에는 없는 강의이다)
과목명은 '''C PROGRAMMING'''인데, 실제로 C언어를 쓰지는 않고 자바스크립트 기반의 p5.js 라이브러리를 이용해 수업을 진행한다.
2018년도까지는 한국인 교수가 진행하던 수업인데, 이 수업의 효용성을 의심하게 되는 일이 발생해 그냥 0학기 새내기도 직접 가르치기로 하셨다고 한다.
p5.js, 줄여서 '''p5'''는 웹 환경에서의 빠르고 간편한 시각화를 위해 만들어진 라이브러리다. 전신은 자바 기반의 Processing.
고로 p5.js 레퍼런스를 보다가 무언가에 막혔다면 망설임 없이 Processing 포럼에 쳐들어가자. 매우 높은 확률로 솔루션은 그곳에 있다.
자바스크립트로 게임을 만들다 보니 '''웹에서도 편하게 돌아간다는''' 장점이 있지만, 언어의 특성상 변수의 값 대신 레퍼런스를 인터프리터가 지 맘대로 갖다 넘긴다던지, 변수 관리가 거지같다던지 하는 비교적 불편한 점들이 '''매우''' 많기 때문에 상대적으로 제대로 된 컴파일러들을 가지고 있는 언어인 C#이나 파이썬, C++등을 하다가 온 친구들은 하루종일 이곳저곳의 레퍼런스들과 씨름하며 엄청난 고통을 호소했다.
그래도 이를 반대로 말하면 프로그래머가 '''신경써줘야 하는 것들이 적기 때문에''' 로직 그 자체에만 집중이 가능하다는 장점이 있다는 거다. 고로 일반인(?)들에게 프로그래밍이 뭔지 알려주기 위한 '''입문용 언어'''로써는 충분히 좋은 언어라는 거다. 물론 코드가 복잡해지기 시작하면 로직이고 나발이고 자바스크립트라는 언어 그 자체와 씨름을 하며 코드를 짜야 하기 때문에 난이도가 저세상으로 가버린다.
'''deltaTime'''을 활용한 프레임 유지는 기본이고,[17] 윈도우 크기를 어떻게 조절하든지간에 게임 화면을 거기에 딱 맞춰주도록 하는 기능을 추가한다던지,[18] 혹은 리소스 사용량을 언제나 염두에 두면서 코드를 짠다던지,[19] 하다 보면 해야 하는 일들이 산더미처럼 늘어나기 때문에 언제나 개발기간을 염두에 두도록 하자.
주의할 점이 몇 가지 있다면, 코드를 짜다가 지금 자신이 넘겨주려고 하는 것이 '''값인지 레퍼런스인지''' 판단하는 것이 일단 제일 까먹거나 헷갈리기가 쉽고, 단순 연산이야 얼마나 돌리던지간에 그렇게까지 차이가 나지는 않지만 '''소리 에셋'''(wav, mp3 등)을 잘못 활용할 경우, 브라우저에 따라서 가비지 컬렉터가 미친듯이 불려나오는 대참사가 발생할 수 있다. 게임의 프레임이 납득이 어려울 정도로 갑자기 떨어진다면 소리 에셋을 불러오는 방식을 점검할 필요가 있다.
크롬에서는 멀쩡한데도 불구하고 파이어폭스에서만 갑작스런 프레임 드랍이 일어난다면 반드시 소리 에셋을 의심해보자.
또, 대부분의 브라우저들에 딸려있는 개발자 도구를 활용하면 디버깅 비스무리한게 가능하고, 파이 차트를 활용해 리소스 사용량을 점검할 수도 있다.
아래는 루디 교수의 과목에 대한 소개.
비록 프로그래밍에 두각을 나타내는 친구들이 적잖게 들어오기는 하지만 그래도 여전히 반 이상은 프로그래밍이 뭔지조차 모르고 들어온 학생들이다.'''The purpose of this class is to prepare you better for the original DigiPen curriculum.'''
I was teaching C programming over the last semesters, but in the end, '''I don't think it really helped.'''
So we'll be learning them in general, focusing on '''problem solving, the logic itself,''' rather than being language-specific.
We will be using javascript, '''focusing on the higher levels,''' without going into low level machineries, etc.
I will also be teaching you '''OOP,''' and implementation of basic math concepts also.
Our final goal in this class is to make a simple 2D game, so it will be a '''project.'''
~ 2019년 3월 5일, 첫 강의 中 ~
프로그램 책임자인 데이빗 교수는 기본적으로 이러한 민간인 상태의 학생들에게 눈높이를 맞추고 '''어떤 상태에서 입학했다 하더라도''' 노력하면 따라올 수 있도록 디지펜 전공과목의 난이도를 조절하려고 노력하시는데, 과거 C 언어를 학습자의 '''첫 프로그래밍 언어로써''' 가르치면서 얻은 교훈과 난이도 조절 및 흥미유발의 필요성이 합쳐져 결과적으로 자바스크립트라는 놈이 튀어나온 듯 하다.
이 과목 자체가 2019년에 처음 개설되었고, 루디 교수가 프로그래밍 입문자를 처음 가르치는 터라 난이도 조절 측면에서 가혹한 부분도 많았고, 학생들 사이에서 불만도 꽤 있었다. 그래도 객관적으로 봤을 때 교수는 필요한 만큼은 철저하게 설명을 다 해 주었다. 딱 필요한 만큼만...
이에 대해 설명을 덧붙이자면, 0학기의 강의실 안에는 칠판을 노려보면서 모든 내용 하나하나를 '''옮겨서 외우는''' 행위를 계속해서 반복해온 사람들과, 처음부터 자기 혼자서 레퍼런스를 털면서 직접 배우고 싶은 것들을 '''능동적으로 공부한 경험을 이미 가지고 있는''' 사람들이 한 강의실 안에 사이좋게 자리잡고 있다.
허나 루디 교수는 '''모든 수강생들이''' 후자의 사람들처럼 수업에 참여하기를 원한다. 한국식 입시위주의 교육과는 완벽한 대칭점에 있는 거다.
첫 수업부터 하루에 3~4시간씩의 자발적인 공부량을 원한다는 식의 말을 하였고, 또 수업에 쓰인 교재를 '''반드시''' 혼자서 끝까지 읽어보기를 권하였다.
고로 API 레퍼런스나 포럼 등지를 털면서 혼자서 공부하는 데에 익숙해진 사람들에게는 그냥 일상일 뿐이지만, 그렇지 않은 사람들에게는 컬쳐쇼크 수준으로 공부량이 너무 많다고 느껴질 거다. 거기다가 대한민국 평균 새내기 기준 처음 들어보는 순도 100% 영어강의가 합쳐지면... 이하생략.
고로 객관적인 수업의 난이도만큼은 누구나 '''아주 많이 노력하면''' 따라갈 수 있도록(...) 적절히 조절되어지고 있으나, 이를 행복하게(?) 따라갈 수 있을 정신상태를 만드는 데에 시간이 걸리는 만큼 사람에 따라 '''따라가기가 매우 힘든''' 강의가 될 수도 있다.
2020년까지는 비슷하게 진행될 듯 하니 '''자신이 도저히 첫학기부터''' 미국식 수업을 영어로 쫓아갈 자신이 없다면 미리 프로그래밍을 공부해 오자.
물론 자기가 따로 공부해서 때우는게 먹히는건 첫학기뿐일거다. 첫학기조차도 검색능력과 영어능력 중 하나라도 딸리면 혼자서는 '''절대로''' 못 쫓아온다.
고로 반드시 반드시 반드시 영어도 제대로 공부하고 오자. '''언어로써.'''
과제의 경우, 처음에는 기본 도형들을 활용해 그림이 출력되도록 하는 과제가 나오다가, 점차 제대로 된 프로그래밍 컨셉들을 응용하도록 요구하는 어려운 과제들이 나온다. 언제나 '''배점 기준(Grading Rubric)'''에 맞춰 정말로 칼같이 점수를 매기니 배점 기준을 준수하도록 하자.
예를 들자면, '설마 라이선스 정보 하나쯤 빼먹었다고 진짜로 F 주겠어?' 의 경우, '''절대로''' F를 받는다.
배점 기준뿐만 아니라, 수업 '''내외의''' 그 어느 요소에 대해서라도 이해에 있어서의 모호한 부분이 있다면 반드시 편하게 질문하도록 하자.
수업내용 외의 교수도 모를만한 이상한 내용을 질문할 경우, '''직접 배워서라도''' 가르쳐주겠다는 답변을 주신다. 고로 안심하자.
또, 한 주차에 n개의 '''Exercise'''와 한 개의 '''Assignment'''가 나온다. 어감상의 차이로도 알 수 있듯 전자는 구체적인 개념 하나를 이용한 간단한 과제고, 후자는 그 주에 배운 개념들을 총집합시켜 완성하는 조금 복잡한 과제이다.
전자와 후자의 '''배점의 차이가 엄청나므로''' 엑서사이즈는 한두번쯤 놓치더라도 어싸는 절대로 놓치면 안된다.
5주차에는 유저 선택 기반 스토리 게임 을 만드는 과제가 나오기도 했고, 11주차에는 그 유명한 Game of Life를 직접 만들라는 과제가 나오기도 했다. 그 직후의 Assignment로써 개인 '''파이널 프로젝트'''가 튀어나왔는데...
이 과제의 타이틀은 ''''Make a Game'''' 으로, 제목과 같이 게임을 하나 만들게 된다. 프로그래밍 경험이 적은 학생들은 그냥 그 자체로도 힘들고, 이를 예전부터 공부해왔던 학생들은 자기만족을 위해 복잡한(?)[20] 게임을 만들며 모두가 사이좋게 고통받는다.
또한 p5.js를 제외한 외부 라이브러리를 활용하려면 '''반드시''' 교수님의 승인을 받아야 했기 때문에 자신의 프로젝트를 위해 직접 '''유사 3D 프로젝션'''을 구현하려고 했다던지, 혹은 직접 자바스크립트로 '''2D 물리엔진 개발'''을 시도했다던지 하던 친구들은 천국과 지옥을 오가는 경험을 했다. 이 외의 히트박스나 충돌 체크와 관련된 코드 정도는 수업에서 어느 정도 짚고 넘어간 만큼 당연히 직접 만들어서 썼었으므로 강의가 너무 쉽다고 생각되는 친구들은 이와 같은 전적들을 참고하면서 더욱 정신나간 셀프 과제에 도전해보도록 하자.
라이브러리뿐만 아니라 외부 에셋 사용에 관해서도 실제 업계에서와 동일한 수준의 제한이 있었는데, 그림 에셋이든 소리 에셋이든 뭐든지 간에 '''반드시''' 학생들이 무료로 활용가능한 '''Free for non-commercial use''' 류의 라이센스가 필요했기 때문이다. 그래서 그림을 그릴 줄 아는 친구는 전부 직접 그림을 그려서 활용했고, DAW를 만질 줄 아는 친구는 '''직접 작곡 및 시퀸싱/마스터링을 해서''' 이를 자신의 게임에 갖다 박기도 하는 등 첫학기부터 진귀한 풍경이 연출되었다.
자바스크립트로 리듬게임 & 채보 에디터[21] 를 동시에 개발하던 한 동기는 이미 존재하는 음악의 작곡가에게 이메일을 보내고, 원작자에게 사용 허가를 받고 나서 교수에게 승인을 받은 후 그걸로 게임에 들어갈 비트맵을 만든 적도 있으니 참고.
초반의 몇몇 Assignment를 제외한 모든 Assignment는 '''문서를 같이 작성해 제출해야 한다.''' 실제 게임 업계에서 일할 때를 생각해 보면 훌륭한 부분.
교수들도 이 문서 작성을 매우 중요하게 여겨서, 한 번은 David 교수가 하루 강의를 빼서 Google Document 사용 방법을 설명해 주었을 뿐더러, Final Project의 문서 점수는 무려 '''50/100'''이나 됐다.
Final Project에서 제출해야 됐던 문서는 총 3가지로, '''Theme Document, Game Code Explanation Document, Programming Concepts Document''' 가 있었다. 각각 게임 테마, 코드 설명, 이때까지 배웠던 프로그래밍 컨셉들 설명 및 사용 예시를 작성해야 했다.
이처럼 문서 작성도 중요하니 Google Document나 Microsoft Word 사용법을 공부해 오는 것도 나쁘지 않다. '''당연히''' 영어로 작성하는거다.
중반쯤에 '''Git''' 사용법을 배운 뒤로부터 모든 Assignment는 SourceTree를 이용해 Bitbucket에 제출하도록 하셨다. 여기서 영어강의를 쫓아가지 못해 꼬이는 학생들이 많으니 영 자신이 없다면 이 3개의 사용법을 미리 공부해 오도록 하자.
자신의 영어실력이 컴플리트하면서 능동적인 학습태도를 가지고 있다면 조금 빡세기만 한 평범한 과목이 될 수 있다.
허나 영어실력이 완벽하지 않은 탓에 수업을 완벽히 쫓아갈 자신은 없지만, 이를 개선시킬 생각이 있다면 영어실력이 완성될 때까지 계속해서 비벼야 한다.
이상이 새내기들이 첫학기에 맞닥뜨릴 첫 프로그래밍 강의에 대한 내용이다.
====# Spring 2020 #====
작년과 마찬가지로 디지펜 소속 Rudy Castan 교수가 직접 가르치신, 신입 학부생들이 맞닥뜨린 첫 프로그래밍 강의이다. 위에 서술한 바에 따르면 사라지게 될 예정이라 하였지만 2020년에도 유지 되었다.
역시나 복수학위 프로그램 기준 0학기의 유일한 디지펜 전공 과정이며 과목명은 C PROGRAMMING인데, 실제로 C언어를 쓰지는 않고 자바스크립트 기반의 '''p5.js 라이브러리'''를 이용해 수업을 진행한다.
처음 접하는 프로그래밍 강의인 만큼 초보자가 쉽게 하기 힘든 과목일 수 도 있지만, 충분히 루디 교수님의 강의를 잘 듣고 디지펜 사이트에 올라와 있는 기타 수업자료들을 직접 능동적으로 뜯어보고 공부하는 학생이라면 충분히 어렵지 않게 한 학기를 마칠 수 있을 것이다.
당연히 모든 교수님이 외국인이고 수업도 영어로 진행되므로 영어실력이 필요하다.
작년과 마찬가지로 과제는 초반에 기본 도형들을 활용해 그림이 출력되도록 하는 노가다 과제들이 나오다가 점차 배운 내용들을 응용하도록 하는 과제들이 나온다. 정말 칼같이 배점 기준(Grading Rubric)에 맞춰 점수를 매기니 배점 기준을 정확하게 준수 해야 한다. 파일 이름과 헤더 파일등 아주 사소한 것도 배점 기준에 어긋나면 바로 '''F'''를 받을 수 있으니 정말로 배점 기준에 주의하여야 한다.
배점 기준의 경우 상당히 애매한 표현이 많을 수 있다. 그럴 경우에는 교수님이 질문을 했을 때 엄청 친절히 답변해주시니 애매하거나 이해 안가는 내용 또는 배점 기준이 있으면 부담없이 질문하는 것을 추천한다.
과제의 경우, 주말을 제외하고 1일 1과제(exercise)가 나오며 매주 화요일마다 큰 배점이 달려있는 Assignment를 주신다. 즉, 하루에 하나씩 과제가 계속해서 나오기 때문에 미리미리 시간분배를 잘 해야한다.
또한 이 과정의 마지막 과제로 Final Project가 있는데 말 그대로 기말고사라고 생각하면 된다.
지금까지 배운 내용을 응용하여 자신만의 '''게임을 하나 만드는''' 과제다.
계속해서 교수가 내주는 과제만 하다 드디어 학생들 스스로 생각하고 상상해 왔던 게임을 '''혼자서 직접''' 만드는 과제이기도 하고, 어느 게임을 만드냐에 따라 수업에서 배운것들을 전부, 혹은 그 이상을 활용해야 하기 때문에 배점이 가장 크다.
작년과는 다르게 Final Project에서 제출해야 하는 문서는 총 2가지로 Game Design Document와 Programming Concepts Document가 있다. 각각 게임 기획서, 배웠던 프로그래밍 컨셉들 설명 및 사용 예시를 작성해야 한다.
또한 Bitbucket에 Assignment를 제출했던 작년과는 달리 2020년에는 Github를 이용해 제출하였다.
프로그래밍을 처음 접하는 학생들을 위한 과목인 만큼, 난이도는 조금 빡센 보통의 전공 과목이라고 할 수 있다.
DigiPen의 빡센 커리큘럼답게 많이 힘들다곤 하지만, 처음 입학하고 나면 전공과목은 이것 하나 밖에 없으며, 프로그래밍을 공부하지 않고 입학했다고 하더라도 자신이 직접 공부하고 코드가 작동하지 않아도 어떤 것이 문제인지 계속해서 탐구하는 자세를 가진다면 친구들이나 교수님들에게 자연스럽게 질문하면서 조금 힘들 수는 있어도 충분히 어렵지 않게 마무리 할 수 있는 과목이니 크게 겁을 먹지 않아도 된다.
능동적으로 공부하고, 코드가 제대로 작동하지 않을 때 계속 생각해 보는 습관이 있다면 충분히 통과 가능한 과목이니 너무 겁먹지는 말자.
6.2. '''CS100'''
====# Fall 2019 #====
마찬가지로 디지펜 소속 Kevin Wright 교수가 가르친 컴퓨터 사이언스 강의.
보다 학문적인 지식을 다루는 만큼 앞으로의 수업 내용에 있어서의 변동은 크게 없을 것으로 예상된다.
과목명은 '''COMPUTER ENVIRONMENT I''' 으로, 언어의 특성과 활용을 위주로 가르치는 메인 프로그래밍 과목과는 달리, 컴퓨터 활용에 있어서의 여러 실용적 지식들과 함께 앞으로 배우게 될 컴퓨터 사이언스 과목들을 위한 기반 지식이 될 공학적 측면에서의 지식들을 주로 가르친다. 당연하지만 두 강의 모두 매우 중요하다. CS100은 로우레벨, CS120은 하이레벨이라 보면 편하다.
교수님이 게임보이 어드밴스 시절에도 개발을 하셨던 만큼 관련 역사나 개발 비화도 중간중간 다뤄주시며, 특히 비트 활용과 관련된 게임 개발 테크닉에 정통하시다. 아무래도 옛날에 진짜 어셈블리어로 개발을 하셨던 분이여서 그런지도...
CS100의 경우, 모든 과목들이 그렇지만 이 과목은 특히나 배우는 내용들의 특성상 모두가 서로 연결되어 있어서 하나를 어정쩡하게 모르고 넘어가게 되면 대참사가 벌어질 가능성이 크니 반드시 열심히 물어보도록 하자...I also worked on some OS that... failed... And that's going to happen a lot.
Startup companies, it is very risky. It fails. It happens.
Not being paid, that can happen.
It can be good, can be bad... An interesting experience.
I also worked for Halo 5, the biggest project that I ever laid my hands at, and I was in the UI team.
...
'''The object of this class is to demistify the computer!'''
~ 2019년 9월 3일, 첫 강의 中 ~
배우는 내용 하나하나에 대해 좋은 퀄리티의 과제와 퀴즈가 꽤나 자주 나오기 때문에 자기가 개념을 이해했는지 못했는지는 매우 빠른 시간 내에 점수를 통해 몸소 깨달을 수 있으니 걱정하지 않아도 된다.
처음에는 OS의 정의로부터 시작해서 환경 변수 설정, 개발자 명령 프롬프트, 컴파일러 / IDE의 정의, 그리고 여러 윈도우 / VS 키보드 숏컷에 더해 이진수까지 첫 주에 전부 커버를 하고, 끝나자마자 데이터 타입 / 16진수와 비트 연산으로 뛰어들게 된다.
데이터 타입들의 범위와 16진수까지 커버하고 나면 이들 사이의 연산을 손으로 계산하는 방법, 그리고 이를 C++로 재현하는 방법을 배운다. 중간에 ASCII 테이블도 짚고 넘어간다. 처음에는 C++을 활용해서 16진수 ↔ 2진수 ↔ 10진수를 서로 변환해주는 프로그램 만들기와 같은 과제가 나오는데, 이때까지는 사칙연산 기호의 활용이 자유다.
이들을 통해 컴퓨터의 Data Representation (Bit)에 대해 어느 정도의 기반 지식을 쌓고 나면 3주차에는 전자공학이 튀어나온다.
고등학교에서 물리를 배웠다면 물리 I때 배웠을 기본적인 전기 관련 개념들과 계산 공식들을 짚고 넘어가고, 회로의 전기 저항 계산법도 배운다. 거기에다가 릴레이와 스위치가 튀어나오는데... 이는 논리 게이트의 내부 구조를 설명하기 위함이다!
Truth Table을 통해 여러 논리 게이트가 서로 연결된 논리 회로의 인풋에 대한 아웃풋을 눈과 손을 통해서 직접 계산할 수 있도록 가르치고, 불 연산과 기본적인 연산 법칙들도 배운다. (기본적이라고는 해도 꽤나 많지만, 한번 이해하면 기억하기 편하다)
이들을 배우고 나면 브레드보드 시뮬레이터를 통해서 회로를 직접 만들고 제출하는 랩을 하게 되고, 이에 관련된 퀴즈를 치게 된다.
전자적인 지식까지 습득하고 나면, 이제 신나는 ALU 연산이 기다리고 있다!
처음에는 더하기와 빼기를 사칙연산 기호를 배제하고 오로지 비트 시프트만을 활용하여 구현하도록 하는 방법을 가르치는데, 과제에서 엑스트라 크레딧이나 만점을 받기를 원한다면 루프를 배제하거나, 하드코딩을 최대한 배제하는 등 알고리즘을 최적화시켜야만 한다.
비트 마스크, 2의 보수, 음수의 표현, ALU 곱셈 및 나눗셈, 16진수로의 색 표현, 24비트 RGB와 16비트 RGB 사이의 변환 등...
세세하게 가르쳐주거나 신경써야 하는 디테일들을 전부 배제하고도 이정도니 배우게 되는 양이 장난이 아니라는걸 알 수 있다.
그리고 이때부터는 교수님이 직접 개발하신 '''어셈블리어 에뮬레이터'''를 활용하여 어셈블리어로 코드를 짜서 제출하게 된다. 당연하지만 코드가 너무 길어도, 불필요한 이터레이션이 있어도, 로직이 너무 비효율적이여도 점수가 까인다. 퍼즐을 잘 푸는 쪽으로 머리가 특화되어 있다면 하드코어한 퍼즐게임을 하는 기분으로 할 수 있...다?
이때 즈음에 중간고사인 필기시험 하나를 치게 된다.
이 뒤에는 메모리 디버거의 활용, RAM과 레지스터, Little / Big Endian, 거기에 포인터까지 더해서 앞으로도 오랫동안 메인 프로그래밍 과목에서 뼈가 되고 살이 될 개념들을 한 주만에 이들의 IDE에서의 활용을 포함해 디테일하게 다루게 되고, 여기에 더해 더 많은 종류의 어셈블리어 커맨드를 배우면서, 어셈블리어만으로 덧셈 / 뺄셈 / 곱셈 / 나눗셈 / 진수 변환 등과 같은 별의별 상황에 전부 대응하도록 하는 과제와 퀴즈들이 나온다.
이 뒤에는 여러 진수 사이의 비트 연산을 손으로 계산하게 되는 필기시험과 주어진 조건을 만족하도록 코드를 짜는 어셈블리어 시험이 있고, 이 모두를 치고 나면 한 학기가 끝나게 된다.
배우는 모든 내용들이 메인 프로그래밍 과목과 밀접한 연관이 있을뿐만 아니라 '''앞으로의 모든 컴퓨터 사이언스 강의를 수강하는 데에 있어서의 근간 지식이 되기 때문에''' 점수도 점수이지만, 점수가 낮게 나올 것 같다 하더라도 마지막까지 정말로 열심히 들어야 한다. 배우는 양도 많고, 물리나 공학 관련 기반 지식이 적다면 내용들의 난이도도 꽤나 높게 느껴질 과목이기 때문에 멘탈 케어에 주의.
6.3. '''CS120'''
====# Fall 2019 #====
6.4. '''CS170'''
6.5. '''CS230'''
7. 게임 프로젝트 강의
7.1. GAM100
====# 개요 #====
David 교수님이 담당하신, 복수학위 프로그램 커리큘럼에서의 첫 '''게임 프로젝트''' 강의.
다른 과목들과 마찬가지로 많은 개편을 거쳤으나 스케줄 및 난이도 조절에 실패하여 2019년도 입학생들에게 가장 큰 고통을 준 수업이다.
CS099에서 배운 '''자바스크립트'''를 기반으로 이미 존재하는 게임을 카피하는 프로젝트인 '''마스터 카피 프로젝트''', 그리고 1학기의 CS120에서 실시간으로 가르쳐주는 '''C++'''과 루디 교수님의 '''doodle framework'''를 활용하여 자신만의 아이디어를 프로토타이핑하는 '''프로토타입 프로젝트'''의 두 파트로 나뉘어져 있다.
원래는 '''첫 6주'''동안 '''마스터 카피 프로젝트'''를, 그리고 중간고사가 끝나고 나자마자 '''2주 간격'''으로 '''프로토타입 개발 & 발표'''를 '''세 번''' 반복할 예정이였는데, 중간고사와 함께 1학년들의 워크로드가 폭발해버리면서 프로토타입이 두 개[22] 로 줄었다는 슬픈 이야기가 있다.
과목명은 '''Project Introduction'''. 제대로 된 학기 단위의 게임 프로젝트들을 시작하기 위해 알아야 하는 것들을 가르쳐주는 강의이다.
아래는 데이빗 교수님의 과목에 대한 소개.
Okay! So, '''GAM100'''. That's all of your '''game project courses''' for now.
They are meant to give you an '''actual experience''' in '''making a product'''.
'''Video game is not just about making game or learning game design.'''
There's really lots of things to learn in form of communications and etc... All of them are a part of making games.
Here, we're going to cover lots of things.
'''Just learning programming / game design won't make you a game developer.'''
let's say that you want to run a indie developing team.
How will you '''hire?''' Or '''manage''' the team?
What happens if one of your employess '''doesn't work the way you want?'''
How will you '''separate''' your game from the average ones that people love to play?
~ 2019년 9월 3일, 첫 강의 中 ~
각 프로젝트마다 '''2~3명''' 사이의 인원수로 구성되는 팀 을 하나씩 만든 후, 주어진 '조건'을 만족시키는 결과물을 만들어내기 위해 매주 최소 '''8~56시간[23] ''' 정도의 시간을 투자해가며 구르고 또 구르기를 강제하는 수업이다.You may be motivated for a day, but every day? This is where the ''''dicilpine'''' comes in.
아무 제한 없이 편하게 게임만 만든다고 하면 쉬워보일 수도 있겠지만, 중간고사와 기말고사, 그리고 끝없는 '''랩'''과 '''과제'''와 '''퀴즈'''의 향연 속에서 멘탈을 필사적으로 잡아가며 온 힘을 '''한 학기 내내''' 게임 서너개에 쏟다보면 미쳐간다는게 뭔지 제대로 느껴볼 수 있다. 시험공부와 함께.
프로젝트를 위해 다른 과목들의 과제를 소홀히 하면 필연적으로 메인 프로그래밍 과목의 파이널[24] 에서 박살이 나도록 되어있고, 그렇다고 과제에 시간을 너무 많이 써서 프로젝트를 소홀히 해버리면 인간관계뿐만 아니라 교수님의 호감도와 함께 GAM100 그레이드가 동시에 날아간다. 여러모로 '''효율적인 시간분배'''를 강제하는 강의이다.
====# 마스터 카피 #====
주어지는 개발기간은 '''6주'''.
고를 수 있는 게임에 제한은 없다. '''게임의 난이도'''와 '''팀원 구성'''에 따라 평가 기준이 달라지는 부분은 있으나, 기본적으로는 게임을 '''완벽하게''' 똑같이 만드는 것을 목표로 한다. '''프레임 / 픽셀 단위로'''.
게임 카피를 본격적으로 시작하기 전, '''게임 디자인 브레이크다운 다큐먼트'''를 먼저 작성해서 제출하도록 하는데...
게임의 '''하이 컨셉트, 게임 플로우, 게임 서머리, 메인 메카닉''' 등 실제 게임 디자인 다큐먼트에 준하는 수준의 분량과 디테일을 요구하며, 말할 필요도 없이 '''영어'''로 작성한다. '''포매팅'''이 저세상이여도 점수가 까이고, '''글만 너무 많아도''' 점수가 까이고, '''디테일이 딸려도''' 점수가 까인다. 고른 게임에 따라 '''1주 내로''' 50페이지 분량의 문서를 작성해야 할 수도 있다.
'''원-페이지 디자인 다큐먼트'''가 엑스트라 크레딧의 조건으로써 들어가 있었다. 참고.
대부분의 팀들은 게임을 진짜로 완벽하게 카피하지는 않고, 점수 손실을 감안하고 메인이 되는 메카닉까지의 구현을 끝내는 선에서 멈춘다. 물론 게임을 완벽히 카피하려고 한 팀들은 상기한 56시간을 6주 내내 버텨냈다 카더라.
고르는 게임에 따라 간단한 '''물리엔진'''을 직접 만들어야 할 수도 있고, '''오브젝트 / 씬 관리'''를 건드려봐야 할 수도 있고, '''카메라'''를 만져야 할 수도 있다. 맵이 복잡한 경우에는 '''맵 제작 툴부터 맵 데이터 로더'''까지 전부 만들어야 한다.
프로그래밍만이 문제가 되는 것이 아니라, 모든 이미지 관련 에셋들을 '''직접 그려야 한다'''는 조건까지 붙어있다! 다행히도 음악이나 SFX에 한해서는 이미 존재하는 것들을 사용할 수 있도록 허용해주셨다.
'''NES 마리오'''를 카피한 모 팀은 실제 게임 내에서의 프레임 당 이동거리(픽셀 | 서브픽셀 | 서브서브픽셀 수)에 맞춰 모든 값들을 '''16진수'''로 정리한 다음 이를 floating point 값으로 바꿔주는 헬퍼 함수를 만들어서 마리오에 적용되는 중력 / 이동속도 / 스키딩 속도 모두를 게임과 똑같도록 고증했다고 한다. 이렇게까지 하고도 5점을 까였다.
마스터 카피 프로젝트의 목적 자체가 '''게임 프로젝트를 말아먹어보도록 하는 것'''으로, 존재 이유부터가 '''스코핑'''의 중요성을 깨닫게 하기 위한 것이니 완벽함을 위해서 자신의 신체적 및 정신적 건강상태를 필요 이상으로 소모시키지는 말자. 평가 기준은 상기했듯이 구현 난이도와 팀 로스터에 따라 언제나 '''유동적'''이니, 무언가에 문제가 있다고 생각되면 곧바로 과 디스코드의 '''코스 채널'''에 질문을 하거나 무들을 통해 1:1 면담을 신청하자.
브레이크다운 다큐먼트와 개발 파트를 끝냈다면, 축하한다! 곧바로 '''마스터 카피 프레젠테이션'''과 '''중간고사'''가 찾아올 것이고, 바로 그 주부터 '''다음 프로토타입 프로젝트'''가 시작된다.
====# 프로토타입 #====
주어지는 개발기간은 '''2~3주'''.
프로토타입은 영어 뜻 그대로 폴리싱 없이 '''기본적인 메카닉'''만 구현해놓고 '''아이디어가 굴러가나 안 굴러가나'''를 평가하기 위한 제한된 버전의 게임이다.
학기 단위의 프로젝트가 본격적으로 시작되기 전, 각자가 시험해보고 싶었던 독특한 아이디어나 메카닉을 시도해 볼 수 있는 절호의 찬스.
팀원 수는 마스터 카피와 비슷하게 2~3명이며, 이미 존재하는 게임을 따라하는 것이 아닌 자신만의 아이디어의 구현을 시도해보는 프로젝트인 만큼 '''역할군도 다양해진다'''. '''디자이너와 프로듀서'''의 중요성이 가장 크게 드러나고, 디자이너나 프로듀서가 무능하면 무슨 일이 벌어지는지를 실시간으로 체험해볼 수 있다.
경험이 부족한 학생들이 처음으로 자기 자신들의 아이디어로 자기 자신들이 개발을 시도하는 만큼 개발 도중에 프로젝트가 터지기 '''매우''' 쉽다. 고로 데이빗 교수님은 게임 강의시간에 게임 디자인 관련 강의를 하시거나, 혹은 각 팀들의 진행상황을 체크함과 동시에 디자인에 대한 질 높은 조언을 계속해서 해주신다.
아이디어에 따라서 '''2D 라이팅 / PCG / 인터프리터(???)''' 등을 건드리는 만큼 프로젝트의 난이도는 디자이너 및 프로그래머의 역량에 따라 천국과 지옥을 오간다. 적당한 게임을 만들고 만족할 수도 있고, 아니면 영혼을 갈아넣어 나쁘지 않은 정도의 작품을 만들 수도 있다.
팀원들 중에 그림을 잘 그리는 사람이 있다던지, 혹은 DAW를 만질 줄 아는 사람이 있다면 아트 리소스를 적극적으로 활용해 이게 프로토타입인지 게임인지 분간이 안갈 정도의 작품들을 만들 수도 있다. 허나 언제나 그랬듯이 '''메인은 어디까지나 메카닉 테스팅 및 프로그래밍이다'''. CS120이 프로토타입 기간동안 과제를 내주지 않는 대신에 프로토타입의 '''코드 퀄리티'''를 평가항목에 반영하기 때문.
마지막 프로토타입은 '''기말고사 기간'''과 반드시 겹치게 되어있으므로 시간 분배를 언제나 염두에 두도록 하자.
8. 관련 항목
생활 가이드북 (Blue Book) 디지펜 게임공학전공 생활 가이드북 (Blue Book) 이다. 디지펜 게임공학전공과 디지펜 공과대학교의 소개와 역사, 학사 안내뿐 아니라 디지펜 공과대학 이동을 위한 준비 사항 등 전반적인 내용이 담겨있다. 자주 묻는 질문에 대한 FAQ도 실려있다.
8.1. 졸업생이 제작에 참여한 게임
'''MineCraft, Overwatch''', Destiny, Fable, '''Fallout, Golden-Eye 007''', Guitar Hero, '''Halo, God of War,''' '''Half-Life, Mass Effect, Hearthstone,''' Infamous, '''League of Legends''', LEGO Universe game, Guild Wars, '''Mario Kart, Left 4 Dead, Portal, Portal2, Red Dead Redemption,''' Rock Band, '''Scribblenauts,''' Peggle, '''Need for Speed, Silent Hill''', '''The Last of Us, Starcraft, Starcraft II: Wings of Liberty, Elder Scrolls V: Skyrim, Tomb Raider,''' Team Fortress 2, '''The Sims, The Legend of Zelda, Titanfall, World of Warcraft,''' Star Wars Games, The Walking Dead Games, '''Super Smash Bros,''' and many more...
한번쯤 이름 정도는 들어봤을, 날고 긴다는 게임들이라면 이곳에 있을 가능성이 크다.