Second Reality

Last updated
A screencast of Second Reality (60fps)

Second Reality (originally titled Unreal ] [ - The 2nd Reality) is an IBM PC compatible demo created by Future Crew. It debuted at the Assembly 1993 demoparty on July 30, 1993, [1] where it was entered into the PC demo competition, and finished in first place with its demonstration of 2D and 3D computer graphics rendering. [2] 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". [3] Its source code was released in a GitHub repository as public domain software using the Unlicense [4] on the 20th anniversary of the release on 1 August 2013. [5]

Contents

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 Second-Reality-Introduction.png
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 Second-Reality-Bouncing-sphere.png
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 real-time mesh deformation. After a while, another larger polyhedron appears and the smaller polyhedron begins bouncing inside the larger.

Tunnel Second-Reality-Tunnel.png
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 Second-Reality-Oscillating-circles.png
Oscillating circles

Oscillating circles

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

Moire patterns Second-Reality-Moire-patterns.png
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 a demonic-like human head (clearly inspired by the mascot Violent Mind of the band Kreator) 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 Second-Reality-Plasma-Effect.png
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 Second-Reality-Colored-spinning-cube.png
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 away from the camera.

Vector Balls Second-Reality-Vector-Balls.png
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 fade out 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 ), [6] 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 ray tracing software. [ citation needed ]

Water Second-Reality-Water.png
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"; [7] and it is an artistic rendering created by a member of Future Crew, but based [8] [9] on a painting used in a Rumple Minze alcohol advertisement from the early 1990s. [10]

3D spacecraft fly-through Second-Reality-3D-spacecraft-fly-through.png
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 FC-SR-nuts.gif
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. [11]

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

The analysis of the source code also disproved that the long-standing and popular speculation that SR uses its own memory manager that accesses the MMU directly; in fact SR uses standard DOS memory management functions. [13]

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. [14]

While the demo code remains freely available on numerous Internet sites and is now hosted with source code 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. [15] 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

Remixes

Related Research Articles

<span class="mw-page-title-main">Demogroup</span> Group of demoscene creators

Demogroups are teams of demosceners, who make computer based audio-visual works of art known as demos. Demogroups form a subculture collectively known as the demoscene.

<span class="mw-page-title-main">Demoscene</span> Computer art subculture

The demoscene is an international computer art subculture focused on producing demos: self-contained, sometimes extremely small, computer programs that produce audiovisual presentations. The purpose of a demo is to show off programming, visual art, and musical skills. Demos and other demoscene productions are shared at festivals known as demoparties, voted on by those who attend and released online.

<span class="mw-page-title-main">Future Crew</span> Former Finnish demogroup

Future Crew was a Finnish demogroup that created PC demos and software, active mostly between 1987 and 1994.

<span class="mw-page-title-main">Assembly (demoparty)</span> Finnish demoscene and gaming event

The Assembly demoparty is a demoscene and gaming event in Finland. It is the biggest demoscene party. The main organizers of the event are Pekka Aakko and Jussi Laakkonen. The Summer event takes place every year between late July and early August, and lasts three to four days, and the Winter event is held in January or February. Edition 2020 was online. The most recent Assembly was held from 1 to 3 April 2022 at Messukeskus in Helsinki.

<span class="mw-page-title-main">FastTracker 2</span> Audio tracker for DOS

FastTracker 2 is a music tracker created by Fredrik "Mr. H" Huss and Magnus "Vogue" Högdahl, two members of the demogroup Triton which set about releasing their own tracker after breaking into the scene in 1992 and winning several demo competitions. The source code of FastTracker 2 is written in Pascal using Borland Pascal 7 and TASM. The program works natively under MS-DOS.

<i>Ironseed</i> 1994 video game

Ironseed is a 1994 MS-DOS video game, developed and published by Channel 7. It is a space trading and combat game with real-time strategy elements.

<span class="mw-page-title-main">DOSBox</span> Free DOS emulator

DOSBox is a free and open-source emulator which runs software for MS-DOS compatible disk operating systems—primarily video games. It was first released in 2002, when DOS technology was becoming obsolete. Its adoption for running DOS games is widespread, with it being used in commercial re-releases of those games as well.

<span class="mw-page-title-main">Entex Adventure Vision</span> Second-generation video game console

Adventure Vision is a cartridge-based video game console released by Entex Industries in either August or October 1982. The launch price of the system was $79.95. The monitor, game controls, and computer hardware are all contained within a single portable unit. The LED monitor can only display red pixels. Four games were released, all of which are arcade ports. Approximately 10,000 were produced.

Tristar and Red Sector Incorporated (TRSI) is a demogroup which formed in 1990. It came about from the longest-running cooperation in scene history. RSI existed from 1985, before being joined by the "T" later on. Evolving from the Commodore 64 to the Amiga and later to PC and various game console platforms - like the PlayStation, Xbox, Nintendo - and set-ups like Arduino, Android or Blu-ray, TRSI released a number of digital productions, dedicated to experimenting in phreaking or network alteration. Its members were spread around the world and still contribute to computer scene art and code after more than 27 years of history.

