nus engineering
homemailrssnus engineering
hometeachingprojects & awardsresearchpublicationsnewscontact us

home
teaching
projects
research
publications
news
downloads
members
blog
contact
jobs

 

Digital Media Technologies (EE3701)


module image 2

Requires Programming Methodology (CS1101C)

Offered in Semester 2 of Academic Year 2007/08

Interactive Digital Media is a new and highly promising market, and its products and services have become increasingly popular and wide-spread in recent years. The underlying technologies have been in a continuous state of innovation since their inception. This module provides a broad view of the state-of-the-art of Digital Media. The major topics covered are: business & market environment, film production technologies, interactive TV technology, music/radio production, interactive entertainment design, mobile media technologies, human-computer interaction and user interface design, virtual reality, mixed reality, and tangible media.


EE3701 Projects

32 students took up EE3701 for 2007/8. Divided into 8 groups, each group made their choice between Tabletop or Mixed Reality projects. Below are the short descriptions of the project done by each group.

Group 1 - Multi-Touch Table (Hardware)
Group 2 - Spherical (Tabletop)
Group 3 - ID Hockey (Mixed Reality)
Group 4 - Feeding The Ape (Tabletop)
Group 5 - Paintball Game (Mixed Reality)
Group 6 - BattleTanks (Mixed Reality)
Group 7 - Mixed Reality (Mixed Reality)
Group 8 - PacMan (Tabletop)

Group 1 - Multi-Touch Table (Hardware)

Group Members:
Xu QinRu U059342N
Tang TeeTong U059412W
Chua Wei Ming Kelvin U058805L
Guo Liren U058783J

 

Back to top

 

Group 2 - Spherical (Tabletop)

Group Members:
Liu Qi U067259A
Liu Yingyu U049112H
Chang Chin Wei U059577H
Ng Huan Jin U056759B


Brief Introduction

Spherical is a game that requires 2 players to compete against each other simultaneously with no time limit.

The game will start with 1 orange goal fixed at left side, 1 blue goal fixed at right side, 6 balls (3 orange and 3 blue) moving about randomly. Each player will first decide which goal they want. To win the game, each player has to grow his own goal to 25 points, or to shrink the opponent’s goal to 0 points. Each player will start at 10 points.

When a ball of the same colour as the goal touches the goal, the goal grows by 1 point. When a ball of a different colour from the goal touches the goal, the goal shrinks by 1 point. The ball will switch colour and be deflected away once it touches a goal.

Players can interact with the balls by clicking on it and dragging it in the direction they wants it to go. (the ball will switch colour after being released).

Both players will have a fun time trying to grow and defend his own goal, and to attack the opponent’s goal at the same time to prevent opponent’s goal from growing too big.

Back to top

 

Group 3 - ID Hockey (Mixed Reality)

Group Members:
Lee Lieying Kelvin U047761B
Lim Weilun U047729J
Foo Celong Raymond U048850L
Edward Soetiono U047689M


Brief Introduction

A variation of the classic air hockey game played on a table top using multiple pen inputs. First player to score or put the puck or “ball” past the opponent’s goal 5 times will win the game. Simple and effective game rules for maximum enjoyment which is limited only by the players’ ingenuity.

Novelty
Basic game play is similar to the classic air hockey game. Each player will hit the puck or “ball” over to the other side of the table to try put it into the opponent’s goal. However, instead of the conventional “striker”, the players are able to draw visible lines on the table top to hit the ball into the opponent’s goal.  Since lines can naturally be drawn as straight lines or curves or “wigglies”, we have decided to make it part of the novelty to the game by allowing them to directly affect how the game is played.  A “ball” hitting the straight line will bounce off as per perfect collision in mechanics. However, when it meets a curve or a wiggly, it will result in the ball following the line, resulting in some interesting plays.

We have even incorporated some elements of the game in the drawn lines. The length of each line drawn is limited, so as to prevent the player from drawing long lines across the board. The line will also continually fade (i.e. grow thinner) after it is drawn and disappear after a while, to make the game more dynamic, else the player can only draw and wait for the ball to hit the line.

To further increase the dynamism and level of fun, the game is designed such that the “ball” will get progressively faster as the number of “collision” increases between ball and line. The “boldness” of the line controls the increase of the speed of the ball per “hit”. By drawing the line nearer to the point of “collision”, when the “ball” hits the thicker line, the increase in speed of the “ball” will be faster.  If the line is drawn too early (i.e. too far from the point of “collision”), the “collision” will only be with a thinner line, which means the ball speed will only increase slightly after collision. The line might even have faded away or disappear before the ball comes into contact with the line. This encourages the player to draw the line nearer to the point of “collision”, thus increasing the dynamism of the game.

“Power-up gems” are also added to the game play for the added fun element. These gems will appear on the table top at random positions at various times during the game play to add a degree of unpredictability, and thus increase the fun factor of the game. Players can aim to hit these “gems” in order to increase their chance of winning the game, but that is dependent on the skill level and intention of the player.

These gems include:

Speed Increase
Speed Decrease
Invisibility

Another additional element of fun comes in the form of base speed level. There are 2 level of gameplay - Normal and Insane, which can be selected just before the launching of the ball within the game. In the default or Normal mode, the players can to play the game at a slower pace to get a feel of how the game works and increase their skill level as they find out the best ways to draw the lines in order to win the game. Once they are more confident, they can try out the Insane level. Basic gameplay remains the same but there will be a huge increase in the base speed of the “ball”. The increase in base speed will require faster reactions from the players.


Figure 1: Launching of Ball

Figure 2: Drawing of curves with pen inputs

Back to top

 

Group 4 - Feeding The Ape (Tabletop)

Group Members:
Methajarunon Kasidit U048551A
K.Mohamed Jawith U049152R
Hishaam Saumtally NT070635W
Lim Boon Hoe U056014X


Brief Introduction

Feeding the Ape is an interactive game developed for the TableTop format. A table having interactive capacities can be used for several reasons; therefore the game can have different purpose for different users. For the younger audience, this is a game with a colourful interface, a friendly looking character (a cartoon ape) and can be imagined as an educational game. Through the monkey, it is possible to teach them what kind of food is good for them, and how they should properly eat. Grown-ups can play as well, it is a very fun to play when waiting for an order in a restaurant for example.

Design Innovation and Novelty
The aim of the game is to make use of the multiple pointing device functionality of the table top – cut and drag action. “Feeding the ape” game is designed to exploit of at least 2 pointing devices which represent knife for cutting and fork for dragging-dropping. This previously cannot be done in the single pointing device system. The game also supports multiple users.

Food pattern Recognition
The user draws the food items he likes using the mouse and the item will be displayed on screen once it is recognized. The user has the choice of drawing five different items namely banana, apple, cake, orange, fish.

Implementation
The pattern recognition is based on the movement of the mouse pixel points drawn by the user. The ink points are collected continuously for every drawing from the time mouse point is pressed down till it is released. Once the mouse button is released, a pattern recognizer is called and calculations are done to find out the pattern that the user has drawn.

Drag/Drop Fruit
The user uses fork tool to poke the fruit piece and drag it.

Implementation

  • Each fruit piece has an eventlistener - for MouseClick and MouseMove Event
  • Everytime the fruit is clicked, Drag mode is activated until the mouse is released
  • To drag, we translate the object to the mouse position based on MouseMove Event with the granularity of 1 pixel

Fruits and Slicing
The user cut the fruit into smaller pieces to feed the ape.

Implementation
Dynamically resizes the fruits when they are cut and maintain the image proportion, position and alignment. A class is created to save all different attributes of the fruit.

Back to top

 

Group 5 - Paintball Game (Mixed Reality)

Group Members:
Chu Zeng Jia (U059595B)
Ho Jeng Hong (U058825A)
Pan Yi (U059374B)
Tan Liang Yu Sebastian (U056757A)


Brief Introduction

The game is intended to mimic a game of paintball played on a field. This is a two-player game that is to be played over a network. Players will be issued with the following: playing map, player marker and 3 obstacle markers. Both players are equipped with 3 different weapons with different damages. The game will end when one player no longer has any health points or when times up.

Back to top

 

Group 6 - BattleTanks (Mixed Reality)

Group Members:
Khoo Mui Hwee (U058896M)
Soh Choon Wee (U058869J)
Yeo Daniel Lida (U059598L)
Yeoh Zhenting Ryan Christopher (U059522U)


Brief Introduction

BattleTanks is a two-player networked mixed-reality game, created for the module EE3701. The aim of this project is to allow players to control their tanks in a more intuitive way than the conventional keyboard-mouse interface, using tangible objects to control movement and aim instead. Each user has a white arena board with fiducial markers on it – this is used as the game arena where the tanks duel. Each user also has a cube with a fiducial marker on each side – this controls the user’s tank position and aim. The user’s tank always moves to where the user’s cube is positioned, and aims according to how the cube is oriented. In this way, wherever a user puts his cube and whichever way he aims, the tank will follow. This intuitive gameplay interface allows players to learn to control their tanks with a very gentle learning curve. Firing the tank is as easy as knocking the cube on the board.

Back to top

 

Group 7 - Mixed Reality Pool Game (Mixed Reality)

Group Members:
Lai Yongming U047720E
Wang Siyong U059487E
Teo Yuwei Lester U056755E


Brief Introduction

This mixed reality game we are developing is essentially a pool/ snooker/ billiards mixed reality game. It is designed such that it gives the user the feeling that he is really playing pool in real life. He aims by rotating, tilting and moving the designated marker, changing the view of the pool table relative to the white “striker” ball. Finally, once he’s satisfied, he can use a real pool cue to simulate the motion of hitting the white ball, such that the marker is covered when he pushes forward. This will then cause the white ball to be hit, and the game to begin. What we are trying to achieve for this mixed reality pool game is to give the user a feel of playing the game in real life, such that he not only has fun playing the game, but he also gains a whole new experience without having to be playing the actual game itself.

 

Back to top

 

Group 8 - PacMan (Tabletop)

Group Members:
Le Nguyen Phuong Thi U059292X
Nguyen Hoang Phuong Nam U059336N
Nguyen Viet Trung U048545A
Tan Yi Siang U059329A


Brief Introduction

This project aims to implement the classic Pacman into the tabletop platform. The tabletop Pacman is different from the classic Pacman, with innovative features added in to the game play. This initiative would fully utilizes the tabletop platform to provide new interactive experiences to the player.

Game Logic

  • There are 2 players, corresponding to yellow and green Pacman. Each Pacman will be given a specified number of lives.
  • The objective is to score as much as possible, while preserving lives.
  • The game will terminate after a default duration, or whoever dies first will lose.
  • After the game default duration, player with higher score wins.
  • Each player will be able to draw walls using a pen:
    • To avoid ghost attack or avoid bad nuts.
    • To trap the opponent.
    • To lead Pacman to eat good nuts.
  • Users drawn wall will disappear after 5 seconds.
  • Types of Nuts

Type

Image

Description

Bomb nut

Kill all ghosts, pacman will have some time to eat nuts

Chili nut

Pacman becomes crazy with super speed.

Normal nut

Increase score by 1.

Energy nut

1. Increase number of walls that can be added.
2. Pacman can eat ghost in a duration of 5 seconds, a score of 2 will be awarded.

Back to top



Innovation Program (EG2604)

About Innovation Program

Offered in Semester 2 of Academic Year 2007/08

The Innovation Program (IP) is designed to provide undergraduates with an experience of engaging in a semester-long innovative activity. IP is an alternative option under Enhancement Programs and therefore is a formal part of the B.Eng. degree program at NUS. Successful completion of IP earns the participant 4 Modular Credits in this respect. Prizes will be awarded for the best group/student of the semester.

The students taking part in IP will engage themselves on a hands-on basis to create an outcome that has a practical significance. Students themselves, under the guidance of a group of mentors will choose the subject of this engagement. The mentors will monitor the progress, assist in project development, and determine the suitability of each student's effort for awarding the points on completion.



IP's Background

