교과과정

교과목해설

멀티미디어소프트웨어개론 (Introduction to Multimedia)

멀티미디어의 구성요소, 데이터의 표현 및 저장 검색 방법, 멀티미디어 시스템, 멀티미디어 저작도구, 애니메이션 및 가상현실 등 멀티미디어 공학의 제반 기술 요소를 이해하고 학습한다.

C프로그래밍(1) (Introduction to programing)

프로그래밍의 개념 및 원리를 이해하고, 유닉스 및 시스템 개발에 범용적으로 사용되는 C언어 기본구조를 학습하며, 이를 기반으로 다양한 C프로그래밍 예제를 통해 문제해결 능력을 기른다. 

C프로그래밍(2) (Introduction to programing Ⅱ)

프로그래밍 기초(1)의 심화 과목으로 포인터의 개념, 연산 및 응용, 구조체, 파일 입/출력 등의 C언어의 중요한 고급 자료구조를 이해하고, 그 외에 다양한 라이브러리 함수의 사용방법을 익히도록 한다.

미디어소프트웨어기초설계 (Media software Foundation design)

급변하는 환경에 대응하기 위한 전략으로서의 창의성과 사회에서 요구하는 공학도의 위상을 정립한다. 기억의 메카니즘을 이해하고 여러 가지 기억 기술을 습득하여 두뇌개발을 체험하도록 한다. 기억력을 향상시키는 연상법, 이야기 꾸미기, 그림 이용 등의 방법을 학생들 스스로 터득할 수 있도록 한다.

C++프로그래밍 (Multimedia System)

객체지향 프로그래밍과 같은 고급 프로그래밍의 개념 및 원리를 이해하고, 대표적인 객체지향 언어인 C++를 이용하여 멀티미디어 응용 솔루션 개발의 요소 기술을 시뮬레이션 해봄으로 응용 개발 환경을 경험한다.

취업과 진로 

멀티미디어공학분야의 취업을 위한 능력 향상과 진로탐색을 목적으로 개설되었다

자료구조 (Data Structures)

프로그래밍에 필요한 데이터들의 구조적 형상으로 응용 프로그래밍 개발에서 기본적이며 효율성 측면에서 중요하다. 배열, 스택, 큐, 연결 리스트, 트리, 그래프, 검색, 정렬, 알고리즘 성능 등에 대한 개념과 처리 알고리즘을 학습하며 이를 응용하여 복잡한 자료구조를 설계하고 분석할 수 있는 능력을 기른다.

멀티미디어통신 (Multimedia Communication)

멀티미디어 서비스 제공에 필요한 네트워크의 특징, 소프트웨어, 하드웨어적인 요소 개념과 필요기술을 학습하여 멀티미디어 통신 시스템에 대한 응용력을 키운다.

멀티미디어프로그래밍(1) (Multimedia Programming 1)

윈도우 프로그래밍을 위한 대표적인 응용 프레임워크인 MFC를 사용해서 시각(Visual)프로그래밍의 기초개념을 학습함으로써 멀티미디어 프로그래밍 기초개념을 숙지한다. 또한, 이미지, 오디오, 비디오 등 멀티미디어 객체를 프로그래밍하고 응용 프로그램에 임베디드 할 수 있는 프로그래밍 기술을 익힌다. 

자바웹프로그래밍(1) (Web Programming 1)

웹상에서 운용되는 멀티미디어 정보처리와 인터페이스 개발에 필요한 웹 프로그래밍 기술을 학습한다. 웹 표준과 웹 서비스에 대한 기본 개념을 익히기 위해서 최신 웹 표준 HTML5의 요소 기술과 최신 클라이언트 프로그래밍 기법을 학습하여 동적인 웹 서비스를 개발할 수 있는 기반 능력을 기른다.

데이터베이스(1) (Database 1)

데이터베이스의 기본개념, 데이터베이스 관리시스템(DBMS)의 구조 및 운영, 데이터베이스 모델링(E-R 데이터모델) 및 정규화 과정 그리고 질의어인 SQL을 체계적으로 익히고, 다양한 실습을 통해 실무능력을 배운다. 또한, 멀티미디어를 위한 데이터 저장방식에 관해 학습함으로써 멀티미디어 데이터의 저장 및 검색기법을 숙지한다.

게임수학 (Game Mathematics)

게임개발, 컴퓨터그래픽스, 애니메이션, 운동역학 등 게임프로젝트 개발에 기초가 되는 3차원 기하학, 벡터, 선형변환, 사원수, 다각형 기법, 운동학, 동력학 등을 학습한다.

멀티미디어프로그래밍(2) (Multimedia Programming 2)

MFC를 이용하여 텍스트, 오디오, 비디오 등 멀티미디어 객체를 프로그래밍하고 응용 프로그램에 임베디드 할 수 있는 프로그래밍 기술을 익힌다. 또한, 멀티미디어 DB와의 연동기술을 습득함으로써 고급 멀티미디어 프로그래밍 기법을 배양한다. 

알고리즘 (Algorithm)

알고리즘은 컴퓨터를 이용해서 문제를 해결하는 방법을 기술하는 절차이며 효율성과 정확성이 고려되야 한다. 프로그래밍에서 많이 만나게 되는 고전적인 문제들 정렬, 탐색, 스트링 매칭, 기하 알고리즘, 동적 프로그래밍, 백트래킹 등에 대한 다양한 알고리즘들을 소개하고 그 성능을 분석하는 알고리즘의 복잡도를 소개한다.

디지털스토리텔링(Digital Storytelling)

시나리오 제작상의 용어와 형식, 멀티미디어 작품제작의 기초가 되는 발상, 구상, 시나리오에 이르기까지의 창의적 과정을 학습하여 디지털 콘텐츠 제작을 위한 스토리텔링 기법을 익힌다.

컴퓨터그래픽스(1) (Computer Graphics 1)

컴퓨터 그래픽스는 비쥬얼 콘텐츠와 정보를 생성, 조작, 변형, 저장하는 기술로서 영화의 특수효과, 가상현실, 애니메이션, 에이전트, 사이언티픽 데이터 표현, 게임 등 시각정보를 사용하는 응용분야에서 사용되고 있다. 프로그래밍 기반 시각적 표현을 위한 원리와 이를 조작하여 2차원 또는 3차원 도형의 형태로 회전, 이동, 확대, 축소시키고 출력장치에 표시하는 알고리즘, 텍스쳐, 조명 등을 익히고 그래픽라이브러리를 사용하여 구현함으로써 컴퓨터 그래픽스의 핵심기술을 학습하고 프로젝트를 개발방법을 학습한다.

영상처리 (Digital Image Processing)

디지털영상의 획득, 컬러, 영상강화, 모핑과 영상압축 등 특수효과 등 고급 영상처리에 필요한 기술을 학습함으로써 영상의 활용기술을 탐구한다.

게임프로그래밍(1) (Game Programming 1)

게임의 구조, 2D 및 3D게임 그래픽처리를 위한 기술 및 인공지능 등의 다양한 게임프로그래밍 이론과 유니티, 언리얼 등의 3D 게임 엔진의 사용법 등에 대해 학습한다. 

데이터베이스(2) (Database 2)

데이터베이스(1)의 심화과목으로 데이터베이스(1)에서 학습한 내용을 토대로 설계 프로젝트를 통해 JSP 기반의 서버 구축 및 웹 응용프로그램을 개발해 본다. 

자바웹프로그래밍(2) (Web Programming 2)

자바 웹프로그래밍(1)의 심화과목으로 클라이언트 측 웹 프로그래밍 기초 이론을 바탕으로 자바의 서버기간 웹 프로그래밍 언어인 JSP/Servlet을 학습하고, 보다 동적인 웹 표준 사이트를 구축하기 위한 스크립트 사용법과 고급 웹 프로그래밍 기법들에 대해 학습한다. 또한 데이터베이스와 연동되는 웹 프로젝트를 통해 실무능력을 배양한다.  

HCI (Human Computer Interaction)

인간과 컴퓨터상호작용(HCI)에 대한 기본 원리와 원칙을 습득하고, 컴퓨터 게임이나 인터넷 사이트와 같은 디지털 콘텐츠를 개발하는 과정에서 사람에게 유용하고, 편리하며, 풍부한 감정을 제공해주는 멀티모달리티 방법과 요소 기술을 습득한다.

소프트웨어설계 (Software Design)

소프트웨어 생명주기, 구조적 설계 및 분석 기법, 각종 다이어그램 기법과 소프트웨어 테스팅의 요소개념과 기법을 학습한다.

3D 모델링 (3D Dimensional Modeling)

디지털영상 렌더링에 요구되는 객체의 모델링 기법을 연구한다. 모델링 프로세스에서 요구되는 모델링 방법인 폴리곤 모델링, NURBS, Spline & Patch 방법을 학습하고, 렌더링 기술, 쉐이딩 등의 핵심내용을 학습한 후, 프로그래밍과 저작도구를 사용하여 제작 실습한다.

모바일컴퓨팅(1) (Mobile Computing 1)

최근 가장 많이 쓰이고 있는 모바일 플랫폼 중 하나인 안드로이드 플랫폼에 대해 학습하고, 안드로이드 플랫폼 상에서의 앱 구현을 위한 단말기, 네트워크 등의 다양한 이론의 학습과 실습을 병행함으로써 안드로이드 앱을 설계하고 구현할 수 있는 능력을 배양한다. 

컴퓨터그래픽스(2) (Computer Graphics 2)

컴퓨터그래픽스(1)에서 습득한 요소 기술을 기반으로 실제적으로 개발되고 있는 최신 그래픽 기술을 학습한다. 기하학 모델링 방법, 모핑, 와핑, 얼굴모델링, 모션캡쳐, X3D 등의 핵심 기술을 학습하고 프로젝트를 개발함으로써 독자적으로 알고리즘을 설계하고 구현할 수 있는 능력을 기른다.

게임프로그래밍(2) (Game Programming 2)

게임프로그래밍(1)에서 배운 내용을 토대로 Unity3D엔진의 고급기능을 학습하고 멀티 플랫폼에 적용가능한 게임을 개발한다. 

애니메이션 (Animation)

애니메이션 원리와 애니메이션 시스템을 개괄하고, 선형변환, 기하 프로그래밍, 모션트위닝, 오니온 효과, 운동학 등을 이해하고 습득한 후, 개별적으로 애니메이션을 제작한다.

모바일컴퓨팅(2) (Mobile Computing 2)

모바일컴퓨터(1)의 심화과목으로 안드로이드 개발을 위한 다양한 고급 프로그래밍 기법과 API 활용 및 스마트 기기의 특징인 다양한 센서 운용기술을 학습한다. 또한, 다양한 모바일 응용과 서비스 등의 사례 분석을 통해 안드로이드 플랫폼 환경에서 앱을 기획/설계/구현하여 현장에 적용가능한 능력을 함양한다.

운영체제 (Operating Systems)

시스템 소프트웨어들 중에서 가장 대표적인 운영체제의 핵심내용을 학습함으로써 운영체제 설계자와 시스템 프로그래머에게 필요한 지식을 습득하도록 한다. 주요내용을 프로세스 관리, 교착상태 탐지 및 해결, 기억장치 관리 기법, CPU 스케줄링, 디스크 스케줄링, 파일 시스템의 구조 및 관리 기법들을 학습한다.

인공지능 (Artificial Intelligence)

인공지능은 사람의 지능과 인지기능을 컴퓨터로 모델로 표현하기 위한 기술이다. 핵심적인 문제로 지식표현, 문제의 해결, 경험적 탐색, 추론, 학습, 전문가시스템, 에이전트 등이 있으며 실제 적용사례를 중심으로 접근방법론과 해법을 익히고 게임제작에 필요한 인공지능 기술과 적용방법에 대하여 학습한다.

졸업작품 (Project for Graduation)

졸업을 위한 팀 단위 프로젝트를 통하여 전공에서 배운 이론과 실제를 접목시킴으로써 자발적이고 창의적인 프로젝트를 수행하여 완성한다.

가상현실특강 (Special Topics in Virtual Reality)

최근에 연구 보고된 가상현실기술 분야를 구체적으로 이해하고 분석하는 능력을 기른 후, 실제적으로 독자적인 아이디어를 도출하고 전개하여, 연구를 기획하고 시스템을 개발할 수 있도록 학습한다.

게임특강 (Special Topics in Game)

패키지 게임이나 온라인 게임을 분석하여 제작에 사용된 기술 및 요소를 파악하고, 산학 연계를 통한 업계 전문 기획 및 개발자 초청 강연을 통하여 기술 동향 파악을 한다. 습득한 기술을 이용하여 게임을 설계하고 구현 제작한다.

모바일특강 (Special Topics in Mobile)

모바일에서 사용되는 최신기술, 동향, 응용프로그램 제작 등에 대해 개괄함으로써 모바일 컴퓨터의 최신기술 및 동향을 습득한다.

산학협동특강 (Field Internship)

산업현장 교육을 통하여 현지에서 발생하는 문제점을 인식하고, 실제의 경험 등 다양한 현장감각을 습득하여 진로방향의 결정에 도움을 주고 부족한 점을 스스로 발견하고 극복하는 과정에서 실제 경험에 의한 다양한 현장감각을 습득하여 앞으로의 진로설정과 취업에 도움을 준다. 자신의 진로와 핵심전공 트랙에 적합한 산업현장을 선택하여 일정기간동안 파견근무 한 후, 결과 보고서를 제출해야 하며 발표평가를 실시한다.

현장실습 (Field Placement)

국내외 산업현장에서 학생의 실습교육을 실시하여 현장에서 필요한 요구사항을 경험하고 취업과 연결점을 찾을 수 있도록 한다.

미디어소프트웨어종합설계(1) (Media software Comprehensive design 1) 

미디어소프트웨어공학 분야의 주제를 선정하여 팀 단위로 해결방법을 모색하고 개념화 모델링 단계를 거쳐 실제적인 작품을 완성하는 종합설계과목의 전반부과정을 다루는 과목이다. 미디어소프트웨어종합설계(1)은 학생의 창의적인 기획, 과제해결능력, 미디어소프트웨어 공학적인 문제접근능력, 이론해석능력, 실험능력, 팀워크를 배양하는데 목적이 있다.

미디어소프트웨어종합설계(2) (Media software Comprehensive design 2)

미디어소프트웨어종합설계(1)에서 수행한 내용을 토대로 실제적으로 종합설계의 최종 결과물을 완성하는 과정을 다룬다. 학생의 기초설계, 미디어소프트웨어 공학적인 문제접근능력, 이론해석능력, 실험능력, 결과의 고찰능력, 결과의 보고서 작성과 발표에 대한 능력, 팀워크를 배양하는데 목적이 있다. 미디어소프트웨어 프로젝트 수행에 있어서 기획과 개발, 관리 및 운영에 이르기까지의 세부적인 단계를 공부하고 구체적인 경영마인드가 가미된 멀티미디어 제품을 개발하여 결과보고서 또는 논문을 완성하고 작품전에 발표한다.