Tokyo Hotel

Rendering competition 2006/2007
Jan Hendrik Dithmar and Pascal Gwosdek


Red/Blue anaglyph.
Extra view.

Tokyo Hotel.
Our image submission.

360 degrees.
Extra view (interactive).

Chapter one: Introduction

On Honshu island, in the prefecture of Chiba not far from Tokyo, mountains arise over the widths of the Pacific. Here, remote of everyday life in the large cities, vacationists enjoy their days in little hotels alongside the rivers flowing through the valleys. One of them is especially famous for its tranquility, that is why many business people from Tokyo and around come and love to enjoy their holidays in this hotel which is hence called Tokyo Hotel by the mostly rural residents of the village.
Entering one of the commodious suites over a bridge made of glass with koi carps swimming around in a cragged mountain landscape, a traditional meal is already arranged on a rice straw mat enlightened by sun beams glancing over the nearby peaks. With maki-zushi and sake, the day goes by rapidly and will soon end smoking the kiseru in the fading light at dusk.

Chapter two: A home of joy and sorrow

This oasis of silence was designed and created by two well known 3D architects from Germany: Jan Hendrik Dithmar and Pascal Gwosdek. Living far from the civilization, never been to Japan before and having little idea what life in Japan is about, they were almost predestinated to take over this task. Almost.
Fortunately, there are still people telling them that Japanese smoking pipes are different to those in Western Europe. Namely, these are the guys at 3dchaya.com, who constructed utilities, furniture and the room itself in every nut, bolt and screw.
The two constructors then began with cutting a large hole into the floor, in which they inserted their self designed fish basin. To observe the animals in detail, they designed a bridge made from pure glass, which is of course hard to keep clean when being crossed several times a day, but which looks really cool. It just demonstrates the way some architects, including these two, think: Build it for the final picture, not for everyday life.
Having finished the rough work, the fish tank was flooded with water, people from 3dplants.com sponsored a plant then standing around in one corner and the zoologists from toucan.web.infoseek.co.jp were that happy with the way Tokyo Hotel developed so that they immediately sent three kois from one of the best growers in Japan.
After the fish had collided with each other several times due to the dim atmosphere, animal liberationists asked to install two lamps to illuminate the side of the room which is not lighted by direct sunlight falling into the window most of the day. For meditative reasons, a taiko drum must also not be missing, situated in the corner of the room. The commode beneath contains everything needed to arrange food, like the rice provided in the rice pot next to the mat, in a hormonized way. To freshen up before going to one of the famous small traditional theaters around, a small mirror and chair are available, which can optionally be folded and put away if the situation requires it. A valvet pillow on the floor invites to sit down and smoke the kiseru. Relaxation and harmony are the basic commandments of Tokyo Hotel.

Chapter three: Dangerous rays at lunchtime

At lunchtime, mystic effects regarding the appearance of the world were taking place. The whole area consisting of 77669 triangles was contermined with rays and radiation of immense intensity, with 10x10 stratified random supersampling. Because of this threat, everbody but a single photographer escaped from the scene illuminated by four rectangular and eight point lights, of course except for the koi carps, begging him for food. Afterwards, nobody knew exactly what he was doing there, perhaps he was simply there with his pocket cam because Japanese tourists with pocket cameras are everywhere. Who knows. What is known though is that he reported the effects taking place, simulated by ten nodes of 2400 MHz and 2GB of RAM within ten hours of computation:

Advanced Camera Properties

Depth of Field

The guy must have known before that something strange will happen, as he installed a focussable objective onto his camera. Moving the ring up and forth, he was then able to focus several objects within the scene, while those in front of and behind that point appeared fuzzy. While he focussed the plant, he realized that his lens was responsible for this effect, because rays illuminating one pixel of the film are intersecting in a point in the focal plane, but create a frustrum before and after, as they hit random points on his lens. Are more than one ray hitting one pixel, their contribution to the image is averaged which, for the limit, adds up to a circle of confusion.

