Demo effect

Demo effect
Beyond - Conspiracy - 2004 - 64k intro.jpg

Demoscene
Concepts
Demo - Intro - Demoparty - Effects - Demogroup - Compo - Music disk - Diskmag - Module file - Tracker
Alternative demo platforms
Amiga - Apple IIGS - Atari ST - Commodore 64 - Vic-20 - Text mode - ZX Spectrum
Parties
Current: Alternative Party - Assembly - Buenzli - Evoke - The Gathering - Sundown - X
Past: Breakpoint - Mekka & Symposium - The Party
Websites
Hornet Archive - Scene.org - Mod Archive - Trax in Space
Software
ProTracker - Scream Tracker - Fast Tracker - Impulse Tracker - ModPlug - Renoise
Tracker musicians
Demosceners
v · d · e

Demo effects are computer-based real-time visual effects found in demos created by the demoscene.

The main purpose of demo effects in demos is to show off the skills of the programmer. Because of this, demo coders have often attempted to create new effects whose technical basis cannot be easily figured out by fellow programmers.

Sometimes, particularly in the case of severely limited platforms such as the Commodore 64, a demo effect may make the target machine do things that are supposedly beyond its capabilities. The ability to creatively overcome major technical limitations is greatly appreciated among demosceners.

Modern demos are not as focused on effects as the demos of 1980s and 1990s. Effects are rarely stand-alone content elements anymore, and their role in programmer showcase has diminished, particularly in PC demos. As for today, PC demosceners are more likely to demonstrate their programming skills with procedural content generation or 3D engine features than with superior visual effects.

Contents

Hardware considerations

There are demos written for many different devices that vary considerably in their graphical features and data processing capabilities. The variability in hardware also reflects in types of effects invented for each platform as well as in the methods used in the implementation.

The demoscene took off on home computers such as the Commodore 64 and the Amiga, which had relatively advanced and very "hackable" custom chips and CPUs. Before the widespread use of advanced computer aided design for integrated circuits, chips were designed by hand and so often had many undocumented or unintended features. A lack of standardisation also meant that hardware design tended to reflect the designers own ideas and creative flair. For this reason, most "old school" demo effects were based on the creative exploitation of the features of particular hardware. A lot of effort was put into the reverse-engineering of the hardware in order to find undocumented possibilities usable for new effects.

The IBM PC compatibles of the 1990s, however, lacked many of the special features typical for the home computers, instead using standard parts. This was compensated for with a greater general-purpose computing power. The possibility of advanced hardware trickery was also limited by the great variability of PC hardware. For these reasons, the PC democoders of the DOS era preferred to focus on pixel-level software rendering algorithms.

Democoders have often looked for challenge and respect by "porting" effects from one platform to another. For example, during the "golden age" of the Amiga demos, many well-known Amiga effects were remade with Atari ST, Commodore 64 and PC, some of which were considered inferior in the key features required in the effects in question. Since the mid-1990s, when the PC had become a major platform, demos for the Amiga and the C-64 started to feature PC-like "pixel effects" as well.

Early history

The earliest computer programs resembling demo effects predate the demoscene for several decades. Perhaps the earliest example of these so-called display hacks is a program called Bouncing Ball on the Whirlwind computer in the early 1950s. Another famous display hack, munching squares, was originally created on the PDP-1 in ca. 1962.

"Old school" effects

A still screenshot of a typical plasma effect.

These effects were typical in the 1980s and the early 1990s and were first implemented on either the Commodore 64, Atari ST or the Amiga. They often relied on the systems custom hardware or were considered difficult because of it. For example, 3D objects rendered in dots are somewhat tricky on systems without byte-per-pixel displays or limited video memory bandwidth, or systems with slow and/or limited (e.g. 8 bit, no FPU) CPUs.

  • Raster bars, also called copper bars on the Amiga.
  • Scrollers of various kinds.
  • Moving sprites, with the competition usually focused on the number of visible sprites per frame.
  • Starfields, such as parallax-scrolling and perspective starfields.
  • Smooth horizontal waving of graphics images in a per-scanline basis
  • Shadebobs
  • Infinite bobs
  • Plasma effect
  • Kefrens bars
  • Moire patterns, particularly circles
  • Text zoomers
  • Simple rotating 3D objects rendered in dots, lines or filled polygons.
  • Spline effect
  • Vector graphics
    • Glenz, partially see-through models with a "diamond-like" look. Named by Photon from the Swedish word "Gläns" (glisten or glitter)[1]
    • Blenk, shiny metallic aluminum-like models, from Swedish "Blänk" (shiny)
    • Rubber, Twisting and/or elastic models. Also sometimes referred to as Gel