keWlers is a Finnish demogroup, formed in the early 1990s, originally called Mewlers. After smaller releases such as Tripfish 2 or Another High-Caliber Mechanical Complication, their breakthrough came in 2002 when they released their critically acclaimed demo Variform at Assembly 2002. Despite only achieving third place, the demo became one of the most widely known and top rated demos ever released, winning three Scene.org awards. Further major demos to be released later included Protozoa and A Significant Deformation Near The Cranium, released at Assembly 2003. Kewlers have been nominated for at least one Scene.org Award every year, except for 2004. The group disbanded for a while in 2006 directly after the release of their final demo, 1995. But since 2010 Kewlers have returned from their hiatus, with possibly Variform 2, released at Revision 2012, as their most influential demo since their comeback.

<i>Strike Commander</i> 1993 video game

Strike Commander is a combat flight simulation video game designed by Chris Roberts and released by Origin Systems for the PC DOS in 1993. Its 3D graphics-engine used both gouraud shading and texture-mapping on both aircraft-models and terrain, an impressive feat at the time. Significant plot elements were presented through in-game cut-scene animations, a hallmark storytelling vehicle from Chris Robert's previous Wing Commander games. Strike Commander has been called "Privateer on Earth," due to the mercenary role-playing in the game.

<i>Quake II</i> engine Game engine

The Quake II engine is a game engine developed by id Software for use in their 1997 first-person shooter Quake II. It is the successor to the Quake engine. Since its release, the Quake II engine has been licensed for use in several other games.

<i>Hugi</i> Demoscene disk magazine

Hugi is one of the longest lasting, frequently released demoscene and underground disk magazines (diskmag) for IBM-PC.

Triton (TRN) was a demogroup active in the PC demoscene from 1992 to about 1996.

<span class="mw-page-title-main">Very Important Party</span>

Very Important Party (VIP) is an annual demo party held from 1999 to 2002 in Saint-Priest, near Lyon (France) and from 2008 in Thoissey. It is organized by PoPsY TeAm, a French demogroup from Lyon area.

<span class="mw-page-title-main">Nullarbor (demoparty)</span>

The Nullarbor demo party is a combined game development and demoscene event in Australia. The event takes place at the beginning of every year in Perth, Western Australia. It was named Nullarbor in reference to Perth's physical isolation from the rest of Australia. Like other similar demo parties worldwide, it provides a platform for game developers and graphic artists to showcase their skills.

ren (command)

In computing, ren is a command in various command-line interpreters (shells) such as COMMAND.COM, cmd.exe, 4DOS, 4NT and Windows PowerShell. It is used to rename computer files and in some implementations also directories. It is analogous to the Unix mv command. However, unlike mv, ren cannot be used to move files, as a new directory for the destination file may not be used. Alternatively, move may be used if available. On versions of MS-DOS that do not support the move command, the user would simply copy the file to a new destination, and then delete the original file. A notable exception to this rule is DOSBox, in which ren may be used to move a file, since move is not supported.

<span class="mw-page-title-main">TYPE (DOS command)</span>

In computing, type is a command in various command-line interpreters (shells) such as COMMAND.COM, cmd.exe, 4DOS/4NT and Windows PowerShell used to display the contents of specified files on the computer terminal. The analogous Unix command is cat.

Rewired is the only Belgian annual demoparty, which is organised since 2008. Typical competitions include PC demos and intros, hand-made and ray traced graphics, "wild", music and "oldskool" competitions.

Emscripten is an LLVM/Clang-based compiler that compiles C and C++ source code to WebAssembly, primarily for execution in web browsers.

References

  1. "Assembly 1993".
  2. "Assembly 93 results". pouet.net. 2011-01-02. Retrieved 2011-01-02.
  3. "Slashdot's "Top 10 Hacks of All Time"". slashdot.org. 1999-12-13. Retrieved 2010-12-25.
  4. Tuomi, Mika (3 August 2017). "SecondReality: Source code and data of Second Reality by Future Crew in 1993" via GitHub.
  5. Smith, Ryan (2013-08-01). "Happy 20th Birthday Second Reality". Anandtech . Retrieved 2013-08-21.
  6. "Ten seconds to transmission. Five, four three, two, one". Archived from the original on 2015-09-28.
  7. "ICEKNGDM.LBM". 21 October 2021.
  8. "FCINFO12.txt" (included with Purple Motion's JOURNEY2).
  9. "DEMO NEWS #24". Demonews. 1993-10-05. Retrieved 2015-12-17.
  10. "Rumple Minze: White Magic from the Black Forest" (advertisement painting).
  11. Sanglard, Fabien (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.
  12. Sanglard, Fabien (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).
  13. Sanglard, Fabien (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.
  14. 2ndpatch.zip on scene.org
  15. tre_qu (2007-03-28). "DosBox, Compatibility: Second Reality – Future Crew (1993)". dosbox.com. Retrieved 2011-01-02.
  16. "Discogs".
  17. 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.