아크로폴리스

제목디지펜으로 보는 소융이 가질 수 있는 개선점2018-10-28 13:12:14
작성자

디지펜DigiPen은 미국 워싱턴Washington주 레드몬드Redmond에 위치해있는 대학이다.  레드몬드시는 워싱턴의 주도인 시애틀Seattle과 밸브Valve Corporation의 본사인 벨브Bellevue와 접해있다.  학부는 총 9개의 학부로 구성되어있고, 대학원은 두 개의 석사 과정이 있다. 

학부는 다음과 같이 편성되어있다.

  • 실시간 상호작용 시뮬레이션 Computer Science in Real-Time Interactive Simulation
  • (공과) 게임 디자인 Computer Science and Game Design
  • 디지털 오디오 Computer Science and Digital Audio
  • 컴퓨터과학 Computer Science
  • 머신러닝 Computer Science in Machine Learning
  • 컴퓨터공학 Computer Engineering
  • 디지털 미술과 애니메이션 Fine Arts in Digital Art and Animation
  • (예술과) 게임 디자인 Arts in Game Design
  • 음악과 사운드 디자인 Arts in Music and Sound Design

석사 과정은 다음 두 가지가 있다.

  • 컴퓨터과학 Computer Science
  • 디지털 미술 Digital Arts


[학사]

실시간 상호작용 시뮬레이션 Computer Science in Real-Time Interactive Simulation

이 과정은 수학과 물리를 기반으로으로 일반적인 컴퓨터공학 과정과 컴퓨터 그래픽스 분야를 다룸.


(공과) 게임 디자인 Computer Science and Game Design

이 과정은 학부생들로 하여금 엔지니어와 디자이너의 소양을 두루 갖춘 하이브리드 인재로 키움. 이 인재상은 프로그래밍 실력과 탄탄한 수학적 기본에 게임 디자인을 추가한 것임. 졸업생들은 게임플레이 프로그래밍, UI 프로그래밍, 인공지능 프로그래밍에 능통하고, 게임 디자인 이론과 플레이테스팅에 관해 탄탄한 지식을 갖추고 있음.


디지털 오디오 Computer Science and Digital Audio

이 과정은 4년제 소프트웨어공학 과정으로 게임 오디오 제작에 중점을 둠. 본 학부의 학부생들은 탄탄한 수학, 물리학과 컴퓨터 과학을 우선적으로 학습한 다음 년年 단위의 팀프로젝트를 통해 오디오에 관한 응용 학문을 실습함.


컴퓨터과학 Computer Science

이 과정에선 학부생으로 하여금 컴퓨터과학이론을 기반으로 여러 팀프로젝트를 이용한 실전 응용을 하게 함. 학부생은 실세實世의 데이터를 수집하고, 저장하고, 분석하여 분산 컴퓨팅 기기를 연결하고 사용하여 매우 자연스러우며 직관적인 디지털 인터페이스를 개발함.


머신러닝 Computer Science in Machine Learning

이 과정은 학부생에게 데이터사이언스 지식과 응용수학을 이용하여 복잡한 문제를 풀 수 있게 함. 이를 이용하여 다양한 분야에서 응용할 수 있는 머신 러닝 시스템을 디자인하고, 개발하고, 관리하는 방법을 가르침. 이 과정에선 세 가지 중점사항을 둠. 자율학습강화학습지도학습. 이 세 가지를 배울 뿐만 아니라, 언제 어떻게 이 방법을 사용해야하는지도 가르침.


컴퓨터공학 Computer Engineering

이 과정은 학부생이 하드웨어와 소프트웨어 인터페이스를 모두 이해하는 공학도를 기름. 이는 운영체계 개발을 위한 회로 설계를 포함함. 다양한 학문을 두루 겸하기에 이 과정은 전자공학과 컴퓨터과학의 핵심 분야를 모두 학습함.


디지털 미술과 애니메이션 Fine Arts in Digital Art and Animation

이 과정에선 학부생들로 하여금 다양한 디지털 미디어 산업에 실제 제작에 참여하는 아티스트나 애니메이터가 될 수 있게끔 함.


(예술과) 게임 디자인 Arts in Game Design

이 과정은 학부생을 다양한 유형의 플레이어들을 만족시킬 수 있는 현대적인 게임 디자이너로 양성함. 졸업생은 디지털이든 아니든, 게임 이론에 통달하며, 시스템 디자인, 레벨 디자인, 행동 디자인과 플레이테스팅을 두루 통달함.


음악과 사운드 디자인 Arts in Music and Sound Design

이 과정은 4년제 과정으로, 인터랙티브 사운드 디자인에 중점을 두고 있다. 이 과정에선 음악사, 작곡, 음악이론 및 기악을 포함한 음악학을 기반으로 실제 스튜디오 녹음 기술과 사운드 디자인에 대한 실습을 진행함.


[석사]

컴퓨터과학 Computer Science

이 과정에선 3D 컴퓨터 그래픽스, 애니메이션, 모델링 기술, 인공지능 알고리즘, 이미지 프로세싱 및 실시간 렌더링을 중점으로 함. 위의 중점사항은 관련된 컴퓨터과학, 수학 및 물리학과 연관되어 실습이 진행됨. 위 과정을 수강하는 대학원생은 석사과정을 전부 수행하거나 일부만 수행할 수 있음.


디지털 미술 Digital Arts

관련 분야나 미술 쪽의 학사를 갖고 있는 졸업생이나 전문 아티스트들을 겨냥한 과정이다. 이 과정에선 미술학부 중 디지털 프로덕션을 중심으로 대학원생의 개인적인 실력과 예술적 감각을 모두 증진함. 위 과정을 수강하는 대학원생은 석사과정을 전부 수행하거나 일부만 수행할 수 있음.


여기서 소융이 가질 수 있는 개선점은 분야의 다양성이다. 다만, 소융은 소융이지 게임콘텐츠가 아님은 명심해야하기에, 경희대 소융의 게임콘텐츠트랙은 한계를 가질 수 있다. 그렇다면 게임콘텐츠는 여러 분야를 전부 다루기보다는, 특정 분야에 우선 집중하는 것이 좋다고 생각된다. 이는 현재처럼 디자인심화와 컴퓨터심화를 우선 유지하는 것인데, 컴퓨터심화는 디지펜 게임 프로그래밍에 해당하고 디자인심화는 게임디자인에 해당할 것이다.


우선 석사는 추후에 다루기로 하고, 학사 과정을 먼저 다뤄보겠다. 이 중에서 경희대학교 소프트웨어융합학과와 비슷해보이는 과인 (공과) 게임 디자인 과정을 살펴보도록 하자.

학부 세부 정보

디지털 엔터테인먼트 분야는 더 이상 과거처럼 몇명으로 이뤄진 팀이 아닌 수많은 개발자들에 의해 개발이 되는 분야가 되었다. 특히 게임 분야의 경우 큰 팀의 경우 단 하나의 게임을 개발하는데 100 명이 넘는 개발자들이 동원되기도 한다. 이렇듯 이 산업의 증가추세는 즉 분야의 전문가들을 요구하게 되었으니, 이 전문가들은 주로 엔지니어, 아티스트와 디자이너들을 의미한다. 전체적으로 전문화가 진행되었기에 오히려 최근 디지털 엔터테인먼트에서는 엔지니어 분야와 디자인 분야를 두루 섭렵한 하이브리드 인재를 요구하게 된다. 즉, 프로그래밍 실력과 수학적인 기반이 탄탄하며 게임 디자인 또한 철저하게 교육받은 인재가 필요해진 것이다. 이와 같은 하이브리드 개발자는 게임 개발에서 요구되는 공학적인 분야와 창의적인 분야를 이어주고, 엔지니어와 디자이너의 역할을 상황에 따라 수행한다. 이 학부의 졸업생들은 C와 C++와 같은 핵심 언어로 게임을 짤 수 있으며 이를 기반으로 스크립트 언어로 프로그래밍을 하고, 게임 로직, UI, 인공지능 및 디자인 툴을 익힌다. 졸업생들은 또한 게임을 디자인하고 레벨 디자인을 줄 수 있으며, 시스템 디자인, 게임 행동 등을 설계할 수 있다. 졸업생들은 또한 수많은 팀프로젝트 수업을 통해 테스트, 피드백 및 수정하는 과정을 겪었을 것이다.


입학 정보

이 학부에 입학하려는 학생은 게임(디지털이든 아니든) 디자인(+ 레벨 디자인, 시스템 디자인 및 행동 디자인)에 열정을 갖고 있어야 함. 탄탄한 수학적 기반(최소 기초적인 미분적분학 수강), 과학적 기반, 글쓰기 능력을 통한 강력한 분석력을 갖고 있어야함. 입학생들은 디지펜에 입학하기 전 미분적분학, 물리학 및 컴퓨터과학과 관련된 기초적인 강의(경희대학교의 [미분적분학], [미분적분학1, 2], [물리학 및 실험 1, 2], [소프트웨어융합개론] 및 [웹파이썬프로그래밍]에 해당)를 수강하기를 권고함.


수학 및 과학 요구사항

  • 최소한 B0 이상의 기초미분적분학
  • 다음 사항은 권장사항임. 미분적분학, 물리학 및 컴퓨터과학개론을 수강하였으며, 관련된 AP 강의를 수강.


중점 과목

본 학부에선 다음 과목에 중점을 둠.

  • 게임 디자인 및 개발. 게임사(史), 게임분석, 게임메카닉스, 게임 다이나믹스, 게임미학, 2D 및 3D 레벨 디자인, 캐릭터 행동 디자인, 인공지능 프로그래밍, 디자인 문서화, 플레이테스팅
  • 필수 학문. 선형대수학, 미분적분학, 물리학, 컴퓨터과학(C, C++ 및 여러 스크립트 언어) 등
  • 교양. 심리학, 글쓰기, 소통학 등.


경희대의 특징인 후마니타스에서 핵심 교양은 전부 다 빼고 글쓰기만 남겨놓은 형태다. 여기서 심리학, 글쓰기, 소통학 등이 남은 이유는 심리학과 글쓰기는 게임 디자인에 있어 특히 시나리오 등에 영향을 주기 때문이고, 소통학의 경우 게임 개발이란 여럿이서 회의를 함으로써 진행되기 때문에 필요하다. 즉, 개인의 전공에 필요한 교양을 가르치는 것이다. 후마니타스와는 대비되는 교육과정이다.


본 학부에 대한 소개 및 다루는 과목들에 대한 소개 영상


공학 게임 디자인 학부 및 예술학 게임 디자인 학부의 차이점


졸업 후 예상 직업

본 학부의 졸업생들은 입문부터 중급 수준의 역할을 맡을 것을 기대함. 본 역할은 다음과 같은 역할을 의미함.

  • 게임 디자이너
  • 레벨 디자이너
  • 시스템 디자이너
  • 테크니컬 디자이너
  • 콘텐츠 디자이너
  • 엔카운터 디자이너
  • 소프트웨어 엔지니어
  • 소프트웨어 개발자
  • 소프트웨어 개발 엔지니어
  • 소프트웨어 개발 엔지니어 테스터
  • 소프트웨어 분석가
  • 컴퓨터 프로그래머
  • 게임플레이 프로그래머
  • 인공지능 프로그래머
  • UI 프로그래머
  • 툴 프로그래머
  • 게임 스크립터

이 학부 과정에선 프로듀서, 프로그램 매니저, 테크니컬 프로그램 매니저, 테크니컬 라이터 등과 같은 직업을 얻을 수 있게 도와주는 추가적인 실습들을 제공함. 지난 수년간 본 학부의 졸업생들은 선임 엔지니어, 선임 디자이너, 테크니컬 디렉터, 크레이티브 디렉터와 디렉터 등의 보직을 얻음.


학부생 예상 로드맵

학기
과목
과목명
전공필수여부(X)
학점
1.1
GAM 100
프로젝트개론 Project Introduction
X
3
CS 100
컴퓨터환경 Computer Environment
X
4
CS 120
고수준 프로그래밍 1: C 언어 High-Level Programming I: The C Programming Language
X
4
MAT 140
선형대수와 기하학 Linear Algebra and Geometry
X
4
ENG 110*
글쓰기 Composition

3
COL 101
대학생활과 학문 College Life and Academic Skills

1
학기 총 학점
19
1.2
GAM 150
프로젝트1 Project I
X
3
CS 170
고수준 프로그래밍2: C++ High-Level Programming II: The C++ Programming Language
X
4
CS 230
게임 아키텍쳐 Game Implementation Techniques
X
3
MAT 150*
미분적분학과 해석기하학1Calculus and Analytic Geometry I
X
4
COM 150
대인관계와 업무 소통 Interpersonal and Work Communication

3
학기 총 학점
17
2.1
GAM 200*
프로젝트 2 Project II
X
4
CS 180
운영체제 1: 사람-기계 인터페이스 Operating System I, Man-Machine Interface
X
3
CS 225
고급 C/C++ Advanced C/C++
X
3
MAT 200*
미분적분학과 해석기하학2 Calculus and Analytic Geometry II
X
4
DES 115
게임디자인개론 Introduction to Game Design
X
3
학기 총 학점
17
2.2
GAM 250*
프로젝트 2 Project II
X
4
CS 280
데이터구조 Data Structures
X
3
MAT 250
선형대수 Linear Algebra
X
3
DES 212
시스템 디자인 방법론 System Design Methods
X
3
PHY 200
동역학 Motion Dynamics
X
4
PHY 200L
동역학 실습 Motion Dynamics Lab
X
1
학기 총 학점
18
3.1
GAM 300*
프로젝트 3 Project III
X
4
CS 330
알고리즘 분석 Algorithm Analysis
X
3
CS 380*
게임 인공지능 Artificial Intelligence for Games
X
3
MAT 258
이산수학 Discrete Mathematics
X
3
DES 214
레벨 디자인 방법론 Level Design Methods
X
3
PHY 250
파동, 광학 및 열역학 Waves, Optics, and Thermodynamics

4
학기 총 학점
20
3.2
GAM 350*
프로젝트 3 Project III
X
4
CS 325
UI/UX 디자인 User Interface and User Experience Design
X
3
CS Elective
2학년 이상 컴퓨터과학 전공필수 Any three-credit CS course numbered 200 or higher.
X
3
DES 315
테크니컬 디자인 방법론 Technical Design Methods
X
3
Math or Science Elective
2학년 이상 수학 혹은  물리학 과목 Any three-credit MAT or PHY course numbered 200or higher

