Second Reality

Logo of the Demo Second Reality of the Future Crew.

Unreal ][ - The 2nd Reality (later known as Second Reality), is an IBM PC compatible demo created by Future Crew. It debuted at the Assembly 1993 demoparty, where it was entered into the PC demo competition, and finished in first place with its demonstration of 2D and 3D computer graphics rendering.[1] The demo was released to the public in October 1993. It is considered to be one of the best demos created during the early 1990s on the PC; in 1999 Slashdot voted it one of the "Top 10 Hacks of All Time".[2] Its source code was released in a GitHub repository as public domain software with a "unlicense" license[3] on the 20th anniversary of the release on 1 August 2013.[4]

Demo description

Many techniques used by other demos, including Future Crew's own earlier work, were refined and reused in Second Reality. The demo had a soundtrack of Techno music composed by Skaven and Purple Motion using ScreamTracker 3. The degree of synchronization of the visuals with the music was highly impressive for its time.

Introduction

Introduction

First the introduction plays, demonstrating text rendering on a background. After that is done, several ships appear and fly away from the camera, demonstrating 3D rendering. After some distance the ships disappear, sending out a shockwave (reminiscent of the Praxis explosion effect seen in the film Star Trek VI: The Undiscovered Country). The screen fades to display a rendition of Wendigo, at which point Purple Motion's main musical score for the demo begins. The image then flattens and falls horizontally to become a 3D, polygonal checkerboard.

Bouncing polyhedron

Bouncing polyhedron

The music has now finished its introductory notes at this point and the first melody starts. Next a glenz (additively blended) polyhedron appears and bounces on the checkered surface, in perfect timing with the orchestra hits in the score, demonstrating 3D rendering and realtime mesh deformation. After a while another larger polyhedron appears and the smaller polyhedron begins bouncing inside the larger.

Tunnel

Tunnel

The next scene is a winding, fluid tunnel built up by discrete points that move towards the camera. This creates a feeling of rushing through the tunnel for the viewer.

Oscillating circles

Oscillating circles

The tunnel fades out into some oscillating circles which soon fade into the next scene.

Moiré patterns

Moiré patterns

A scene that could be described as a light show. The scenes consist of multiple moiré patterns interacting. Moiré patterns were quite popular in demos of that time.

Creature

Next an image of Ulik rolls in from the right, and fades away. Some leaves and water are displayed, along with text characters floating downstream. The text says "Another way to scroll" and is an example of a scroller, which was present in most demos of the time.

Magnifying and rotating head

After the text has floated by, again the scene changes to display something that resembles an evil looking human head with a pentagram engraved on his forehead. A sphere comes down from the top left corner simulating the below surface being refracted through a magnifying sphere. This is where the soundtrack utters the cult phrase "I am not an atomic playboy", quoting Vice Admiral William H.P. Blandy's remarks before the Bikini nuclear test. The sphere vanishes down in the lower right corner and the camera begins to spin while zooming in and out to reveal a repeating pattern of heads, demonstrating a technique known as rotozooming. The camera then falls down and bounces back up on the surface twice, after which the scene again fades out.

Plasma Effect

Plasma Effect

When the image fades in, the camera is placed close to a surface changing texture every time. This is a continuation of their work in Unreal where they first introduced the 'unreal' plasma effect.

Colored spinning cube

Colored spinning cube

After a few surfaces have been displayed, a cube with animated surfaces attached comes up and spins around while translating towards and from the camera.

Vector Balls

Vector Balls

After a while this scene fades and many small vector balls fall onto the screen and begin bouncing off the ground and morphing into various spiral patterns. Because of a bug, this part will crash if the demo is installed in a directory with the complete path length exceeding 30 characters.

Raytracing

Again there is a fadeout and a fade in, this time we are looking at a scene with two spheres, the words "Ten seconds to transmission" are spoken (sampled from the 1989 movie Batman),[5] and a sword starts translating towards the camera. The spheres will display a reflection of the sword as well as a reflection of the aforementioned reflection in the other sphere. The scene was rendered using Future Crew's homemade raytracing software.

Water

Water

As the scene changes again, this time the image rendered will be of a surface changing shape, similar to that of water. This scene is rendered using a Voxel landscape rendering technique.

Bouncing bitmap

After this, an image will fall in from above, depicting a rider on what appears to be yet another fantasy creature. The image will hit the ground and bounce up while behaving like jelly.

The image filename is named "ICEKNGDM.LBM" ("Ice Kingdom Interleaved Bitmap"), Future Crew call the image "Ice Kingdom";[6] and it is an artistic rendering created by a member of Future Crew, but based[7][8] on an painting used in a Rumple Minze alcohol advertisement from the early 1990s.[9]

3D spacecraft fly-through

3D spacecraft fly-through

In the next scene, a craft reminiscent of the TIE/Advanced fighter from Star Wars: A New Hope flies around in a large 3D city, leaving it and heading up right over the text "Future Crew". This was later redone by some of the previous members of Future Crew working for Remedy Entertainment as part of the benchmarking demo Final Reality. Flat shading is used for the buildings and Gouraud shading for the smooth trees and lettering at the end.

Future Crew Logo on nuts

Future Crew bitmap

The image fades out and the final scene fades in, an image of two nuts with the text "Future Crew" written on them.

Hidden part

The demo can be started with a single character command line argument "2" through "5" to start from any of the later four parts.

For another part that its introductory text calls "just an experiment" start the demo with a command line argument of "u". The screen will start filling with ever more stars warping towards the screen.

Technical characteristic

In 2013 a reverse engineering analysis of SR with the now available source code revealed a design which is built around two characteristical demoscene paradigms: Teamwork and Obfuscation.[10]

Internally the demo consists out of 23 separated parts which allowed independent, parallel development and free selection of programming language (assembly, C and Turbo Pascal) and development tools.[11]

The analysis of the sourcecode also revealed that the long-standing and popular speculation that SR uses its own memory manager which accesses the MMU directly is not true; in fact SR uses standard DOS memory management functions.[12]

Running the demo

The demo runs best on an Intel 80486 PC with a Gravis Ultrasound or a Sound Blaster Pro (or register-compatible clone). As the demo had in the original released version a slow down bug, a patch was released later.[13]

While the demo code remains freely available on numerous Internet sites and is now hosted with sourcecode on GitHub, it is difficult or impossible to run Second Reality directly on a modern PC. The demo accesses video and sound hardware directly (using its own built-in device drivers) which is incompatible with current OSs, and many of the timings in the demo do not scale up to modern CPU speeds.

To run this demo (with minor glitches) on a modern machine running a modern OS like Windows or Linux, one can use DOSBox.[14] DOSBox is capable of emulating the exotic video modes and the Gravis Ultrasound preferred by Second Reality, and can be configured to the 33 MHz recommended on the demo's configuration screen for optimal viewing.

Legacy

Later uses of soundtrack

Remakes

The legendary state of this demo inspired a lot of people to do their own remixes of the show. The most popular ones are the following:

References

  1. "Assembly 93 results". pouet.net. 2011-01-02. Retrieved 2011-01-02.
  2. "Slashdot's "Top 10 Hacks of All Time"". slashdot.org. 1999-12-13. Retrieved 2010-12-25.
  3. github.com/mtuomi/SecondReality/blob/master/UNLICENSE
  4. Smith, Ryan (2013-08-01). "Happy 20th Birthday Second Reality". Anandtech. Retrieved 2013-08-21.
  5. http://movie-sounds.org/fantasy-films-sound-bites/batman-1989/ten-seconds-to-transmission
  6. "ICEKNGDM.LBM".
  7. "FCINFO12.txt" (included with Purple Motion's JOURNEY2).
  8. "DEMO NEWS #24". Demonews. 1993-10-05. Retrieved 2015-12-17.
  9. "Rumple Minze: White Magic from the Black Forest" (advertisement painting).
  10. Sanglard, Fabian (2013-08-16). "Second Reality Code Review: Part 1 (Introduction)". fabiensanglard.net. Retrieved 2013-08-23. The code is something like I had never seen before that perfectly represents two essential aspects of demomaking : Team work. Obfuscation.
  11. Sanglard, Fabian (2013-08-16). "Second Reality Code Review: Part 5 (Parts)". Retrieved 2013-08-31. Each Second Reality visual effects is a full DOS executable. They are called PART and there are 23 of them in total. This design decision allowed fast prototyping, simultaneous development (since FC probably did not have source control tools) and free languages choice (ASM, C and even Pascal can be found in the source).
  12. Sanglard, Fabian (2013-08-16). "Second Reality Code Review: Part 2 (Engine)". Retrieved 2013-08-31. There were many legends about Second Reality using an elaborated memory manager via the MMU but there is no trace of this in the engine. Memory management is actually delegated to DOS : The engine starts by deallocating all the RAM and then distribute it on demand. The only fancy trick is the ability to allocated RAM from the end of the heap: This is done using the return value of DOS malloc when too much RAM is requested.
  13. 2ndpatch.zip on scene.org
  14. tre_qu (2007-03-28). "DosBox, Compatibility: Second Reality - Future Crew (1993)". dosbox.com. Retrieved 2011-01-02.
  15. "Discogs".
  16. Sanglard, Fabien (2011-10-19). "SHMUP". Retrieved 2010-03-13. It [the Music] comes from one of the greatest hack of all time: "Second Reality" by Future Crew. Yes a deal was signed so I could use the music.
This article is issued from Wikipedia - version of the 11/12/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.