Projects

My research and software development is generally within the areas of computer graphics, physics based animation, and computer games. This page shortly presents some selected projects I am involved with and references to selected publications. See my full list of publications.

Digital Prototypes

2010 - ?
Project Manager, applicant and active in R&D. Accurate and predictive rendering in cooperation with DTU Informatics, funded by the Danish Agency for Science, Technology and Innovation, total budget of 8.835 mill DKK (7.525 mill DKK funded by application)

Consultancy and software development in Lego Universe and Lego Digital Designer

2009 - ?
Leading a R&D team at the Alexandra Institute helping with Lego Universe (server rendering and geometry optimization) as well as Lego Digital Designer (advanced graphics effects).

Massive Data - Processing, visualization, and interpretation

2010 - 2012
Project Manager, co-applicant and active in R&D, funded by the Danish Agency for Science, Technology and Innovation, total budget of 11.7 mill DKK (8.1 mill DKK funded by application) 2010-2012

Shaders in Unity3D

2010
Consultancy and software development for Unity Studios, Denmark (100.000 DKK)

High quality rendering of soft shadows and materials in furniture

2010
consultancy and software development for Intertisement, Denmark (100.000 DKK)

Advanced computer graphics in Lego Digital Designer

December 2009 - ongoing
Consultancy and software development for Lego Systems A/S, Denmark

Custom soft-tissue physics engine for MitraClip trainer

2010 Consultancy and Software development for Morphologica, MGHI, Hong Kong.

(AIGE) Alexandra Institute Graphics Engine

December 2008 - 2009

Combining state of the art (and beyond) realtime graphics techniques with accurate modelling of light and material to achieve a unique realistic approach to design of structure, light and material.

Wisdom Tooth Simulator

July 2008 - ongoing
In a pilot project we are determining the plausibility of designing a simulation of wisdom tooth extraction. On the technical side we will combine volume and polygon rendering with bone drilling and soft tissue simulation. The project is a cooperation with The School of Dentistry in Aarhus.

Innogate - Innovation is the game

August 2008 - ongoing
Innogate is an interdisciplinary project on the use of computer game technologies in other areas of business. At the Alexandra Institute we focus on innovative use of computer game technology, primary realtime graphics, within the broad area of "buildings". See http://innogate.dk/

Digital Urban Living

March 2008 - ongoing
keywords: interaction design, iphone, camera tracking

As part of the center for Digital Urban Living I am project manager for the research and software development at the Alexandra Institute. Specific project activities are still in development, but we will look at technology such as camera tracking, iphone as interaction and visualization device, wii-mote as interaction device, and computer game development.

Aarhus by Light

2008
keywords: media facades, OpenGL, camera tracking

Aarhus by Light is a project on media facades in which a huge 180 m2, non-square LCD screen was attached to "Musikhuset Aarhus" to show animated creatures that interact with people through camera tracking. I was involved in developing the concept and functioned as a consultant on programming graphics and tracking.

For more detail see: http://www.aarhusbylight.dk/

See also this video at jp-tv: http://jp.dk/webtv/aarhus/?movieId=15400&Id=1259495

OpenEngine.dk

2007 - ongoing
Keywords: Course Material, Game Engine Architecture, OpenGL, GLSL, C++, Patterns, Scene graph, BSP-tree, Quad-tree, Physics, AI

I have lead the development of a framework (http://www.OpenEngine.dk ) for teaching computer game programming. The initial development team consisted of Ian Zerny, Carsten Nørby and Christian P.V. Christoffersen. The reference code-base is in the form of a complete game-engine. The framework is divided into chunks according to the topics of the weekly lectures - allowing the students to work on progressively larger code-base.

The framework has been used in my ComputerGameDevelopment course in 2007, see http://www.aula.au.dk/courses/CGDF07.

The framework is now an open source community driven project, where students of my course have taken upon themselves to extend and use the game engine.

Using the OpenEngine.dk framework I have also lead the development of an artificial insemination simulator for the Steno Museeum.

Surgical Simulation of Congenital Heart Surgery

2003 - ongoing
keywords: Research, OpenGL, Shader 3.0, GPGPU, QT, C++, Offset-mapping, Spring Particle, Finite Elements, Haptics

Surgical simulation presents a virtual environment where surgeons can train surgical procedures. Our research has focused on the development of faster calculation of deformation and visualization. We seek to simulate very complex morphology in real-time.

The clinical application for the project is congenital cardiac diseases in cooperate with Ole Kromann Hansen, MD and Vibeke Hjortdal, MD from the Department of Cardiothoracic and Vascular Surgery, Aarhus University Hospital. For the data acquisition we work with Gerhald Greil, MD from University of Tübingen.

See a video (SIGGRAPH 06) of the simulator: Siggraph06 46MB.wmv

My PhD [Mosegaard2006Phd] in Computer Science was focused on this project.

in [Mosegaard2005] and [Mosegaard2005VR] the GPU accelerated algorithms for calculation of tissue deformation was presented. In [Mosegaard2005Mapping] a general visualization technique was presented while haptic interaction was presented in [Soerensen2006Haptic] and [Mosegaard2007Smooth]. Our project has been presented at Siggraph in [Sorensen2005Video], [Mosegaard2006] and [Soerensen2006Emerging]. We have published two clinical journal paper [Soerensen2006InteractiveCardiovascular] and [Soerensen2008], as well as a clinical video [Sorensen2007].

Cavi project page

Virtual Ear Visualization and Drilling Simulation

2006 - ongoing
Keywords: Research, Volume Rendering, Ray Marching, Haptics, C++, QT

This project is concerned with real-time computer simulation of surgical procedures in the ear, in which a surgeon drills into the temporal bone to gain access to the middle or inner ear. The purpose of this simulator is to support development of anatomical insight and training of drilling skills for both medical students and experienced otologists. The visualization is based on an existing data set, “The Visible Ear”, containing a unique volume depicting the inner ear in natural colors. To achieve a physically plausible drilling experience, a Phantom Omni force feedback device is utilized. Peter Trier is the main contributor for this project.

[Trier2008], [Trier2008a]

Artificial Insemination Simulator

2007
Keywords: OpenEngine.dk, C++, OpenGL, Mediotic

The artificial insemination simulator was developed for an exhibition at the Steno Museum planned by curator Mette Kia Krabbe. The simulator was build on top of the OpenEngine.dk game engine and the Mediotic physics engine (Build by Karsten Noe and myself). Under the guidance of Ole Caprani and me three student programmers and a graphics artist implemented the simulator.

Lingoland

2001 - 2003
Keywords: Research, Macromedia Director, Lingo

We believe that one can help students to learn programming paradigms through Interactive Game Environments where the game world presents itself as a collection of distinct objects that are based the programming language. The user can interact with these entities through programming. The progress presented to the user is on one side a narrative one, and on the other side a learning progress in which the student learns something about the programming language. It is our belief that narration and learning can form a symbiosis, in which both subjects win something from the mutual relationship.

Research on Lingoland has been published in [Andersen2003] and [Mosegaard2003a].

Lingoland project homepage

Graphics experiments in Shockwave

2002

During 2002 I did a range of experiments to test the limits of graphics performance in Macromedia Director / Lingo.

Heavy glass planet

Some particles with a bright light attracted to a glass sphere. When close enough the particles form masses of light, which can even be seen through the glass sphere. If you look closely the glass sphere is deformed slightly at the edges when a light particle goes by. The particles and the sphere are implemented with sprite channels only, no imaging lingo used.

Heavy glass planet in Shockwave

Volumetric Light

I have implemented a volumetric light effect in shockwave. The position of the mouse determines the position from where the light comes. If the left mouse button is pressed you can burn (with smoke and sparkes) holes in the metal to create new areas of light. The architecture of this volumentric light algorithm is basicly to create a lot of layers of light (with perspective) and blend or add them together. The primary problem I had when implementing the volumentric light in Lingo, is the fact that there is no fast access to the individual pixels. I have used copypixels a lot to simulate the layers of light. The secondary problem was the fact that I wanted to be able to edit the areas of light realtime, this demanded a solution in which I did not preprocess the layers of light. The implementation makes heavy use of imaging lingo.

Volumetric light in Shockwave
Source code

Halftone

A halftone print is composed of a large number of very small dots of ink. The effect can often be seen in newpapers etc. In this demo you can vary the size of the dots with shift and ctrl. You can pause the demo with space. The implementation makes heavy use of imaging lingo, simpy because there are not sprite channels enough to make the number of dots i need.

Halftone in Shockwave

Motion blur

Motion Blur appears when a single frame of film is exposed while an object is moving in the scene (not to be confused with the "trail effect" often described as motion blur). The implementation basicly renders more frames than are displayed and blends these together (with a bit of optimization to make it fast enough). The effect is implemented with sprite channels only, no imaging lingo is used. Copypixels is simply to slow, this means that I cannot control the blending to the level of detail I originally wanted - but after some work with the order in which things are blended together, the effect is almost the way I wanted it (and much faster than with copypixels in Imaging lingo.

Motion blue in Shockwave
Source code

Edit - Login - Page last modified on December 13, 2010, at 07:30 PM