Chunky-pixel effects

Effects based on software rendering into chunky-pixel framebuffers were typical in the mid and late 1990s and were usually first implemented on the PC or Falcon030. They became popular as systems with pixel-addressable high speed video memory and faster processors (to allow for more demanding real-time calculations) became common.

  • Effects based on static screen-to-texture lookup tables
    • Texture-mapped tunnels and other objects rotating around their axis of symmetry
    • Wobblers, rotators and other similar effects for 2D images
    • Objects that reflect or refract underlying bitmap images
  • Texture-mapped tunnel with freely moving camera, typically based on realtime raytracing
  • Rotozoomer
  • Mandelbrot zoomer
  • Fire effect and other effects based on 2D filters and feedback
  • Heightfield landscape (often called "voxel landscape")
  • 2D bump mapping
  • Metaballs

Some of these effects were later ported to planar pixel machines such as the Amiga, without relying on chunky to planar conversion. For example, the group Sanity implemented a rotozoomer using a combination of pre-rendered planar bitmaps and copper effects.

3D rendering

3D computer graphics has been featured in demos since the late 1980s. Nowadays, a general-purpose 3D engine is an integral part of most new demos.

In the late 1980s and early 1990s, rotating 3D objects were considered effects in their own right due the difficulty of calculating and rendering them. In particular, most systems did not have a floating point unit. Rather than general-purpose 3D algorithms, democoders often used special-purpose tricks highly optimized for the rotation and rendering of a particular object such as a cube or a sphere. Since even drawing dots, lines or filled polygons was a difficult task in itself competition often revolved around simply optimising the drawing routines while using pre-calculated maths.

To a casual viewer, many demo effects look like something attainable by a general-purpose 3D engine. However, classic effects with an apparent 3D look often have no real-time 3D calculation whatsoever. For example, static screen-to-texture look-up tables can be used with symmetrical 3D objects that rotate around their axis of symmetry.

Before the advent of mass-marketed 3D acceleration hardware, democoders often focused on lighting and shading techniques in software 3D engines, including Gouraud shading, Phong shading, texture mapping, bump mapping, environment mapping, radiosity and even real-time ray tracing.

General-purpose 3D engines are very seldom called "effects", although the rendered scenes often contain something that can be regarded as such.

See also

References


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Demo (computer programming) — Demoscene Concepts Demo Intro Demoparty Effects Demogroup Compo Music disk Diskmag Module file …   Wikipedia

  • Plasma effect — The plasma effect is a computer based visual effect animated in real time. It uses cycles of changing colours warped in various ways to give an illusion of liquid, organic movement.Plasma was probably invented by demo coders for use in their… …   Wikipedia

  • Mass Effect 3 — Developer(s) BioWare Publisher(s) Electronic Arts Director(s) …   Wikipedia

  • Unreal (demo) — Unreal is a demo created by Future Crew in 1992.ystem requirementsThe demo states that [it] requires a 386 computer [and] runs perfectly on a 486/33 MHz [PC] with Tseng Labs SuperVGA . It supports various sound cards, such as the Sound Blaster,… …   Wikipedia

  • Mass Effect 2 — Developer(s) BioWare Publisher(s) Electronic Arts Director(s) …   Wikipedia

  • Characters of Mass Effect — This article describes the characters of Mass Effect , an Xbox 360 and PC action role playing game developed by BioWare. The game was released on November 20, 2007.Commander ShepardCommander Shepard is the main player character in Mass Effect .… …   Wikipedia

  • Coandă effect movies — Demonstration animation of the Coandă effect = Demo 1 Animation loop: # Only water running. # The convex object brought close to the waterstream. # The Venturi effect creating a pressure decrease in the air between and thus bringing the stream… …   Wikipedia

  • COTS Demo Flight 1 — COTS 1 Mission logo Operator SpaceX Mission type Demonstration Launch date …   Wikipedia

  • The Farewell Effect — Infobox musical artist Name = The Farewell Effect Img capt = Background = group or band Origin = Locust Valley, New York, USA Genre = Melodic hardcore Pop rock Alternative rock Years active = 2005–2008 Label = Unsigned URL =… …   Wikipedia

  • Mass Effect (video game) — Mass Effect Developer(s) BioWare (Xbox 360) Demiurge Studios (Microsoft Windows[1] …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”