Courses

Master: Lecture

Computer Animation

Students will learn fundamental paradigms used in computer animation. They will learn to use mathematical models of motion to develop algorithmic solutions for synthesizing the movements of virtual characters.

Content:

  • Foundation of Graphics
  • Kinematics
  • Motion capturing
  • Motion editing
  • Motion textures and motion synthesis
  • Distance measures and DTW
  • Searching motion databases
  • Data-driven motion synthesis
  • Baysian modeling
  • Motion reconstruction
  • Motion segmentation
  • Facial animation
  • Eye movements
  • Cognitive modeling hierarchy

Downloads:

Bachelor: Lab Course

Object-Oriented Software Engineering

The lab course explores both the theoretical foundations of software engineering and the principles and practices of various object-oriented tools, processes, and products. It emphasizes practical experience, allowing participants to apply the techniques learned by implementing software projects

Content:

  •  OOP concepts
  • Version control systems (Git)
  • Build management tools (Gradle, Maven)
  • Serialization and deserialization (JSON, GSON)
  • Client-Server application
  • Relational database
  • JavaFX
  • Android

Downloads:

Master: Lecture

Physics-based Modeling

Students will learn the fundamental techniques of physics-based modeling for computer graphics and animation. They will be able to choose appropriate mathematical models and, with an understanding of algorithmic techniques and issues, develop software solutions for specific problems

Content:

  • Particle systems
  • Rigid body dynamics
  • Multibody dynamics
  • Numeric automatic symbolic differiation
  • Collision detection
  • Collision Response
  • Cloth modeling-particle system
  • Stiff systems
  • Avatar dynamics
  • Controlled Systems

Downloads:

Bachelor: Lecture

Algorithms and Programming

The aim of the lecture is to teach participants how to formalize tasks algorithmically and implement algorithmic solutions using an object-oriented programming language.

Content:

  • Binary coding of elementary data types
  • Elementary concepts of programming languages
  • Classes and complex data types
  • OOP concepts
  • Construction and runtime analysis of
    algorithms
  • Trees
  • Heaps
  • Hashing
  • Graph algorithms
  • Search algorithms
  • Sorting algorithms
  • Advanced OOP

Downloads:

Bachelor: Preliminary course

Formal methods of computer science

The course is aimed at first-year Bachelor’s degree students in Computer Science. The preliminary course serves several purposes: establishing a uniform foundational knowledge, reviewing key concepts, practicing mathematical formalism, and providing an introduction to some interesting topics in computer science.

Content:

  • Mathematical language
  • Propositional logic and predicate logic
  • Set theory
  • Number systems
  • Proof techniques
  • Relations and functions
  • Groups
  • Rings
  • Fields
  • Complex numbers

Downloads:

Bachelor: Lecture

Object-Oriented Programming

Students will learn the elements of object-oriented software development. Using the programming language Java as an example, the course introduces object-oriented analysis and design, with the goal of mastering and applying advanced programming language concepts.

Content:

  • Anatomy of programming languages
  • Basics of object oriented programming
  • Implementation of object-oriented languages
  •  Advanced OOP
  • OOP data structures
  • OOP Frameworks

Downloads:

Bachelor: Preliminary course

Programming in C

Downloads:

Master: Lab Course

Computer Animation

Downloads:

Master: Seminar

Computer Animation

Downloads: