Research
[Research] TUIs in Sci-Fi Movies
This project aims at examining how tangible systems in Sci-Fi movies, being free from current technological constraints, illustrate Tangible User Interface (TUI) concepts in the academia. The goal is to bridge the gap between these two worlds (fictional and real), where TUI researchers and designers can draw inspirations from fictional systems to design more inclusive ones, and speculative fiction creators to apply TUIs to design interactions and interfaces that appear effective, socially-situated, and familiar to the audience. |
[Research] Around-Device Interaction with Magnets
This project makes use of the magnetometer in mobile devices to measure changes in magnetic field cause by moving a magnet. To further investigate its impact, I've conducted a study using an app, and found that using this setup as a game control produces similar performance as touch and provides good user experience. I've made the code written in Unity3D available via this [link]. |
[Research] Websocket and Processing
This project makes use of the new Websocket technology (an internet protocol for communication between a webserver and a browser), but instead of using off-the-shelf scripts I've built the server side almost from ground up. I've made the code written in Processing available via this [link]. |
[Research] Dynamic tangible user interface palettes
This project is a collaboration with the User Interface & Software Engineering Group at Otto-von-Guericke University, Magdeburg, Germany. The idea is to use the physical space and recognizable objects to augment graphics design using a digital tabletop. The palettes are light-weight cardboards (b and c) being spatially tracked, so their positions can be used as an input parameter. Anoto pens (d) are used for fine inputs. |
[Research] Communication between collocated players in a shooting game
This project investigated the ways collocated players communicated with each other during a co-op shooting game. Several strategies were used to quickly establish mutual grounding of the situation, e.g., the location of an enemy/item. Some design recommendations were proposed to better support this genre of games. |
[Research] In-situ study of a mobile command centre for large interactive displays
This project investigated the feasibility of installing a large interactive display inside a mobile command centre to better support emergency responses. The highlight of this project was an in-situ field study was conducted to better understand how the technology could fit in the day-to-day operations -- a crucial point in the Contextual Inquiry design methodology. |
[Research] My first DIY multitouch tabletop
This project is the first thing I did when I started my PhD program at Systems Design Engineering in University of Waterloo. It used the FTIR phenomenon to detect multiple touches on the surface for a multitouch application. A good project for me to understand the ins and outs of this technology. |
Fun+Development
[Development] Weather Block
This project involves programming a small computer board to access local weather and show it on a small display. It is inspired by another project I saw where a similar setup is used to build a mini game. |
[Fun] 2016 Christmas Card
An AR Christmas Card app I made for the year combining 3D modeling, Unity, and AR. I've put in some technical details about this project so you can make your own AR app. |
[Fun] Cardboard Ironman
A fun afternoon project making the helmet of my favourite Marvel superhero: Ironman, at almost zero cost. Pretty happy with how it turned out. |
[Development] VR on the Cheap
Have a mobile phone? Have a controller lying around? You can make a VR app at almost no cost! If you have some experience in using Unity 3D to make a 3D game scene, you basically can make it in a few hours. Check out what you need to make this super cool thing happen. |
[Fun] Revisiting 3D Scanning of Oneself
A series of steps to 3D scanning a person using a MS Kinect, and eventually creating a bust sculpture rendering using Blender. |
[Development] Augmented Business Card
A demo of using Vuforia SDK and Unity to augment a business card. Some discussion on what can be achieved using this combination. A step-up from my previous project of 3D scanning and creating models of favorite objects. |
[Fun] Low Poly 3D Modelling
A discussion of my latest adventure into the 3D virtual world. It's quite thrilling to be able to create my own "art". Also included some tips in case you'd like to create something similar. The long-term goal is to equip myself with the skills of 3D modelling virtual objects for mixed reality research. |
[Fun] 3D Modelling Your Favorite Objects
A step by step guide to scan and create a 3D model of your favorite objects, even yourself... if you can hold still for a few minutes. All you need is a mobile device with a camera, a computer, and internet connection. All the software used here is free. |
[Fun] The MySphero Project
A little project based on an article from the Myo's company blog. They only mentioned how the controls were designed, with no mentioning of the code or how it was actually implemented. So I figured that I might develop it myself. Code is included for those of you who want to implement their own. |
[Fun] 2014 Christmas Card
For some reasons every year I would make my own Christmas card for my friends and family. And each time I would experiment with a new format. This year I decided to combine a photo and some audio clips. Enjoy! |
[Fun] DIY Oculus Rift
The Oculus Rift (a head-mount display providing stereoscopic view) has become a hot topic these days. But there is only a limited number of them available and while it's not ridiculously expensive, it's not that cheap. This project is to build a poor-man's version using a smartphone. Cost of material is about $3 not including the lenses. |
[Development] Processing on Android, multi-touch and device orientation
This project is an exploration in developing applications in Android devices using the Processing language. Processing is a great language to quickly develop graphical applications for PCs, but it also has an Andoid mode allowing you to develop apps that run in an Android device. Requires some finesse because it's a quick but unconventional way. |