Courses given by the Department of Multimedia Informatics
Course Code | Course Name | METU Credit | Contact (h/w) | Lab (h/w) | ECTS |
---|---|---|---|---|---|
MMI505 | GAME DEVELOPMENT PIPELINE | 3 | 0.00 | 0.00 | 8.0 |
Course ContentThe course aims to present a historical and technical knowledge in evolation of video games. Major topics related with game development and design will be covered that give the students an insight on this field and help them select their elective courses more consciosly. Recent techniques in game development, widely accepted software and game engines, special topics in the field will be covered in the scope of the course. Having knowledge on these issues will give students the chance to select a specilization area to concentrate on, w,th awareness on all important concepts of game design, development and production, so recieve a higher quality education. | |||||
MMI508 | GAME METRICS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentMeasurement of usability and user experience in games during and after game development is a process that enhances greatly the overall quality of games.It is known that even very small changes can make a big prositive(or negative) impact on user experience.It then becomes very important to develop efficient and solid stratecies to determine whether a game provides a good user experience or not.This course aims to teach the fundamentals of user experience evaluation for games. | |||||
MMI511 | GAME AESTHETICS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThis course aims to provide students familiar with aspects related to game aesthetics. This course aims at presenting fundamentals of visual design. Content areas include: history, basic visual design in an interactive content, world design, motion graphics and game art. Special emphasis is placed on how visual aesthetics play a role in the game experience. | |||||
MMI513 | ALGORITHMS FOR INTERACTIVE SYSTEMS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentA practical understanding of algorithms is necessary to develop interactive systems such as games, virtual/augmented/mixed reality and other interactive applications. This course aims to teach algorithms relevant in the context of designing interactive systems. The topics to be covered include random number generation, noise generation, procedural content generation, tournament modelling, game trees, path finding, group movement modelling, decision making and modelling uncertainty. Networking related topics will also be covered. The course is predominantly practical where the algorithms and their use will be described and implementation of major algorithms will be demonstrated with collaborative coding tools in class using Python. The assessment will be via programming assignments and a term project. | |||||
MMI522 | PROCEDURAL SOUND DESIGN | 3 | 0.00 | 0.00 | 8.0 |
Course ContentGames are interactive applications and game worlds change with interaction. Audio content in games and virtual reality are typically canned recordings that are impossible to modify during runtime, preventing interactivity, causing repetition and increasing the memory footprint. Procedural audio generation by using interactive synthesis algorithms is a solution to circumvent these problems. This course aims to introduce the students to the concepts and underpinnings of procedural audio as well as give them the practical knowhow on procedural sound design for games. | |||||
MMI538 | COMPUTER GRAPHICS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentReview of 2D basics,3-D models and geometric transformations. Graphics standards (PHIGS,GKS) and user interface standards(XWindows).Solid modeling. Illumination and shading. Fracta models. Animation. | |||||
MMI540 | 3D GEOMETRIC MODELING AND PROCESSING | 3 | 3.00 | 0.00 | 8.0 |
Course Content3D sensor outputs, 3D data structures, 3D data visualization, modeling of 3D data, 3D surface models (mesh and spline models), preprocessing of 3D data, 3D registration, 3D feature extraction, 3D feature descriptors, 3D object detection and recognition. | |||||
MMI541 | PHYSICS FOR COMPUTER GAMES | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe course provides the basics of classical mechanics and numerical methods to solve typical physics problems of game programming. After a gentle introduction to game physics by presenting basic concepts, kinematics, force and kinetics, collision are given together with mathematical tools that are frequently used for physics based game programming. Programming studio sessions will provide an opportunity to share programming practices among participants. | |||||
MMI561 | ARTIFICIAL INTELLIGENCE IN COMPUTER GAMES | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe course presents the theoretical basics of artificial intelligence (AI) and their application to behavior modeling in game development. The first part will introduce common AI architectures, which can be used in game design, and the second part will cover basic AI techniques towards entity behavior modeling. In the course, students will be given term papers to be read, which will be summarized and presented in the class. Additionally, the students will form groups, and each group will develop a term project involving behavior modeling in. | |||||
MMI590 | GRADUATE SEMINAR | 0 | 0.00 | 2.00 | 10.0 |
Course ContentFor course details, see https://catalog2.metu.edu.tr. | |||||
MMI599 | MASTERS THESIS | 0 | 0.00 | 0.00 | 50.0 |
Course ContentFor course details, see https://catalog2.metu.edu.tr. | |||||
MMI699 | PH.D. THESIS | 0 | 0.00 | 0.00 | 130.0 |
Course ContentProgram of research leading to Ph.D. degree, arranged between a student and the faculty member. Students register to this course in all semesters preferably starting from the beginning of their second semester but not later than the beginning of the third semester while the research program or write up of the dissertation is in progress. | |||||
MMI700 | RESEARCH METHODS AND ETHICS | 0 | 0.00 | 0.00 | 10.0 |
Course ContentThis course aims to develop an understanding of the history and principles of scientific method, as well as powers and limits of science. At a more practical level, the course is going to provide students with knowledge on deductive logic, probability, inductive logic and statistics, parsimony and efficiency and last but not least on ethics and responsibilities of science. More practical aspects of research such as communication of results will also be covered. The course will involve oral lectures as well as reading assignments and discussions in class. The assessment will be based on the reflection papers written by students as well as a larger critical reading assignment from a set of scientific monographys to be assigned at the beginning of semester. The students will, by the end of the semester, present a term report presenting a critical review of the reading assignment in light of the concepts presented throughout the semester. | |||||
MMI701 | MULTIMEDIA SIGNAL PROCESSING | 3 | 0.00 | 0.00 | 8.0 |
Course ContentThis course aims to provide a practical coverage of a fundamental topic relevant to multimedia computing: multimedia signal processing. Topics related to signal processing with applications in multimedia computing will be taught. These are fundamentals of signals and systems, z-transforms, frequency analysis of signals and systems, concepts of stability and causality, sampling theorem, design of linear-time invariant systems, optimal filters, linear production, adaptive filters, spectrum estimation, and time-frequency representations.The course has a good balance of theoretical and practical aspects.Theoretical aspects thought during the course will be complemented with practical examples using a high-level programming language such as Python and/or Matlab. The course will also include a term project that will involve the students developing a solution to an actual multimedia signal processing problem with the theoretical and practical tools that they learned during the course. | |||||
MMI702 | MACHINE LEARNING FOR MULTIMEDIA INFORMATICS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe main objective of this course is to provide a theoretical and practical coverage of machine learning in multimedia domain. The main topics to be covered during the course are supervised learning, Bayesian Decision Theory, parametric methods, multivariate methods, dimensionality reduction, clustering, decision trees and Hidden Markov Models. The course will not only focus on providing a theoretical background to the students, but will also encourage them to implement the algorithms learned in the class and to analyze practical examples. The students will be given a term project and various assignments to implement the algorithms taught during the course. Also, reading assignments focusing on the recent research on Machine Learning will be given and discussed during the lectures. | |||||
MMI703 | COMMUNICATION ACOUSTICS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThis course aims to provide knowledge on several topics related to the usage of sound for the purpose of human-to-human, human-to-machine, and machine-to-human communication. More specifically the course covers aspects of acoustics and human hearing at a theoretical level as well as practical audio signal processing applications such as spatial audio systems, audio and speech coding, text-to-speech synthesis. The course aims to balance theory and practice in that it will involve students implementing some of the described algorithms, auditory models and replicate some of the auditory effects to be explained during the lectures using high-level kanguages such as Python (including SciPy and NumPy) and or Matlab. | |||||
MMI704 | MOTION CAPTURE, ANALYSIS AND SYNTHESIS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThis course aims to provide a coverage of fundamental topics relevant for human motion capture: human motion modelling and tracking. During the first half of the course topics related to 2D and 3D tracking, optical flow, articulated models, action recognition and video tracking will be covered. During the second half of the course, fundamental modelling and animation techniques will be presented. These include markerless movement analysis, optimization of human movement, biomechanics, applications of biomechanics, modeling and animation. Every theoretical aspect taught during the course will be complemented with a practical example using motion capture and animation tools such as MakeHuman, Autodesk Motion Builder and Blender. The course will also include a term project that will enable the students to merge the theoretical background with the practical tools. | |||||
MMI705 | NON-DIGITAL GAME DESIGN | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe goal of the course is to teach students the fundamentals of non-digital game design techniques. It explores the essential parts of a game to reveal its essence of its operational form. Students will analyze a variety of non-digital games (e.g. board and card games) and explore their mechanics from social and cultural perspectives. They apply the principles of game creation methods and gain insights regarding fast prototyping, and iterative design techniques, which can be applied to different kind of interactive projects. As a designer, they will investigate the freedom and innovative process of non-digital game development. | |||||
MMI706 | REINFORCEMENT LEARNING | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThis course aims to give background knowledge on several topics related to reinforcement learning and provide an environment for practical applications. Multi-armed Bandits, Monte Carlo methods, Markov Decision Processes, Dynamic Programming and Temporal-Difference Learning are some of the core topics that will be covered through lectures. The course aims to balance theory and practice in that it will involve students implementing all of the described algorithms, testing those algorithms in different game environments, and reading recent research papers on the reinforcement learning field. | |||||
MMI710 | MODELING OUTDOOR VIRTUAL ENVIRONMENTS FOR SIMULATIONS AND GAMES | 3 | 0.00 | 0.00 | 8.0 |
Course ContentThis course aims to present the fundamentals of outdoor virtual environments in computer games and simulation applications. Outdoor virtual environments cover terrain, geography, vegetation, sky, sun, moon, rain, snow, seasons, etc. Besides these natural phenomena, life layer entities will also be mentioned during the course. Good knowledge of these components helps game developers to design and create better titles throughout their professional life. A practical knowledge of programming language (C++, C# or Java) is a prerequisite for this course. | |||||
MMI711 | SEQUENCE MODELS IN MULTIMEDIA | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe course will cover various concepts related to understanding and processing different types of multimedia sequence models. The course starts with an overview of sequence models, RNNs and continues with details on training RNNs. By introducing different sequence modelling problems, recurrent architectural models and variants of gated units the course covers all fundamental concepts related to sequence learning in intelligent multimedia systems. In addition the course covers the recurrent and nonrecurrent models of attention in various multimedia type signals such as vision and/or sound. | |||||
MMI712 | MACHINE LEARNING SYSTEMS DESIGN AND DEPLOYMENT | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe course covers several aspects of designing reliable and scalable machine learning systems for real-world deployment. It deals with development of production quality models and introduces the machine learning pipeline, concepts on machine learning system design and data engineering. It provides know-how on model development, and how to scale up the training for large models as well as evaluation, calibration and debugging of these models. Generation of reproducible models via experiment tracking tools and model versioning is also covered. Hardware platforms and frameworks for deployment are introduced, followed by basic deployment concepts, containerized deployment and testing. | |||||
MMI713 | APPLIED PARALLEL PROGRAMMING ON GPU | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe course has been designed to give hands-on knowledge and development experience on general purpose GPU programming. The student will learn about the GPU as part of the PC architecture. Then they will learn about development of GPU software using CUDA C and OpenCL. Various optimization issues, particularly effective use of memory and floating point calculations will be discussed. The concepts and the effects of optimization will be demonstrated with case studies. Similarities and differences of CUDA and OpenCL will also be discussed around these case studies. | |||||
MMI714 | GENERATIVE MODELS FOR MULTIMEDIA | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThis advanced deep learning course offers a comprehensive introduction to the principles and practice of generative modeling. Beginning with a review of the mathematical foundations required for the course, students will gain an understanding of the conventional autoregressive methods used in generative modeling, as well as more contemporary techniques such as deep generative neural models and diffusion models. The course covers all fundamental concepts related to generating media, including latent spaces, latent codes, and encoding. | |||||
MMI715 | PSYCHOLOGY IN GAME DESIGN | 3 | 3.00 | 0.00 | 7.5 |
Course ContentStudents will read the weekly assigned articles and write reaction papers reflecting on the potential applications to game design. These papers will be double spaced and no more than 2 papers long. The psychological concepts will be clarified in the classroom and students are expected to actively participate in class discussions about potential applications. As the term project, the students will either evaluate a commercial game based on the theories learned in the course and present it in class, or present an innovative way to apply of these concepts in game design. The project will be completed individually or in groups based on the number of students taking the course. | |||||
MMI722 | AUDIO FOR GAMES AND VIRTUAL ENVIRONMENTS | 3 | 0.00 | 0.00 | 8.0 |
Course ContentSpatial and synthetic audio are key elements of computer games and virtual reality applications where a high level of realism and immersiveness is desired within computational limitations of available hardware. The entire chain of processes from the production of sound to its perception all play part in the success of game audio systems. This course aims to introduce the fundamental concepts of spatial and synthetic audio for computer games and virtual reality with a clear focus on development of algorithms for such applications. Students will learn about Fundamentals of digital audio, psychoacoustics, spatial hearing mechanism, room acoustics modelling and auralization, 3D audio reproduction, and sound synthesis methods. | |||||
MMI724 | MUSIC AND SOUND PRODUCTION FOR GAMES: AESTHETICS AND PRACTICE | 3 | 0.00 | 0.00 | 8.0 |
Course ContentThis is applied method course designed to familiarize students with the language of computer music and sound production. Prerequisite knowledge of music is not necessary. This course aims at presenting Fundamentals of music composition and sound production based on applied method and theory. | |||||
MMI725 | GAMIFICATION AND PERSUASIVE GAMES | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThe goal of the course is to teach students the practical usage of the game elements in the business context to engaging todays customers of computer applications. In addition, the course lays the basics of game design theory to solve real world problems in IT context such as customer engagement, user motivation and retention. The goal is to help students to design multi-dimensional interaction and feedback mechanism by using dynamics of games. | |||||
MMI726 | MULTIMEDIA STANDARDS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentSeamless integration and interoperatibility of multimedia systems require standardization of the coding compression, storage and transmission of multimedia content. Several different international bodies such as ISO-MPEG, ITU, EBU, developed standards for this purpose over the past decades and these developments allowed the proliferation of usage of digital multimedia content such as images, videos, audio and computer graphics. This course aims to teach audio, image, and graphics coding and equip the students with knowledge on the most important and common multimedia standards as well as future and emerging standards. | |||||
MMI727 | DEEP LEARNING: METHODS AND APPLICATIONS | 3 | 3.00 | 0.00 | 8.0 |
Course ContentThis course aims to give background knowledge on several topics related to deep learning and provide a laboratory environment for practical applications. Backpropagation convolutional neural networks, generative adversarial networks, energy-based learning and optimization techniques are some of the core topics that will be covered through the lectures. The course aims to balance theory and practice in that it will involve students implementing all of the described algorithms, testing those algorithms under several domains and accessing GPU clouds during laboratory sessions to program examples using Torch. | |||||