Examples:DoF Animation, DoF 1, DoF 2, DoF 3, DoF 4, DoF 5, DoF 6
Code:DepthOfFieldCamera.hxx

Stereo Cameras

Japan is famous for its high precision products, and so is this man. He realized that in brain, a 3D image of a scene is created because of the two eyes seeing different perspectives of the same scene. So he got an idea, digged out his color filters and took two images in eye distance, one with blue and one with red color filters. At home, he developed them in an overlapping way, such that blue and red version are put onto one photo. As he put on his red and blue anaglyph glasses, he was surprised about the results.

Examples:Anaglyph image of the scene, The balls scene in 3D, Stereo Mountains
Code:MicroTrace.cxx, DepthOfFieldCamera.hxx, PerspectiveCamera.hxx, defines.h

360° Camera

The photographer could not get enough of his activity and shot a 360° image of the inside of the fish basin. Distrustfully, the kois regarded the silver ball hung into the water... This special sort of water proof camera moves 360° around the upright axis while scanning 180° from top to bottom each time. The resulting image looks quite distorted, but back at home, he asked Helmut Dersch who developed a Java applet, PTViewer, for him and other fanatics to view such images in a satisfactory way.

Examples:360° panorama view
Code:SphericalCamera.hxx

Surface Shading

Physically-Based Surface Models

In his report, the man mentioned the nice way objects looked. All surfaces were displayed as Christophe Schlick has described it in his paper, referring to Cook and Torrance and own approximations. Materials with one or two layers are illuminated correctly, according to the normals of the regarded surface. This way, metals as well as fluids or diffuse objects look like in the real world, i.e. outside the hotel with its mystic effects.

Examples:Schlick Shader Example (Balls scene)
Code:SchlickShader.hxx

Reflective and Refractive Transparency

While he was still amazed of his environment, he realized that the bridge he was still standing on is transparent by filtering the objects behind in a slight blue, as this is typical for window glass. He glances at the water - it is also transparent, as are the sake bottles. The sake bottles? Well yes - just for the sake of sake, they are also transparent. The bowl beneath, in contrast, is mirroring the rice straw mat. As he moves around the pool, he sees the bridge mirroring its environment as well, but depending on his viewing angle. Thinking about the underlying Schlick approximation for the Fresnel term, he bends down to the floor.

Examples:Transparency and Reflection (Balls scene), Underwater view (360°)
Code:SchlickShader.hxx

Procedural Shading

The floor looked as if the wooden tiles were naturally grown. No plank repeats within the whole room, as an entirely procedurally generated bumpy surface. The darker regions of the wooden structure comes out of the plane due to denser material properties. No adjacent planks show the same pattern, as the designers of Tokyo Hotel required the wood to be grown in three trunks, cut into planks by the magical wizards of math and had gaps added by the gods of geometrics. The trunks themselves were grown in the gardens of Perlin and had been watered by self produced, twisting random numbers from Mersenne.
He looked around, searching for bitmapped texels, which he could not find. No big thing, you might say, Texel is in the Netherlands and not in Japan. Well yes. However, the true reason for this observation was that each and every non-unicoloured item in Tokyo Hotel is procedurally shaded, from the wooden tiles over granite from the pool, the kois, the rice straw mat, the walls, the paper of the lamps and the hight textures of mountains to the wooden bars at the walls.
Additionally, several things were procedurally bump mapped, like the rice straw mat, the soil within the flower pot, the water or the wooden tiles.

Examples:Wooden balls, Wooden tiles, Granite
Code:ProceduralCarpet.hxx, ProceduralGranite.hxx, ProceduralHeightTexture.hxx, ProceduralPaper.hxx, ProceduralWater.hxx, ProceduralWave.hxx, ProceduralWoodTiles.hxx, ProceduralWood.hxx

Modeling

Fractal Geometry

