• No results found

CS 562 Advanced Real-Time Rendering Techniques (3 cr.)

Prerequisite(s): CS 300 or CS 541

This course introduces students to data structures, algorithms, and techniques concerned with rendering images more accurately and efficiently in interactive computer simulations and video game software. Topics include patch and surface algorithms, terrain rendering techniques, anti-aliasing theory and practice, advanced lighting techniques, hard and soft shadow map methods, multi-pass rendering techniques, high-dynamic range (HDR) rendering, advanced shading and mapping, and real-time vertex/pixel shader programming essentials. Additionally, students practice these subjects by working with the supporting OpenGL or DirectX libraries.

CS 570 Computer Imaging

(3 cr.)

Prerequisite(s): None

The course introduces students to computer imaging where image analysis and image processing are unified to provide a useful paradigm for both computer vision and image processing applications. Students use C++ to implement different algorithms introduced in the course. Upon completion of this course, students are expected to have gained a general understanding of the fundamentals of digital image processing and computer vision. They also have achieved a familiarity with the current analytical tools that are used in computer imaging applications and the ability to design and develop basic algorithms to solve computer-imaging problems.

CS 571 Advanced Computer Imaging

(3 cr.)

Prerequisite(s): CS 570 or ECE 420

This course introduces the computer vision pipeline. Students understand and implement state-of-the-art methods in image analysis, feature detection, face recognition and computational photography. This course provides computational skills that are complementary to the computer graphics curriculum and reinforces learning activities with a hands-on implementation approach.

CS 580 Artificial Intelligence in Games

(3 cr.)

Prerequisite(s): None

This course introduces students to a wide range of concepts and practical algorithms that are commonly used to solve video game AI problems. Case studies from real games are used to illustrate the concepts. Students have a chance to work with and implement core game AI algorithms. Topics covered include the game AI programmer mindset, AI architecture, such as state machines, rule-based systems, goal-based systems, trigger systems, smart terrain, scripting, message passing, and debugging AI, movement, pathfinding, emergent behavior, agent awareness, agent cooperation, terrain analysis, planning, and learning/adaptation.

CS 581 Introduction to Artificial Intelligence

(3 cr.)

Prerequisite(s): None

This course covers important AI areas, including search algorithms, knowledge representation, production systems, game playing, uncertainty handling, learning, and planning.

Students are required to have basic knowledge of data structures, probability theory, and mathematical logic. Upon successful completion of this course, students have gained an understanding of the skills relevant to modern AI techniques, practices, and design solutions.

CS 582 Reasoning Under Uncertainty

(3 cr.)

Prerequisite(s): CS 380 or CS 580, CS 381 or CS 581

This course covers important AI topics, including hidden Markov models and advanced search algorithms (D-lite and cooperative path finding). Students also examine uncertainty handling (Dempster-Shafer theory), learning (kernel machines), and advanced topics in planning (conditional and adversarial planning).

CS 598 Computer Science Seminar

(1 cr.)

Prerequisite(s): None

Every semester, guest speakers, faculty members, and/ or graduate students offer to DigiPen students a number of presentations that cover different research topics in computer science. Each speaker decides on the choice of topic, but they usually are within the general boundaries of students’ courses of study. This seminar aims not to pursue any particular topic but rather to explore new research in more depth to allow students to develop their own skills in theoretical analysis. Each speaker’s paper(s) are available to students. They are required to read these papers and to choose one to expand upon for a final paper and an oral presentation.

CS 599 Special Topics in Computer Science

(3 cr.)

Prerequisite(s): None

The content of this course may change each time it’s offered. It is for the purpose of offering a new or specialized course of interest to the faculty or students that is not covered by the courses in the current catalog.

CS 601 Master’s Thesis I

(3 cr.)

Prerequisite(s): None

This course is the first part of the master’s program thesis. The student works with the thesis advisory committee to select a research topic, to conduct a complete survey of existing techniques and algorithms in the related field, to identify fundamental knowledge, and to collect materials and tools that are essential to his or her research work. Upon completion of the course, the student produces a written document to summarize the above steps. In this document, the student is also encouraged to include an original idea of proposed approaches to the problem.

CS 602 Master’s Thesis II

(3 cr.)

Prerequisite(s): CS 601

This course is the second part of the master’s program thesis. Students continue to work under the supervision of the thesis advisory committee to create the theory of the proposed research topic, to develop algorithms, and to possibly create a

prototype to verify the theory and methods. Upon completion of the course, the student must submit his or her formal written thesis to the advisory committee to summarize the research and pass the oral exam to defend the thesis.

CSX 510 Scripting For Games

(3 cr.)

Prerequisite(s): None

This course presents topics in computer programming, assuming no prior background experience in the subject. Emphasis is on automation of tasks. Topics may include: logic, program flow, variables, operators, conditionals, loops, and functions. Students are exposed to at least one current industry standard scripting language used by artists in the film and video games industries.

MCM 600 Masters Continuous Matriculation

(1 cr.)

Prerequisite(s): None

Maintaining continuous registration is a requirement for graduate students. Students who have completed most course requirements but are finishing their thesis or are satisfying incomplete grades must register to maintain continuous matriculation. This credit may not be applied toward degree completion requirements.