Introduction
Graphics and interaction concerns the modelling of objects, their physical properties, appearance and behaviour and the design of numerical algorithms for the animated transformation of these geometric models into pixelated images. Typical applications include computer games, computer aided design, robotics and computer simulation. The principles of computer graphics form the basis of all graphical user interfaces used on computers today. In addition, almost everything that is manufactured is now designed on a computer, at least at some stage during manufacture, and typically involves a combination of object and surface modelling and increasingly computer simulation for dynamic testing of functionality and usability.
Whereas in the early days of computer graphics, the focus was often on realism, the focus has now moved to animating scenes in real time for the computer game industry. Recent developments in graphics and computation exploit the synergy between computer simulation and the real-world, including computer-aided design and new media applications. It seems likely in the future that we will frequently see new kinds of media events, involving the simultaneous release of a variety of forms of content that can be experienced in different ways - from viewing (such as watching movies) to playing (such as playing computer games) to using in our daily lives (such as robotic assistants or virtual reality displays).
One recent development is augmented reality, where computer-based models are displayed as an overlay to real-world video, and users interact with these models to assist them performing certain tasks. Augmented reality has been successfully applied to medicine, leading to more accurate surgery. More generally, these new applications will require more sophisticated computer modelling and new algorithms that go beyond the aim of realism towards the aims of simulation, where objects must posses certain behaviours and possess different characteristics according to what your doing or what you can see, possibly from multiple viewpoints. Many of these issues emerge in multi-player computer games, distributed over the Internet.
Among the more sophisticated models to emerge are scene-graphs, that offer decomposition of objects useful in complex three dimensional (3-D) animation. However by themselves, scene-graphs are only a starting point as their construction, rendering and animation requires new techniques. In graphics and computation scene-graph representation will be covered, including the computational implications of their transformation for animation and surface rendering. Several promising new approaches will also be explored, including a selection of techniques from real-time ray tracing, radiosity, quadratic surfaces, level-of-detail and real-time inverse kinematics.
Not surprisingly, certain algorithms that have emerged as chosen standards for solving specific problems in computer graphics. This subject has been designed to provide you with the necessary background in leading techniques as well as helping you gain an understanding of the important issues in algorithmic design for computational geometry.
Objectives
In this subject you will learn to understand and apply the principles of computer graphics and understand state-or-the art algorithms that achieve real-time animations. You will also learn to choose appropriate languages for the design and implementation of high-performance computer graphics applications, design complex and realistic, real-time graphics applications that run over distributed computer networks, and effectively engineer complex graphics software systems.
When you complete this subject you should:
- be able to apply the principles of computer graphics and understand state-of-the art algorithms that achieve real-time animations;
- choose appropriate languages for the design and implementation of high-performance computer graphics applications;
- design complex and realistic, real-time graphics applications that run over distributed computer networks; and
- effectively participate in engineering complex graphics software systems, individually and as part of a team.
Teaching staff
The lecturer is Adrian Pearce. On occasion, a guest lecturer may be invited to present on a specific graphics or computation topic.
Topics
The subject will cover the following topics:
- two-dimensional (2-D) and three-dimensional (3-D) computational geometry including transformations and perspective projections,
- object modelling including scene-graph representation of 3-D objects,
- illumination models and computational surface rendering techniques,
- algorithms for distributed computing, including sensor and actuation networks,
- digital topology and colour models, and
- game AI.