IP is a version of an existing scheme that had been conducted annually since 1993 at certain primary and secondary schools in Singapore. That original program was designed and developed by A/P Alwis together with the Gifted Education Branch of the Ministry of Education. A/P Marcelo Ang and A/P Loh Han Tong of the Faculty of Engineering and Dr Chew Tuan Chiong, CEO and Director of the Singapore Science Centre made valuable contributions to the development of that program in its early years.


IP's Benefits

  • Students will learn that the existing forms of schemes and procedures in engineering practice can be successfully challenged.
  • Students will learn to appreciate the strengths of existing engineering schemes and procedures.
  • Students will learn to think critically and creatively.
  • The program will provide an opportunity to academic staff and alumni to contribute to the broad development of the students.


The Process

  • Finding a Problem: We use what is known as the "method of irritation." Finding something that is irritating or that can be considered as a shortcoming, is the basic objective here.
  • Exploration of the "vicinity" of the problem by finding out "who, what, why, where and how."
  • Formulation of a problem that has the potential of being solved or a dream that can be achieved to a reasonable extent within the resources available.
  • Going through a period of idea generation, evaluation, peer review and incubation.
  • Development of a prototype or a demonstrable system.
  • Presentation to convince others of the value of the proposed idea, procedure or device.


Assessement Criteria


Effort

  • Students must have completed at least 65 hours of work
  • Students should have a log book for documentation of all activities related to Innovation Program
  • Each row of the log sheet must be signed by tutor at each row and the completed log sheet must be submitted to tutor at the end.
  • The hours indicated will be moderated by the group of IP mentors/tutors.

Achievement

  • Project awarded a grade of A+,A, etc., consistent with the regular modules

To get an “S” or "CS" grade, students must

  • Have completed at least 65 hours of work
  • obtained an achievement of at least grade B-


Innovation Program Semester 2, AY2007/2008 Schedule

Registration

  • The program is open for registration from 02  to 27 January 2008.  To register, please click on "Registration" at the left panel of this page.
  • Students are allowed to drop the module registered within the following dates:
    • Drop without penalty: 02 to 27 January 2008
    • Drop with 'W' (Withdrawal) grade: 28 January 2008 to 02 March 2008
    • Drop with 'F" (Fail) grade: 03 March 2008 onwards
  • Confirmation of Registration: Limited to first 52 students who registered.  Registration is confirmed on a first-come-first-served basis.

Venue and time for Student Presentations, Peer-evaluation, Talks and Seminars

  • Mondays, 16:00hrs - 18:00hrs
  • Room : E1A-03-11

Program Schedule (subject to changes)

Week Date Program Lecturer
Week 1
14-Jan-08
11:00 - 13:50
Introduction: Innovation Program (IP) Briefing, Problem Description
A/P Marcelo Ang
Week 2
21-Jan-08
11:00 - 13:50
Workshop: Problem analysis, Idea Generation Methods, Critical Evaluation
Dr Subramaniam, Dr Chew
Week 3
28-Jan-08
11:00 - 13:50
Draft Session 1: Problem description
Students
Week 4
1-Feb-08
16:00 - 18:00
Draft Session 2: Problem Analysis and Refinement
Students
Week 5
15-Feb-08
16:00 - 18:00
Draft Session 3: Ideas Generated / Possible Solutions
Students
Week 6
22-Feb-08
No Class

Mid-semester Break: 23 February 2008 – 02 March 2008

Week 7
7-Mar-08
16:00 - 18:00
Draft Session 4: Final Idea /Solution
Students
Week 8
14-Mar-08
16:00 - 18:00
Draft Session 5: Progress Update
Students
Week 9
21-Mar-08
16:00 - 18:00
Workshop: Innovation Case Studies
A/P Marcelo Ang
Week 10
28-Mar-08
16:00 - 18:00
Workshop: Intellectual Property Protection
Beyond just a good idea - Commercial Success
Dr Peter Kew, Intro
Dr Steven Zhou, ECE
Week 11
4-Apr-08
16:00 - 18:00
Draft Session 6: Progress Update
Students
Week 12
11-Apr-08
No Class
Week 13
18-Apr-08
16:00 - 18:00
Innovation Program Fair (poster presentation)

Back to top

 

© IML 2006-2008. All Rights Reserved