3
PSY 101
심리학개론 Introduction to Psychology

3
학기 총 학점

19
4.1
GAM 375 or GAM 400*
프로젝트 3 혹은 프로젝트 4 Project III or Project IV
X
4
CS Elective
2학년 이상 컴퓨터과학 전공필수Any three-credit CS course numbered 200 or higher.
X
3
Design Elective
2학년 2학기 이상 디자인학 혹은 UX 과목 전공필수 Any three-credit DES or UX course numbered 250 or higher.
X
3
Math or Science Elective
2학년 이상 수학 혹은 물리학 과목Any three-credit MAT or PHY course numbered 200 or higher.

3
Art, CG, or Music Elective
미술학, 컴퓨터그래픽스, 혹은 음악학 중 택1 ART 105, CG 102, CG 125, CG 130, or MUS 115

3
학기 총 학점
16
4.2
GAM 400 or GAM 450*
프로젝트 4 Project IV
X
4
CS Elective
2학년 이상 컴퓨터과학 전공필수 Any three-credit CS course numbered 200 or higher.
X
3
Design Elective
2학년 이상 디자인학 전공필수 Any three-credit DES course numbered 200 or higher.
X
3
English Elective
글쓰기 과목 Any three-credit course with the ENG designation.

3
HSS Elective
교양 과목 Any three-credit course from the Department of Humanities and Social Sciences, except those with the COL designation.

3
학기 총 학점
16
학부 총 학점
최소 142


졸업 필수 요건

최소 학점 및 졸업 학점

최소 142 수강학점에 졸업시 2.0보다 높은 학점을 유지해야함. 본 학부는 각 15주로 이루어진 총 8개의 학기로 이루어져 있어 4년제임.

전공필수 학점 요건

학부생은 전공필수에서 최소 C-이상의 성적을 받아야함. 전공필수 이외의 과목에선 최소 "D" 이상을 받아야함. 전공필수는 컴퓨터과학, 디자인 및 프로젝트 과목을 포함함. 모든 수학, 물리학 과목은 전공필수로 간주함.

컴퓨터과학 교과목 요구사항

다음 과목은 필수적으로 수강해야함: 컴퓨터환경, 고수준 프로그래밍 1, 2, 운영체제 1: 사람-기계 인터페이스, 고급 C/C++, 게임 아키텍쳐, 데이터구조, UI/UX 디자인, 알고리즘 분석

위의 필수과목을 수강한 다음 컴퓨터과학 과목 중 2학년 이상 수강 가능한 과목을 12학점 이상 수강해야함 (총 42 학점)

수학 및 과학 교과목 요구사항

다음 과목은 필수적으로 수강해야함: 선형대수와 기하학, 미분적분학과 해석기하학 1 혹은 벡터 미분적분학 1, 미분적분학과 해석기하학 2 혹은 벡터 미분적분학 2, 선형대수학, 이산수학, 동역학 및 실습, 파동, 광학 및 열역학.

위의 필수과목에 2학년 2학기 이상 수강 가능한 물리학 과목이나 2학년 1학기 이상 수강 가능한 수학 과목을 6학점 이상 수강해야함 (총 33 학점) 

프로젝트 교과목 요구사항

다음 과목은 필수적으로 수강해야함:  프로젝트개론, 프로젝트1.

위의 필수과목에 2학년 이상 수강 가능한 게임 프로젝트 과목이나 컴퓨터과학 프로젝트 과목을 24학점 이상 수강해야함 (총 30 학점)

디자인 교과목 요구사항

다음 과목은 필수적으로 수강해야함:  게임디자인개론, 시스템 디자인 방법론, 레벨 디자인 방법론, 테크니컬 디자인 방법론.

위의 필수과목에 2학년 이상 수강 가능한 디자인 과목을 6학점 이상 수강해야함 (총 18 학점)

심리학 교과목 요구사항

다음 과목은 필수적으로 수강해야함:  심리학개론 (총 3 학점)

국어(영어) 교과목 요구사항

관련 과목 6학점 이상 수강해야함 (총 6 학점)

교양 교과목 요구사항

교양학부 중 신입생 필수 교과를 제외한 과목 3학점 이상을 수강해야함 (총 3 학점)

미술학, 컴퓨터 그래픽스, 음악학 교과목 요구사항

위의 교과목 분야 중 1개를 택하여 다음 중 하나를 수강해야함: 시각표현의 기초 Fundamentals of Visual Expression, 미술제작방법론 Art Processes, 디자이너를 위한 2D 도트 그래픽 2D Raster Graphics for Designers,  디자이너를 위한 3D 제작 개론 Introduction to 3D Production for Designers, 3D 컴퓨터 애니메이션 제작 1 3D Computer Animation Production I, 음악과 사운드 디자인 개론 Fundamentals of Music and Sound Design.

소통 교과목 (취/창업 대비) 요구사항

다음 과목은 필수적으로 수강해야함:  대인관계와 업무 소통 (총 3 학점)

신입생 기초 교과목 요구사항

다음 과목은 필수적으로 수강해야함:  대학생활과 학문 (총 3 학점)

일반적으로 요구되어지는 교과목

다음 교과목들은 일반적인 학부생으로서 요구되는 교과목들이다: 대인관계와 업무 소통(3 학점), 심리학개론(3 학점), 두 개의 국어 교과목 (6 학점), 선형대수와 기하학(4 학점), 미분적분학과 해석기하학1 혹은 벡터미분적분학1 (4 학점), 미분적분학과 해석기하학2 혹은 벡터미분적분학2 (4 학점), 동역학 및 실험 (4 학점 + 1 학점), 교양 교과목 택 1 (3 학점)


학부의 생김새를 보아하니, 경희대학교와는 완전 정반대이다. 기초 글쓰기나 소통학을 1학기때 후딱 끝내놓고, 교양과목은 4학년 2학기 때 3학점짜리 두 개를 들을 것을 권고하고 있다. 1학년때부터 졸업할 때까지 프로젝트 수업은 언제나 존재하는 것이 인상적이다. 엄청 학부생들을 쥐어짜는 듯한 인상이 든다.

소융 또한 프로젝트(포트폴리오) 수업이 많다. 하지만, 디지펜에서의 프로젝트 수업과는 다르다. 소융의 프로젝트 수업은 기반이 되는 교과목(게임 프로그래밍 입문 등)에서 프로젝트를 진행하는 것이지만, 디지펜에서의 프로젝트 수업은 그런 거 없이 그냥 프로젝트 그 자체이다. 오히려 기반이 되는 교과목이 없이, 지금까지 가르친, 혹은 스스로 공부한 것을 토대로 팀을 기반으로 프로젝트를 진행하니, 학습효과는 어마어마할 것이다.


교과목 설명

컴퓨터환경

컴퓨터의 기초를 세부적으로 배움. 다루는 내용은 진법체계, 계산, 전기, 간단한 회로, 논리회로, 메모리, 컴퓨터구조, 운영체제 등이 있음. 오퍼레이셔널 코드와 어셈블리어를 다루며 PC나 자율주행 자동차와 같은 하드웨어 수준에서 실습을 함.


​하드웨어 수준을 첫 학기 때 후딱 다루고 있다. 그래도 공대생(?)으로서의 기초를 다루려는 것 같다. 소융개론에 해당하나 하드웨어 수준의 실습에서 그 차이가 있는 것 같다. 개인적으로도 컴퓨터심화를 지망하거나 미자로가 아니면 크게 필요성을 느끼지는 않는다. 


스크립트와 프로그래밍개론 Introduction to Scripting and Programming

프로그래밍에 익숙하지 않은 학부생을 대상으로 함. 본 강의는 간단한 로직, 프로그래밍 플로우와 변수의 사용을 다룸. 프로그래밍의 역사와 프로그래밍 업계에서 사용하는 간단한 어휘들을 다룸. 위에서 배우는 내용을 통해 여러 문제를 푸는 실습을 함. 교수의 재량에 따라 프로그래밍이나 스크립팅과 유관한 특별한 주제를 다룰 수 있음.


​웹파이썬프로그래밍에 해당한다. 허나, 디지펜은 게임개발을 소융처럼 스크립트언어로 시작하지는 않고 C언어로 시작한다. 


컴퓨터기술과 프로그래밍개론 Introduction to Computer Technology and Programming

본 강의는 비공과 학부생을 대상으로 프로그래밍 환경을 소개함. 이는 컴퓨터가 기반이 되는 핵심적인 내용을 두루 다룸. 이 내용은 기초적인 컴퓨터 하드웨어 시스템, 연산과 구조를 포함함. 본 개론에는 간단한 프로그래밍과 로직, 프로그래밍 플로우, 루프, 변수와 배열 개념들을 소개함. 조건문, 비교연산 및 여러 제어구조 등의 개념 또한 학습함. 교수의 재량에 따라 프로그래밍이나 스크립팅과 유관한 특별한 주제를 다룰 수 있음.

고수준 프로그래밍1: C 언어

본 강의는 모든 고수준 프로그래밍 강의의 기초가 되며 구문 그룹화, 의사 결정, 경우 선택 및 절차 반복 등은 물론 기초적인 데이터 타입을 통한 제어 플로우를 익힘. 추가적으로 본 강의에선 C 언어 문법에서 전통적으로 사용하는 어휘, 구문 표기법과 의미를 학습함.


​디지펜은 소융과 달리 웹파 수업이 아닌 C언어 수업으로 첫 학기를 보낸다. 소융은 객프로 C언어가 아닌 C++로 바로 시작한다. 개인적으로도 딱히 C언어를 배우는 것이 필수라고 생각하지 않는다. 바로 C++을 하는 것이 더 낫다고 생각한다. 


프로그래밍 핵심 Programming Foundations

본 강의에선 객체지향프로그래밍을 중심으로 기초적인 프로그래밍 기술을 학습함. 다루는 내용은 클래스, 상속, 인터페이스, 폴리모피즘과 자료구조 등을 포함함.

고수준 프로그래밍2: C++

본 강의에선 C++ 언어를 객체지향을 중심으로 학습함. 학습하는 내용은 C와 C++ 사이의 차이점과 용도, 네임스페이스, 함수와 연산 오버로딩, 클래스, 상속, 템플릿, 그리고 핵심적인 STL 구성요소 등을 포함한다.


​소융의 객프에 해당한다. 다만 객프는 한 개 학기로 끝내고, 소융은 2학년 수업임에 비해, 디지펜은 고수준 프로그래밍 1, 2을 1학년 때 끝내고, 고프1을 통해 기본적인 문법을 C로 끝냈기 때문에 고프2에선 C++을 좀 더 심화적으로 할 수 있을 것 같다는 생각이 든다. 


오디오 스크립팅 Audio Scripting

본 강의에선 고수준 스크립트 언어를 통해 게임 개발에서 사용하는 복잡한 오디오의 행동을 개발하기 위한 개념과 그 사용방법을 학습함. 다루는 내용은 아날로그와 디지털 오디오의 핵심 원칙들, 음향심리학과 프로그래밍을 포함함.

스크립트 언어 Scripting Languages

본 강의에선 고수준 스크립팅 언어를 게임 개발에서 사용할 때 필요한 개념들과 그 사용 방법을 학습함. 학부생은 본 강의에서 객체지향프로그래밍, 거의 인간의 언어에 가까운 고수준인 스크립트 언어, 개발의 속도와 사용의 편의 등을 중점으로 둠. 본 강의에선 여러 실제 산업에서 사용하는 언어들(라이선스가 있는 언어들까지도 포함한다)을 훑어봄. 게임 개발하는데 특화된 스크립트 언어를 위해 문법을 추상화하는 과정을 살펴보고 어떻게 스크립트 언어들이 컴파일되고 게임 엔진에 의해 인터프리트되는지를 학습함. 그들이 만든 문법을 이용해 게임에서 사용할 수 있는 여러 스크립트를 작성함. 추가적으로 본 강의에선 데이터구동기술, 모듈형 코딩, 함수 호출 및 절차와 같은 유관한 내용을 다룸.

고급 스크립트 언어 Advanced Scripting

본 강의에선 스크립트 언어 기반으로 개발된 게임에서 개발에 사용할 수 있는 여러 기술들과 게임 아키텍쳐를 학습함. 학부생들은 게임 스테이트 매니저, 입출력 관리, 프레임 제어와 같이 핵심적인 내용 및 게임시스템의 구성체계, 게임 플로우와 같은 게임 아키텍쳐 개념을 익힘. 학부생은 실제 많이 사용되는 여러 스크립트 언어를 통해 다양한 고전 게임을 개발하는 방법을 익히고, 그 과정에서 그 특정 언어의 특정 문법과 접근 방법론을 익힘. 그러한 실습의 일환으로 학부생들은 특정 게임을 제작하면서 그에 따르는 스크립트 언어 환경에서 사용 가능한 그래픽, 오디오 인터페이스, 물리 및 수학 API를 익히게 됨. 공간분할 파티클 시스템, 맵 에디터 등과 같이 2D 프로토타입 게임을 제작하는데 필요한 개념 및 기술들을 배움.

운영체제 1: 사람-기계 인터페이스

본 강의에선 현대에서 PC에 사용되는 운영체제에 대한 대략적인 개론을 학습함. 운영체제가 무엇이고, 어떤 역할을 하는지를 조직organization과 디자인, 프로세스 매니지먼트, 스레드, 프로세스간 통신, 프로세스 통합과 메모리 관리 등의 개념을 중심으로 간단하게 살펴봄.


​게임 디자인 학과임에도 불구하고 운영체제를 학습한다. 소융도 마찬가지로 운영체제는 전공필수이다. 


디자이너를 위한 C++ C++ for Designers

본 강의에선 C++ 언어를 객체지향을 중심으로 학습함. 다루는 내용은 C++와 스크립트 언어의 차이, 자료 유형, 네임스페이스, 클래스, 상속, 폴리모피즘, 템플릿, 그리고 핵심적인 STL 구성요소 등을 포함함.

컴퓨터 그래픽스1 Computer Graphics I

본 강의에선 핵심적인 수학 개념, 자료구조와 애니메이션과 2D 기본형(삼각형 등의 기본이 되는 도형들)에 유용한 알고리즘을 다룸. 본 강의의 지양점은 두 가지임. 첫번째는 학부생들에게 2D 그래픽스를 디자인하고 개발하는 데 필요한 충분한 수학적, 그리고 알고리즘적 지식을 제공함. 두번째는 추후에 3D 그래픽스 개발에 필요한 개념들에 대비함. 강의의 초반부에선 선, 원, 타원, 삼각형과 기타 폴리곤들과 같은 2D 기본형들을 래스터화하는 주사변환 알고리즘을 다룸. 후반부는 이러한 2D 기본형을 실제로 렌더링하고, 애니메이션을 구현하는데 중점이 두어져 있음. 본 강의에서는 보간법 기술, 변형, 컬링, 클리핑, 애니메이션 기술과 2D 렌더링 파이프라인과 같은 주제를 다룸.


​게임 개발의 꽃과 같은 게임 그래픽스다. 소융에선 게임그래픽프로그래밍이라는 이름으로 게임 그래픽스를 한 학기에 끝내는데에 비해 디지펜엔 수많은 게임 그래픽스 수업이 있다. 물론 게임 디자인 학과에서는 게임 그래픽스1 만을 요구한다. 


데이터베이스개론 Introduction to Databases

본 강의에선 데이터구조 시스템을 광범위하게 학습함. 이는 컴퓨터 데이터베이스의 핵심, 실습과 응용을 의미함. 데이터베이스 아키텍쳐, 데이터 모델링, 설계 개념, 트랜잭션 처리와 데이터베이스 구현과 같은 내용을 중점으로 다룸.

고급 데이터베이스 Advanced Databases

본 강의에선 현대에서 자주 사용되는 대규모의 데이터베이스 시스템을 중심으로 고급 데이터베이스를 학습함. 데이터마이닝과 데이터 웨어하우스를 검색과 분석을 중심으로 다룸. 비관계형 데이터베이스 또한 세부적으로 다룸.

고급 C/C++

본 강의는 고수준 프로그래밍1, 2에서 학습을 한 것을 기반으로 함. C/C++에서의 고급 내용을 더더욱 세부적으로 다룸. 고급 내용들은 고급 포인터 조작, 다차원 배열, 복잡한 선언문, 표준 라이브러리 함수 등을 포함함. 고급 C++ 개념들은 클래스와 함수 템플릿, 연산 오버로닝, 다중상속, 런타임 타입 정보(RTTI), 표준 템플릿 라이브러리(STL)와 실성능 문제 등을 다룸.


2학년 1학기 ​전공 필수이다. 소융은 언어에 대한 부분을 객프로 끝내지만, 디지펜은 게임 디자인 학과임에도 불구하고 더 깊게 파고든다. 


게임 아키텍쳐

게임 개발 기술과 엔진 아키텍쳐를 중심으로 학습함. 학부생은 게임 스테이트 매니저, 입출력 관리, 프레임 제어와 같이 핵심적인 내용 및 게임시스템의 구성체계, 게임 플로우와 같은 게임 아키텍쳐 개념을 익힘 게임 아키텍쳐의 핵심 내용을 학습함. 본 강의에선 그들만의 고전게임 리메이크를 진행하면서 윈도우 프로그래밍, 상태 기계(State Machine), 충돌 판정 알고리즘 등을 학습함. 게임 개발을 하면서 학부생은 그들만의 충돌, 벡터 및 매트릭스 라이브러리를 제작하여 기초적인 물리 엔진을 구현함. 학부생은 개발 기술과 엔진 아키텍쳐가 사용되는 좀 더 고급 개념들과 맡닿아 있는 공간 분할, 파티클 시스템, 맵 에디터와 같은 개념들을 배움.


​1학년 2학기 전공필수이다. 소융개론에서 텀프로젝트로 첫 운을 떼듯, 디지펜에선 게임 아키텍쳐를 통해 "고전 게임 리메이크"를 함으로써 본격적인 게임 개발을 시작한다. 소융에선 2학기에 들어가서 게임프로그래밍입문을 해야 비로소 게임 개발을 공부하는데에 비해 한 학기 더 일찍, 더 깊이 시작한다. 


인터랙티브 사운드 합성 개론 Introduction to Interactive Sound Synthesis

본 강의에선 다이너믹 사운드 합성, 3차원 공간 오디오 효과, 실시간 시뮬레이션이나 게임에서 사용되는 음적 공간감(Sonic Ambience) 등을 다룸. 본 강의에선 오디오 믹싱과 웨이브테이블 합성을 통해 녹음된 음악을 조정함. 학부생들은 가산 합성을 통한 사운드 충돌, 감산 합성을 통한 바람 효과, 그래뉼러 합성과 피지컬 모델링을 통한 자연음, 레이어링과 스펙트럼 필터링을 통한 공간감, 3차원 공간 서라운드 사운드 패닝, ITD, IID(Inter-Aural Intensity Difference), HRTFS을 구현하는 방법을 학습함. 또한 실시간 다중스레드 프로그래밍과 게임엔진에 사용되는 합성 사운드 통합에 사용되는 알고리즘과 기술을 배움.

고급 사운드 합성 Advanced Sound Synthesis

본 강의에선 사운드 엔진을 개발하는데 필요한 기초를 학습함. 이는 오디오 파일 포맷, 사운드 카드 아키텍쳐, 로우레벨 사운드 API, 하이레벨 사운드 API, 사운드 스트리밍, 믹싱, 디지털 필터 및 이펙트, 3D 오디오, 오디오 스펙트럼 및 고속푸리에변환(FFT)와 같은 내용을 포함함.

컴퓨터 그래픽스2 Computer Graphics II

본 강의에선 게임, 항공기 시뮬레이터, 건축학 등과 같은 실시간 3D 컴퓨터 그래픽 디자인과 실제 개발에서 사용되는 수학 개념과 알고리즘을 다룸. 3D 컴퓨터 그래픽은 3D 오브젝트 렌더링을 학습함. 이는 3D 그래픽의 2D 이미지를 생성하는 것으로 입력 데이터의 집합에서의 특정 연산의 연속을 의미함. 각 연산은 그 다음에 나오는 결과를 생성함. 이러한 과정을 그래픽 렌더링 파이프라인라고 부르고, 이는 실시간 컴퓨터 그래픽의 핵심임. 그래픽스 파이프라인은 크게 응용, 변환 및 래스터화와 같은 세 가지 단계로 구분할 수 있음. 본 강의에선 3D 그래픽스 파이프라인에 대한 개요와 위의 단계를 배움. 응용 단계에선 렌더링이 이루어지는 시점, 3D 오브젝트의 모델 및 애니메이션을 확인하는 단계임. 다루는 개념은 유저와 상호작용하는 카메라 애니메이션 기술, 다이내믹한 오브젝트의 시뮬레이션, 그리고 충돌 판정 기술을 포함함. 다음에는 3D 그래픽 오브젝트를 모델-공간에서 뷰포트의 좌표로 매핑하는 과정을 다룸. 변환 과정이 바로 이 단계임. 마지막으로 뷰포트의 좌표에 존재하는 기하학적 기본형을 2D 이미지로 변환함. 이를 래스터화 단계로 부름.

컴퓨터 그래픽스 개론 Introduction to Computer Graphics

본 강의에선 3D 컴퓨터 그래픽스를 고수준에서 학습함. 본 강의는 게임 디자이너와 아티스트들에 맞춰져 있어 그래픽 엔진의 핵심 구성요소와 실시간 시뮬레이션과 게임 소프트웨어에서의 실제 사용 사례를 이해할 수 있게 함. 다루는 내용은 그래픽스 파이프라인 아키텍쳐, 3D 변환 연산, 렌더링 및 사영, 라이팅 및 쉐이딩, 표면 디테일 기술, 그림자 알고리즘, 숨긴 오브젝트 컬링(Hidden Object Culling) 및 제거 기술, 3D 오브젝트 모델링 및 애니메이션, 물리 기반 모션 제어를 포함함. 유명한 그래픽스 프로그래밍 언어 (GDI plus, OpenGL, DirectX)와 쉐이더 프로그래밍 또한 다룸.

