Advanced Topics in Computing : Digital Multimedia and Mobile Game Development

Home Admissions Course Guide Advanced Topics in Computing : Digital Multimedia and Mobile Game Development
Advanced Topics in Computing : Digital Multimedia and Mobile Game Development
This Course Guide has been taken from the most recent presentation of the course. It would be useful for reference purposes but please note that there may be updates for the following presentation.

COMP S411
Advanced Topics in Computing: Digital Multimedia and Mobile Game Development


 


Introduction

Welcome to COMP S411 Advanced Topics in Computing: Digital Multimedia and Mobile Game Development. COMP S411 is a full-year, 10-credit, elective capstone course for OUHK students seeking a Bachelor of Science with Honours in Computing and Networking (BSCHCN). It is also an elective course in the Bachelor of Computing (BCOMP) programme. This course is designed to cover two to three advanced topics in computing that serve to deepen the knowledge base of graduating students.

Purpose of this Course Guide

By the time you take this course, you should be a student having had some experience with distance learning through the Open University of Hong Kong. You know that it is important to read this Course Guide thoroughly before looking at the study units or your textbook. Revisiting the study skills required for distance learning would benefit your learning experience.

This Course Guide tells you briefly what the course is about and how you can work your way through the material. It suggests the amount of time you will likely need to spend in order to complete each topic and the units, and it will give you a general idea when your assignments are due. For detailed information on assignments, however, please refer to the Assignment File section and, for information on the cut-off dates (due dates) for work to be submitted, please refer to the Presentation Schedule.

In distance learning, as practised by the OUHK, the study units are coordinated and prepared in the distance mode of education by your university professor. You do not need to attend lectures face-to-face with the lecturer or professor. This is one of the great advantages of distance learning: you can read and work through specially designed study material at your own pace at times and places that suit you best.

Think of it as reading the lecture instead of hearing it from a lecturer. In the same way that a lecturer might give you some reading tasks to do, the study unit will tell you when to read your textbook or other material. In the same way that a lecturer might give you an in-class exercise, your study unit will have exercises/self-tests for you to do at appropriate points.

You are also likely to find review questions in each unit. Do them all, as these exercises and questions would give you the practice necessary to achieve the objectives of the course and to pass the examination. Even when you 'make notes' in a direct face-to-face lecture, you are advised to study these notes, and to read and to think about them in relation to your textbook. In the distance mode of education, the course materials replace the live lecture notes.

Course aims

The aims of COMP S411 Advanced Topics in Computing: Digital Multimedia and Mobile Game Development are as follows:

  • provide students with a solid foundation in digital multimedia;

  • enable students to recognize and identify forms of multimedia processing;

  • enable students to write computer programs to process digital multimedia;

  • provide students with a foundation in Android game programming; and

  • enable students to design and develop mobile games using the Android platform.

Course learning outcomes

Upon completion of COMP S411 Advanced Topics in Computing: Digital Multimedia and Mobile Game Development, you should be able to:

  • Analyse the fundamental principles relating to the digital representation of multimedia.

  • Discuss issues concerning the human perception of sound and visual information.

  • Review audio, image and video formats.

  • Design procedures to process audio and visual data.

  • Explain the architecture of the Android platform and design games on the Android platform.

  • Explain the essential components for game development and apply the game design process.

Course structure

COMP S411 Advanced Topics in Computing: Digital Multimedia and Mobile Game Development is designed to introduce you to the advanced topics that are not often covered in other lower level courses. After taking this course you should have an initial understanding of the advanced issues which allows you to pursue them deeper in further studies. There are two modules in COMP S411:

  • digital multimedia; and

  • mobile game development.

The following table gives a general overview of the course structure.

Module Unit Title Weeks Assessment
Digital multimedia 1 Multimedia and audio fundamentals 4 Assignment 1
2 Audio processing 3
3 Colour and image fundamentals 3 Assignment 2
4 Image processing 3
5 Video fundamentals and video processing 3 Assignment 3
Mobile game development 6 Foundations of Android programming 4
7 Exploring the Android APIs 3 Assignment 4
8 Game development in Android 3
9 Building a complete Android game 4
    Revision 5  
    Total 35  
Course description

In addition to this Course Guide, please ensure that you have the following important course components from the OUHK.

Study units

There will be nine study units, but don't panic if you don't receive all units at the same time. It is usual for students to receive study units in a few separate mailings.

Each unit in this course consists of three to four weeks' work. Please remember that you have to plan your own study schedule. It is essential that you complete your assignments on time, as marks from these contribute to your final course score.

The study units outline the objectives of each section, summarize key issues, explain the relevant concepts and examples, and comment on related readings. Each unit contains self-tests to reinforce your assimilation of the issues under discussion. Moreover, the assignments will provide you with feedback and help you achieve the objectives of the course.

The units are described as follows.

Module 1 -- Digital multimedia

Unit 1 — Multimedia and audio fundamentals

This unit explains the fundamental principles of multimedia in the digital domain. It then expands upon this by introducing the concepts necessary to handle audio (sound) data in the digital domain. The human perception of sound is considered. Some forms of compression used by audio formats are discussed, including DPCM and MP3. Basic music fundamentals and how they relate to the MIDI format are explained.

Unit 2 -- Audio processing

This unit addresses the processing of digital audio. General issues related to audio programming are introduced. Basic audio waveforms and their generation are discussed. The advanced processing of audio for a wide variety of effects is covered.

Unit 3 -- Colour and image fundamentals

This unit is about the fundamental principles concerning the handling of digital image data. Human perception of visual information is considered. The most important representations of colour and their relation to image representation are discussed. Common image compression techniques and the file formats that use them are explained, and their contrasting qualities highlighted.

Unit 4 -- Image processing

This unit covers the basic concepts and algorithms for image processing operations. Starting from the most basic operations, the unit introduces progressively more advanced techniques, building on the fundamental concepts of colour and images.

Unit 5 -- Video fundamentals and video processing

This unit introduces the basic concepts of video. It then proceeds to explain how video is stored in common video formats, including
MPEG-1, MPEG-2 and MPEG-4. Common video processing operations and effects are then introduced, and algorithms used to create them are discussed.

Principles, common standards and issues concerning the streaming of audio and video over the Internet are then covered. Basic principles for assessing the similarity of multimedia, and especially video, data are introduced. Furthermore, issues relating to integration of multimedia, search engines and how they can efficiently index video data are introduced.

Module 2 -- Mobile game development

Unit 6 -- Foundations of Android programming

The general aim of this unit is to provide a foundation for developing Android applications. After explaining the concepts behind the Android platform, this unit focuses on the essential tools in Android programming. The structure and life cycle of Android applications are then explained to illustrate how they are managed by and interact with the host device. A number of important issues are then covered in the unit, including GUI programming, security considerations and application deployment.

Unit 7 -- Exploring the Android APIs

This unit explores a number of useful APIs for developing Android applications. The use of intents for inter-activity communication is explained. The APIs for 2-D graphics, media playing, storage, networking and location-based services are examined with illustrative examples. The unit also explains the security and permission settings for using some of these APIs.

Unit 8 -- Game development in Android

This unit covers the basic techniques required for designing and creating a game. After an introduction to different types of games, some fundamental issues of game design are considered.

Animation, which is a key element of game development, is discussed. Double-buffering is then explained to address potential flickering in animation output. Major techniques of game development are described and demonstrated in examples. Finally, fundamental AI algorithms are explained from an application point of view.

Unit 9 -- Building a complete Android game

This unit focuses on creating a complete game application by applying the tools and techniques presented in the previous units. Issues relating to optimization and deployment are considered, in order to provide a complete picture of game development.

Set textbooks

The prescribed textbook for Units 6-9 is:
  • Mednieks, Z, Dornin, L, Meike, G B, and Nakamura, M (2012) Programming Android, 2nd edn, Sebastopol, CA: O'Reilly Media.

Equipment requirements

You need to have at least the following equipment for the course:

Hardware

  • PC with Intel Core i5 or better

  • 4 GB RAM (preferably more)

  • 2 GB of free disk space

  • Broadband Internet access

  • Video display resolution of 1024 × 768 or higher

  • Sound card with speakers

Software

  • English Windows 7 or above

  • Web browser: Firefox or Chrome

  • Java (Instructions for downloading and installation will be provided within the course material.)

Note that the above hardware configuration is the absolute minimum. A faster computer with more RAM is desirable.

Assignment File

Assignment details for this course are contained in the Assignment File and are to be downloaded from the course web site. The nature of these assignments is described in the 'Assignments' section below. You are required to complete your assignments and submit them online through the course web site to your tutor in accordance with the timetable provided in the Presentation Schedule below.

Presentation Schedule

The Presentation Schedule for this course is available on the Online Learning Environment (OLE). In the schedule, you will see the approximate time for your tutor's receipt of your assignments. Please note that you must submit all your assignments on time to reach your tutor by the dates shown in the Assignment File.

Course assessment

This course is designed to help you in progressing easily from the required readings to the assignments and examination. You will be required to apply the information and techniques learned during the course when doing the assignments. The assignments must be submitted to your tutor for formal assessment in accordance with the deadlines stated on each assignment file.

The non-assessed self-test questions are not part of your formal assessment, but these must be done before progressing to the assignments.

The assignment files are to be downloaded by you from the course web site or as specified by your Course Coordinator. Each of them should be available, at the latest, one month before the cut-off date. You will have at least four weeks to work on the assignments. Please check the Online Learning Environment regularly for the availability of the assignment files.

The following table summarizes the assessment scheme for this course.

Assessment type Marks
Four assignments (OCAS)
The scores for the best three assignments will count towards the final assessment.
30%
(10% each × 3)
Examination (OES)
The three-hour examination will comprise the best three out of four long questions.
70%
Total (CS) 100%

Assignments

There are four assignments for the course. Among the four assignments, only the marks of the best three assignments are counted into the overall continuous assessment score (OCAS). The overall continuous assessment score contributes 30% to the total course score (CS). The schedule is as follows:

Assignment Assignment areas Date of submission OCS marks
1 Units 1–2 At the end of Unit 2 10%
2 Units 3–4 At the end of Unit 4 10%
3 Units 5–6 At the end of Unit 6 10%
4 Units 7–9 At the end of Unit 9 10%

You must submit the assignments on or before the cut-off dates. It has been found that submitting the assignments on time has a positive impact on the course performance. Late submission is likely to ruin the study schedule planning and disrupt your progress. If you have some genuine difficulty, you may apply for an extension to your Course Coordinator. Your tutor is authorized to grant extensions of up to seven days.

Plagiarism is theft of somebody else's work or ideas. If you commit plagiarism, you will be penalized severely (such as getting zero marks for the copying work that you have done). This applies just as much to using work of other students as it does to authors of books. However, you may include parenthetical references to the works you cite, e.g. (Stott 1998, 38). So, you could include a section at the end of your assignment called 'References', where the full name, title, date and place of the publication appear. The way to cite a reference is:

Stott, V (1998) Hong Kong Company Law, 8th edn, London: Financial Times Pitman Publishing.

Examination

At the end of the course, you are required to attend a final examination. The examination will be a three-hour, closed book written examination. The total score of the examination contributes 70% of the total course marks.

Student support

There are two general means of support available to you during the course: face-to-face support and support at a distance.

Face-to-face support

Each student is assigned a personal tutor. You may contact your tutor if you have any problem in your study. Reasons to contact your tutor include the following:

  • You do not understand some part of the study units or the assigned readings.

  • You experience some difficulty with self-tests.

  • You have a question or problem with the assignments, or with your tutor's comments or grading on an assignment.

Your assignments will be marked and commented on by your tutor, who will keep an eye on your progress and assist you if you encounter problems during the course. Marked assignments will be returned to you as quickly as possible. It is a good practice to keep a copy of each assignment submitted for marking so that you can always refer to it in any queries to your tutor.

Tutors provide face-to-face support through tutorials and surgeries.

Tutorials

The tutorials are not conducted using a lecture presentation, but are conducted to provide an opportunity for you to receive some course progress guidance from the tutors. In addition, you have an opportunity to share your study experiences and difficulties in your peer-to-peer group discussions. Although the tutorials are not compulsory, you are encouraged to attend the tutorial meetings as much as you are able.

Apart from self-study, tutorials will also be organized to assist you in your learning process. Details of the dates, time and location of the tutorials, as well as the name and phone number of your tutor, will be sent to you in due course.

It is strongly recommended that you attend all tutorials, as they will provide considerable assistance in your study of this course. Moreover, you will have the chance to meet with other distance learners who are studying at OUHK.

Surgeries

As a supplement to the telephone tutoring and tutorials, the course also provides surgery sessions. An on-duty tutor chairs each surgery. Each surgery aims to provide face-to-face consultation on your individual study problem areas.

You may bring along your queries on the study guide, textbooks, assignments and the specimen examination paper as you consult with the on-duty tutor.

Support at a distance

Telephone tutoring

When you have any difficulties in your studies, you may consult your tutor by telephone in the assigned time slots. The total number of hours that you can receive telephone-tutoring services is up to four hours per week. During the telephone tutoring, you can seek advice on the study topics, clarification on the textbooks, guidance in assignments, and help in preparing for the examination.

Many students in the past have felt that discussing computing over the telephone is difficult. Your tutor may prefer e-mail or the use of the  course discussion board. Discuss this with him or her.

Electronic mail

You may also submit your study problems to your assigned tutor through e-mail. This channel provides flexibility to both you and the tutors in overcoming the limitations of telephone tutoring in solving more technical issues.

Online Learning Environment (OLE)

This course is supported by the OUHK's Online Learning Environment (OLE). A course web site will be established on the OLE for disseminating the latest information of the course, course announcements, course scheduling, and assignment distribution. In addition, explanation of course materials and Frequently Asked Questions will also be provided on the Web.

Discussion board

A discussion board in the OLE will be established for you to debate the study topics, as well as to share your learning experiences. In a distance-learning course, you may find that the opportunities to meet with other learners are rather limited. This channel provides some remedies for this deficiency.

A note about the course developers

Kendrew Lau Chu-man

Kendrew Lau Chu-man has developed various types of systems in his career, ranging from visualization and simulation applications to wireless telephone systems. He received his Bachelor of Engineering (Honours) and Master of Philosophy, both in Information Engineering, from the Chinese University of Hong Kong, and holds Java certifications of SCJP, SCWCD, SCBCD, SCDJWS, and SCSNI. He has taught Java programming and computing subjects at the City University of Hong Kong and other universities, and operates a consulting company focusing on system development. His recent interest is in developing mobile applications in Blackberry Playbooks and Android devices.

Dr David Rossiter (developer of previous version)

Dr Rossiter is currently a Visiting Assistant Professor in the Department of Computer Science at the Hong Kong University of Science and Technology. He took a first degree in computer science at the University of Newcastle upon Tyne, UK. After that, he took a Master's Degree in Music Technology at the University of York, UK, where he was awarded a university prize. He stayed at the University of York for a further three years to do a PhD in the area of audio, voice and singing analysis with real-time graphical feedback. After moving to Hong Kong, Dr Rossiter was a Research Fellow at the Chinese University of Hong Kong before moving to the Hong Kong University of Science and Technology, where he specializes in Internet and multimedia technologies. He was conference organizer and Editor of the Proceedings for the 25th International Conference on Computer Music. He has twice been awarded a School of Engineering Award for Teaching Excellence.

Dr Wu Siu-fan (developer of previous version)

Dr Wu Siu-fan received both his Bachelor of Science (Honours) in Physics/Microcomputing and PhD in Electrical and Electronic Engineering from the University of Surrey, UK. His doctoral research on the application of motion compensation to HDTV was sponsored by Philips Research Laboratories. He then worked as a research scientist in Canon Research Centre Europe on sound field visualization and digital signal processing. His teaching career started as a lecturer in Singapore Polytechnic, and he is currently a senior lecturer in the Institute of Vocational Education (Lee Wai Lee) in Hong Kong.