Courses

Year: 2016 / 2015 / 2014


2016 Fall


10510CS 550300 Introduction to Game Programming

Instructor: Chu, Hung-Kuo

Game development is a hot topic in the modern entertainment industry. This course is divided into two major parts. In the 1st part, we present basic programming skills and resources required for beginners who want to experience game development. Specifically, we present the usage of OpenGL APIs, one of the most popular graphics programming languages. In the 2nd part, we give a training course of a well-known game engine, Unity3D which is capable of creating a fancy game quickly and intuitively.

[ILMS]

2016 Spring


10420CS 450500 Introduction to Graphics Programming and its Applications

Instructor: Chu, Hung-Kuo

This course is an extension to application programming. Specifically, it is focusing on graphics application programming. Before get into the detail algorithms and the operations behind the mystery of Computer Graphics, it is possible to write some basic graphics application programs. Similar to Windows programming that utilizes some Windows APIs to achieve the control of Windows applications, Graphics programming is using some Graphics APIs, such as OpenGL, to achieve the processing of graphics applications. By understanding the physical meanings and the control of each parameter in the Graphics API, without knowing the true implementation behind it, we can write some programs which utilizing the Graphics APIs and deriving some nice rendering results with proper assignment and control to the required parameters.

In this course, OpenGL Graphics API will be introduced for the illustration of examples throughout the class. It is adopted due to OpenGL has been designed to be a cross-platform Graphics API running on PCs and mobile devices. Although OpenGL ES (OpenGL for Embedded System) is widely adopted as the standard Graphics API for mobile devices, it is actually consisting of well-defined subsets of desktop OpenGL. So, for students who learn OpenGL Graphics programming will benefit from writing Graphics applications in not only the PC platforms but also in many other mobile platforms as well.

[iLMS]

2015 Fall


10410CS 550300 Introduction to Game Programming

Instructor: Chu, Hung-Kuo

Game development is a hot topic in the modern entertainment industry. This course is divided into two major parts. In the 1st part, we present basic programming skills and resources required for beginners who want to experience game development. Specifically, we present the usage of OpenGL APIs, one of the most popular graphics programming languages. In the 2nd part, we give a training course of a well-known game engine, Unity3D which is capable of creating a fancy game quickly and intuitively.


2015 Spring


10320CS 550600 Non-Photo-Realistic Rendering´╝ÜTheory and Applications

Instructor: Chu, Hung-Kuo

Non-Photo-Realistic (NPR) rendering is an extended studied topic in computer graphics community. The main idea is to produce images of esthetic form with specific artistic style from either 2D or 3D media. Well known techniques include sketch simulation, water color painting simulation and illusory art reproduction. Among of them, the reproduction of illusory art has become an active research topic in a recent decade. In this course, students will be given an introduction of NPR history followed by studies of newly developed illusory art reproduction techniques. Students are asked to survey and study papers of top conference related to NPR rendering and give a presentation weekly. At the end of the course, each student requires implementing technique of one paper and presents the system in the class.


10320CS 550000 Computer Graphics

Instructor: Lee, Ruen-Rone

This course is about the programming of 3D computer graphics. During the first half of this course, we will focus on the high-level programming of 3D graphics applications using the OpenGL API. (This approach, as the author of the first reference book describes it, is like leaning to drive a car without having to know what's under the hood.) Then, during the second half of this course, we will study the whole process of a 3D renderer, which we will implement as parts of the assignments. If time allows, we will also cover topics of texture mapping, curve surfaces, global illumination, ...etc.


2014 Fall


10410CS 550300 Introduction to Game Programming

Instructor: Chu, Hung-Kuo

Game development is a hot topic in the modern entertainment industry. This course is divided into two major parts. In the 1st part, we present basic programming skills and resources required for beginners who want to experience game development. Specifically, we present the usage of OpenGL APIs, one of the most popular graphics programming languages. In the 2nd part, we give a training course of a well-known game engine, Unity3D which is capable of creating a fancy game quickly and intuitively.