컴퓨터 네트워크1: 프로세스간 통신

본 강의에선 분산컴퓨팅 환경에서의 네트워크 통신 계층을 학습함. 네트워크 기술, 아키텍쳐 및 프로토콜을 학습함. 본 강의에선 특히 TCP/IP 스택을 중점으로 학습하며 학부생들이 휴대용 소켓 기반 소프트웨어를 손쉽게 다룰 수 있게 함. 학부생이 후에 멀티플레이어 게임 프로그래밍을 하는 데에 도움을 줌.

컴퓨터 네트워크2 Computer Networks II

본 강의는 선수과목에서 수강했던 TCP/IP 프로토콜 개념을 무선 장비로까지 확장함. 본 강의에선 네트워크 개론 수업에서 다루었던 여러 개념들은 물론 관심 분야들을 더욱 더 세부적으로 다룸. 다루는 개념들은 TCP/IP 관련 프로토콜(NAT, WAP, DNS 등), 피지컬 미디어 액세스 (aloha, OFDM, WIDEBAND 등), 무선 표준과 프로토콜, 네트워크 보안을 다룸. 본 강의는 산업의 동태에 따라 추가적인 개념을 학습함.

자료구조 Data Structures

본 강의에선 컴퓨터과학에서 다루는 고전적인 추상 데이터 타입(ADT)를 다룸. ADT는 프로그래밍에서 사용되는 데이터 구조화의 계층을 이해할 수 있게 해줌. 본 강의에서는 배열, 링크드 리스트, 스택, 큐, 트리, 해시 테이블, 그래프 등의 데이터 구조의 알고리즘과 기본형 등을 다룸. 추가적으로 본 강의에선 알고리즘 복잡도와 표기법을 학습함.


​2학년 2학기 전공필수이다. 소융도 마찬가지로 자료구조는 2학년 2학기에 수강한다. 


고급 컴퓨터 그래픽스1 Advanced Computer Graphics I

본 강의에선 인터랙티브 시뮬레이션에서 사실적 이미지를 제작하는 데에 필수적인 알고리즘을 학습함. 다루는 내용은 현대 GPU 아키텍쳐 개요, OpenGL과 DirectX를 포함하는 실제 산업에서 자주 사용되는 그래픽 API 등을 포함함. 렌더링 기술 또한 텍스쳐링, 조명 모델, 투명도, 쉐이딩 알고리즘, 매핑 기술(범프 매핑, 환경/반사 매핑 등)과 그림자 등을 포함함. 학부생은 이 모든 알고리즘을 버텍스와 픽셀 쉐이더를 통해 개발하는 방법을 배움.

로우레벨 프로그래밍 Low-Level Programming

본 강의에선 현대 마이크로프로세서 아키텍쳐를 배움. 이는 컴퓨터 아키텍쳐, 현대 어셈블리 언어, 어셈블리 언어 프로그램 개발 등을 포함함. 어셈블리어를 통해 고수준 프로그램을 최적화하는 데에 중점을 둠.

UI/UX 디자인

본 강의에선 인간/컴퓨터 인터페이스 디자인 분야의 핵심적인 내용을 다룸. 본 강의에서 다루는 내용은 학부생으로 하여금 인간의 능력, 디자인 원칙, 프로토타입 기술, 인간/컴퓨터 인터페이스의 평가 방법을 특히 내츄럴 유저 인터페이스를 중점으로 배움. 본 강의에선 학부생으로 하여금 유저 인터랙션을 구현함을 목표로 함.


​3학년 1학기 전공필수이다. 소융에선 2학년 2학기 때 수강한다. 


알고리즘 분석

본 강의에선 알고리즘의 분석에 대한 개요를 제공함. 이는 알고리즘이 맞는 지 여부의 증명, 그들의 효율성을 증명하는 구문들을 중점으로 학습함. 루프 증명, 강력한 수학적 추론 및 재귀, 점근적 표기법, 회귀 관계식, 함수 생성과 같은 토의 내용들을 동반함. 학부생은 서치와 소팅 알고리즘을 기반으로 여러 알고리즘 분석을 학습함.


​3학년 1학기 전공필수이다. 소융 또한 3학년에 알고리즘분석 교과목이 있다. 


고급 컴퓨터 그래픽스2 Advanced Computer Graphics II

본 강의에선 복잡한 3D 장면을 렌더링하고 처리할 때 사용자의 CPU와 GPU에 무리가 가지 않게 효율적으로 렌더링하고 처리하는 과정을 학습함. 특정적으로 다양한 공간 데이터구조(2진 공간파티션 트리, oc 트리, kd 트리, 그리드 데이터구조 등), 다중 오브젝트 컬링 방법 (어클루전, 뷰포트, 포탈), 바운딩 볼륨의 제작 및 사용 및 충돌 탐지와 관련된 기하적 연산을 처리하기 위한 바운딩 볼륨의 계층을 학습함.

병렬 프로그래밍 Parallel Programming

본 강의에선 다중스레드 및 분산 프로그래밍을 학습함. 본 강의는 몇몇 고전 문제와 통합 메커니즘, 또한 병렬 프로그래밍을 지원하는 최근 라이브러리들을 다룸. 본 강의는 또한 분산 프로그래밍 모델과 게임 프로그래밍에서의 응용을 배움.

소프트웨어 엔지니어링 Software Engineering

본 강의에선 실용적인 관점에서 소프트웨어 엔지니어링의 수많은 개념들을 다룸. 프로젝트 관리 문제 뿐만 아니라 기술 개발 원칙과 방법론을 다룸. 다루는 내용은 시스템 아키텍쳐, 보안, 방법론 및 표기법, UML, 객체지향 분석 및 디자인, 요구사항 분석, 구현, 증명, 비준, 유지보수, 소프트웨어 엔지니어링 표준 등을 포함함. 리스트 관리 및 반복적 디자인은 특별히 중점을 둠. 학부생은 팀을 통해 프로젝트에 학습한 개념을 실제 응용하도록 함.

컴퓨터 이미징 Computer Imaging

본 강의에선 실시간 인터랙티브 시뮬레이션 개발에 사용되는 이미지처리 방법 및 응용을 학습함. 본 강의에선 이미지 표현, 이미지 필터링, 주파수 도메인 처리, 이미지기반 렌더링 방법 등의 핵심 개념을 학습함. 다루는 내용은 이미지 연속화(Image Serialization), 2D 필터링, 푸리에 변환, 노이즈 모델링, 하이 다이내믹 범위 이미징 등을 포함함.

컴파일러와 인터프리터 Compilers and Interpreters

본 강의에선 컴파일러 개발에 있어 핵심적인 내용들을 학습함. 본 강의를 통해 학부생들은 고수준 프로그래밍 언어에 사용되는 컴파일러를 이해하고 구현이 가능함. 본 강의에선 최신 프로그래밍 언어들에 대한 컴파일 기술과 런타임 구현을 좀 더 깊게 살펴봄.

게임 인공지능

본 강의에선 게임 인공지능에 흔히 사용되는 실용적인 알고리즘과 다양한 개념들을 학습함. 실제 게임에서 사용된 실 사례들을 기반으로 개념을 학습함. 학부생은 핵심적인 게임 인공지능 알고리즘을 공부하고 구현할 수 있음. 다루는 내용은 게임 인공지능 프로그래머로서의 사고방식, 인공지능 아키텍쳐 (상태 기계, 규칙기반 시스템, 목표기반 시스템, 트리거 시스템, 스마트 지형, 스크립팅, 메시지 패싱, 인공지능 디버깅 등), 움직임, 패스파인딩, 창발적 행동, 에이전트 인식, 에이전트 협동, 지형 분석, 계획 및 학습/적응 등을 포함함.

인공지능 개론 Introduction to Artificial Intelligence

본 강의에선 다양한 검색 알고리즘, 게임플레이, 제약 한정 문제, 명제 및 1차 논리, 계획을 포함한 인공지능의 핵심 개념을 학습함. 본 강의에선 또한 인공지능 기술, 코드 및 설계에 대한 실용적인 기술과 그 구현을 학습함.

머신러닝 Machine Learning

본 강의에선 머신러닝 기술에 대한 광범위한 개념을 다룸. 이는 유전적 알고리즘, 분류 시스템, 신경망, 다양한 클러스터 알고리즘 등의 초기 머신러닝 알고리즘을 포함함. 그 후엔 베이즈 네트워크, 은닉 마르코프 모델(HMV), 몬테카를로 방법 등과 같은 확률론적 알고리즘을 살펴봄.

휴대용 게임 시스템 개발 개론 Introduction to Portable Game System Development

본 강의에선 휴대용 게임 시스템 프로그래밍과 개발을 배움. 휴대용 게임 시스템은 기계와 임베드된 구조가 다르기에 PC 프로그래밍과 개발과는 다름. 학부생은 매우 한정적인 메모리와 CPU 출력을 극복하기 위해 색 팔레트를 이용한 타일기반 게임 오브젝트와 배경과 같은 여러 그래픽 기술을 사용함. CPU 한계의 경우 실수형 데이터보다는 고정 소수점 10진수를 사용하고 통합 연산(Synchronous Operation)을 사용함. 동시 다중 그래픽 엔진 관리와 터치패드 제어 등과 같은 여러 휴대용 게임 시스템과 관련된 세부내용을 다룸.

코드 분석과 최적화 Code Analysis and Optimization

본 강의에선 컴퓨터, 컴파일러와 언어에 좀 더 세부적인 내용에 집중하고, 특히 이 내용을 통해 오류나 퍼포먼스 문제와 같은 실제 문제에 어떻게 응용하는지 학습함. 단순히 어떤, 혹은 왜 이러한 방법론을 사용하는지 뿐만 아니라 그 지식을 통해 그러한 문제를 해결하기 위한 유용한 툴이나 기술을 개발하게 함.

그래픽 파일 포맷과 데이터 압축 기술 Graphics File Format and Data Compression Techniques

본 강의에선 정적 이미지와 멀티미디어 데이터 압축 기술을 학습함. 이러한 압축의 이론을 학습하고, 이것이 특정 포맷에 어떻게 사용되는지를 학습함. 방법론들은 런렝스 부호화, 허프만 부호화, 사전 압축, 변환, 웨이블렛 방법(Wavelet Method) 등을 포함함. 학부생은 이러한 특정 기술을 BMP, JPEG, DXTn, MPEG와 같은 다양한 그래픽 파일 포맷에 적용하는 방법을 학습함.

고급 애니메이션과 모델링 Advanced Animation and Modelling

3D 애니메이션과 모델링은 컴퓨터 시뮬레이션과 게임 소프트웨어에 매우 큰 비중을 차지함. 게임 개발자들은 이러한 기술에 대해 매우 광범위한 지식을 지니고 있어야 함. 본 강의에선 그래픽 오브젝트의 움직임을 특정하고 생성하는 알고리즘을 학습함. 실제로 발생하는 문제들, 여러 기술들 등을 학습하고 다양한 특징을 갖고 있는 3D인 움직일 수 있는 독립체를 제어하는데 필요한 직접적인 구현을 제공함. 본 강의는 크게 두 가지 분야를 다룸. 우선 애니메이터가 특정 기본 정보(키프레임, 패스, 좌표 그리드, 혹은 경로 기하학 등)를 특정한 움직임이나 형상에 디테일을 줄 수 있는 보간법 기반의 기술을 학습함. 이후엔 몇 가지 규칙(운동학, 물리학이나 기타 구속(constraint)들)을 만족하는 움직임을 생성하는 행동기반 기술을 학습함.

시각표현의 기초

간단한 드로잉 기술, 선 원근법, 시각 디자인 방법론 및 소묘 용어를 이론 강의, 과제와 간단한 프로젝트를 통해 습득함.

미술제작방법론

미술을 할 때 사용되는 과정에 대한 간단한 지식을 배움. 다루는 내용은 소묘, 톤, 색, 조합 및 예술적 과정 등의 역사와 기술과 간단한 미술사를 배움.


​소융과 디지펜의 학과 구성을 살펴보면, 비슷한 구석이 많고, 최신 기술을 소융에서 더 다룬다는 점에서는 소융이 더 미래 지향적이라고도 할 수 있다. 허나, 디지펜에 존재하는 수많은 현업에서 몸을 담았던 교수들과 학부생들의 열정을 생각한다면, 소융은 아직 많이 멀었다고 할 수 있다. 특히 제일 안타까운 것은 게임콘텐츠엔 현업에 몸담았던 교수가 없다는 것이다. 게임콘텐츠로서 정말로 우뚝서려면 좋은 커리큘럼도 좋은 커리큘럼이겠지만, 그 커리큘럼을 소화할 수 있는 교수진이다. 


사용 및 추천 교과서 목록

컴퓨터환경

  • 추천: The hidden language of computer hardware and software; Charles Petzold

고수준 프로그래밍 1: C 언어

  • 추천: C Programming: A Modern Approach, 2nd edition; K.N. King

고수준 프로그래밍 2: C++

  • 추천: C++ Primer, 5th edition, 2013, by Lippman, Lajoie, Moo

고급 C/C++

  • 추천: C++ Primer, 5th edition, 2013, by Lippman, Lajoie, Moo

데이터구조

  • 추천: Algorithms in C++: parts 1-4: Fundamentals, data structures, sorting, searching, 3rd ed, Robert Sedgewick

알고리즘 분석

  • 추천: Introduction to the design and analysis of algorithms, 3rd edition, Anany Levitin

게임 인공지능

  • 추천: Game AI Pro: Collected wisdom of game AI professionals, 2014, Steven Rabin

고급 스크립트 언어 Advanced Scripting

  • 추천: Unity 5.x Game Development Blueprints, by John P. Doran
  • 추천: Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#, 2nd edition, 2017, by Jeremy Gibson Bond

컴퓨터 그래픽스1 Computer Graphics I

  • 추천: Essential Mathematics for Games and Interactive Applications, 3rd ed, Van Verth and Bishop
  • 추천: OpenGL Programming Guide, 9th edition, 2016; Kessenich, Sellers, and Shreiner
  • 추천: OpenGL Shading Language, 3rd ed, Rost et al

데이터베이스개론 Introduction to Databases

  • 추천: Database systems: The complete book; 2nd ed.; Hector Garcia-Molina, et al.

고급 사운드 합성 Advanced Sound Synthesis

  • 추천: Designing Audio Effect Plug-Ins in C++, Will Pirkle

컴퓨터 그래픽스2 Computer Graphics II

  • 추천: Essential Mathematics for Games and Interactive Applications, 3rd ed, Van Verth and Bishop
  • 추천: OpenGL Programming Guide, 9th edition, 2016; Kessenich, Sellers, and Shreiner
  • 추천: OpenGL Shading Language, 3rd ed, Rost et al

컴퓨터 네트웍스1: 프로세스간 통신 Computer Networks I: Interprocess Communication

  • 추천: Multiplayer Game Programming, Joshua Glazer & Sanjay Madhav

고급 컴퓨터 그래픽스1 Advanced Computer Graphics I

  • 추천: OpenGL Programming Guide, 9th edition, 2016; Kessenich, Sellers, and Shreiner
  • 추천: OpenGL SuperBible, 7th Edition, 2016; Sellers, Wright and Haemel

로우레벨 프로그래밍 Low-Level Programming

  • 추천: Computer Organization and Design, ARM edition, 2016, by Patterson & Hennessy

컴퓨터 이미징 Computer Imaging

  • 추천: Digital Image Processing, 3rd Edition, 2007, by Gonzales and Woods

인공지능개론 Introduction to Artificial Intelligence

  • 추천: Artificial intelligence: A modern approach, 3rd edition, Stuart Russell & Peter Norwig

고급 컴퓨터 그래픽스 Advanced Computer Graphics

  • 추천: OpenGL Programming Guide: the Official Guide to Learning Open GL, Version 4.5 with SPIR-V, 9th edition, 2016; Kessenich, Sellers, and Shreiner

3D 컴퓨터 그래픽스 개론 Introduction to 3D Game Graphics

  • 추천: Autodesk Maya 2018: A Comprehensive Guide, 10th edition, by Sham Tickoo

소묘1 Language of Drawing I

  • 추천: How to Draw, Scott Robertson with Thomas Bertling, 2013

예술과 기술 Art and Technology

  • 추천: Living With Art, 10th Edition, 2012, by Mark Getlein

톤, 색감과 조합1 Tone, Color and Composition I

  • 추천: Color and Light: A Guide for the Realist Painter, 2010, by James Gurney

생물 드로잉2 Life Drawing II

  • 추천: Figure Drawing: Design and Invention, 2009, by Michael Hampton

예술감상 Art Appreciation

  • 추천: Living With Art, 10th Edition, 2012, by Mark Getlein

구상조각 Figurative Sculpture

  • 추천: Modeling and sculpting the human figure, Edouard Lanteri

만화학 Survey of Sequential Art

  • 추천: Making Comics: Storytelling Secrets of Comics, Manga and Graphic Novels, by Scott McCloud

그래픽 디자인 및 타이포그래피 개론

  • 추천: Thinking with Type, 2nd edition, 2004, by Ellen Lupton

프로젝트 2

  • 추천: C++ for Game Programmers; 2nd edition, Michael Dickheiser
  • 추천: Game Coding Complete, 4th edition, 2013, Mike McSchaffry
  • 추천: Game Engine Architecture, 2nd edition, Jason Gregory
  • 추천: Level Up!: The Guide to Great Video Game Design, by Scott Rogers

스토리텔링 Storytelling

  • Wonderbook: The Illustrated Guide to Creating Imaginative Fiction; by Jeff VanderMeer (Abrams, 2013)

각본 Scriptwriting

  • "The King's Speech," ISBN 9781557049810

심리학개론

  • 추천: Exploring psychology with updates on the DSM-V, 9th ed.; David G. Myers
  • 추천: My Psychology, 1st edition, 2019, Andrew Pomerantz

기초미분적분학, 선형대수학 및 기하학 Precalculus with Linear Algebra and Geometry

  • 추천: Precalculus, 8th edition, by Michael Sullivan

확률 및 통계 개론 Introductory Probability and Statistics

  • Intro Stats, 5th edition, 2017, by David Bock, Richard De Veaux, and Paul Velleman

미분적분학과 기하해석학1, 2, 3 / 벡터 미분적분학2

  • 추천: Calculus: Early transcendentals; 6th edition, James Stewart

이산수학

  • 추천: Discrete Mathematics and Its Applications, 6th edition, by Kenneth H. Rosen

디지털 신호 처리의 수학1 Mathematics of Digital Signal Processing I

  • A Digital Signal Processing Primer, Ken Steiglitz

조합론적 게임이론 Combinatorial Game Theory

  • Lessons in play: An introduction to combinatorial game theory, by M. Albert, R. Nowakowski, D. Wolfe

퍼지 집합과 논리 Fuzzy Sets and Logic

  • Mathematics of fuzzy sets and fuzzy logic, B. Bede

음악이론과 실습1, 3 Music Theory and Musicianship I, III

  • Tonal harmony; 7th ed.; Stefan Kostka

사운드 디자인 프로젝트1 Sound Design Project I

  • A Composer's Guide to Game Music, by Winifred Phillips
  • Logic Pro X 10.3 - Apple Pro Training Series, David Nahmani

작곡론1 Composition I

  • Bach 2- and 3-part inventions, Carl Czerny Schirmer

사운드 디자인 프로젝트3, 5, 오디오 디자인 프로젝트1 Sound Design Project III, V, Audio Design Project I

  • Modern recording techniques, 8th edition, David Miles Huber

음악사와 문학1 Music History and Literature I

  • The Enjoyment of Music: An Introduction to Perceptive Listening (11th edition), by Kristine Forney & Joseph Machlis

지휘와 기악편성법 Conduction and Instrumentation

  • The Study of Orchestration, 3rd edition, Samuel Adler
  • Workbook: for The Study of Orchestration, 3rd edition (No. 1); Samuel Adler

음악과 소리의 물리학 Physics of Music and Sound

  • 추천: College Physics, 10th edition, Hugh D. Young, Philip W. Adams, Raymond Joseph Chastain
  • 추천: The Acoustical Foundations of Music, 2nd edition, 1977

동역학, 파동, 광학 및 열역학, 현대물리학

  • Physics for Scientists & Engineers with Modern Physics; 4th ed., Douglas Giancoli

고급역학, 고급 물리기반 모델링 Advanced Mechanics, Advanced Physically-Based Modeling

  • Classical Dynamics of Particles and Systems, 5th edition, Stephen T. Thornton, Jerry B. Marion
  • 추천: Classical Mechanics; 3rd edition, H. Goldstein, C. Poole, and J. Safko

음향학1 Acoustics I

  • Acoustics, an introduction to its physical principles and applications, by Allan D. Pierce


학과에 대한 기타 정보들

유급하지 않고 졸업하는 비율: 42퍼센트

학비

$120,000 등록금 및 입학금 등 전액 포함

$4,200 교과서 및 기타 교과목 비용

학부생 평균 빚: $108,923

학부생 매월 평균 대출 상환금: $1,126 (이자 4.45%. )

취업관련 정보

71%의 학부생은 졸업 후 바로 취업함.

댓글

(자동등록방지 숫자를 입력해 주세요)