Being staggered, he gazed at the kois swimming around as if nothing has happened. The fish surrounded a rock on the ground of the pond and stopped at another, grazing it pleasurably. At this moment, the photographer realized the fractal mountain structure rising into the water basin. Appalled, he looked out of the windows - the mountains inside the water were a model of those the sun was more and more going to hide behind. Amazed, he shaked his head, while his view sticked one more time to the border of the fish basin.

Examples:Fractal mountains with height texture (and DoF), Ground of the pond (360°), Stereo Mountains
Code:FractalMountain.hxx

Advanced Light Transport

Distributed Ray Tracing of Glossy Reflection

He shivered seeing the shimmering granite floor near the lamp and realized that all this glossy reflection must be caused by the light falling onto the surface and being distributed away in terms of the BRDF. He felt queasy facing this staggering scene and turned around escaping from Tokyo Hotel as fast as possible, just like boys leaving their girlfriend because of her listening to 120dBs of Tokio Hotel.

Examples:Glossy reflection and refraction
Code:SchlickShader.hxx

Experiments

Photon Mapping

While he was running out of the house, he recognized the shadows of two persons from the corner of his eyes. Carefully turning his head, he was scared when he realized that these scientists standing on top of a moutain were nobody else then the architects of Tokyo Hotel: Jan Hendrik Dithmar and Pascal Gwosdek, looking at him with the most evil grin one can imagine. But it was not them which he was frightened of - no, it was the oversized photon cannon one of them shouldered.
What happend afterwards went into history as the most despiteous battle of human existence. Developed in the dark cellars of the laboratories, tested on millions of innocent objects, the photon cannon was the most formidable weapon of the northern, the southern and even the western hemisphere. The eastern one not to forget... - It began to shoot.
The lonesome photographer ran for his life. The cannon shot for the sake of its existence. Days went by.

In each and every possible test scene, the cannon had proved to be worth its money. Dices died and caustics were caused to stick. However, the cannon had one weak point: The photons got lost in the widths of Tokyo Hotel. Ironically enough, the same thing that caused near-death of two programmers should in the end save the Japanese's life. The scientists stopped their experiments after realizing that a world without weapons looks far better than one filled with hate and anger and too less RAM to play around with enough photons following their initial approach - and decided with a heavy heart to stop any further researches in this area, not introducing it as contribution to the construction of Tokyo Hotel. In a last step, they decided to publish some of the laboratory tests to fix their insights for coming generations.

Examples:Indirect illumination (Dice scene), Indirect illumination (Balls scene), Caustic
Code:SchlickPhotonShader.hxx, SchlickPhotonDistributor.hxx, Photon.hxx, PhotonDistributor.hxx, PhotonHeap.hxx, PhotonKDTree.hxx

Subsurface Scattering for free - a naive approach

The poor guy was short of breath when he reached FLT_MAX - the redeeming border of the scene. There he met an old friend, Barney. Something was different, yes, Barney was glowing. The brutal scientists made some really abnormal experiments with him: They approximated Subsurface scattering for certain special applications out of an waste product of photon mapping. Instead of throwing away occluded parts of the radiance estimate stencil, these parts were reintroduced as a self-glowing, weighted by a configurable parameter.
This approach does of course not work for all cases of application and is not physically based in any way but - it actually looks fairly cool. However, due to these reasons, this code stayed an experiment as well and did not move into Tokyo Hotel for a longer stay.

Talking about all the different things happening in that stupid location to spend one's holidays at, Barney and the photographer went straight towards NaN, the shores of infinity.

Examples:Comparison of Pseudo Subsurface scattering with equal illumination - parameters 0.0, 0.1, 0.25 and 0.5, respectively
Code:SchlickPhotonShader.hxx

Chapter four: Winter heat

Day turns to night, winter turns to spring, and clusters turn to furnaces. The room is enlighted brightly and kois are frolicking around, while several nodes in a tight box enjoy their leisure time again. Many thanks to the PhysTheoChem group of Prof. Dr. Michael Springborg for providing computation power! Without your help, nights would turn into days, spring into summer and the hope for credit points into a mid summer nights dream.

Chapter five: The bad touch

To the end of the story, there remain two things to be said: