DEMO.DESIGN
Frequently Asked Questions
 ENLiGHT Project. Новости об информационных технологиях, науке, авиации и космонавтике
оглавление | demo party в ex-СССР | infused bytes e-mag | новости от ib/news | другие проекты | письмо | win koi lat

Терминология: Видео (графические) эффекты

(Опpеделения, данные ниже даются в контексте их отношения к демо сцене)

Практически все перечисленные здесь эффекты относятся к широко-известным. Поэтому их повторение, в том числе и с небольшими изменениями трудно рассматривать иначе как плагиат (конечно, кроме простейших вещей типа blur'a или fading'a).
Помните об этом.

Blur (размытие/размазывание) - усреднение цвета по нескольким соседним точкам.

Motion Blur, Delayed Vectors, Delayed Dots - pодственные понятия. По сути - эффект "смазывания/послесвечения" изобpажения пpи [быстpом] движении. Теpмин Delayed Vectors чаще пpименяется к WireFrame объектам.

 

Delayed Vectors и Motion Blur

 

Delayed Dots

Fading - плавное изменение яpкости [части] изобpажения. Hа PC, как пpавило, достигается изменением R,G,B (,A) для данного цвета в палитpе. Hа C64 (и иногда на PC) - изменением аттpибутов для данной части изобpажения.

Plasma (плазма) - группа эффектов, представляющих собой динамически изменяющиеся узоры состоящие из плавных цветовых/яркостных переходов. Иногда (в режимах 16..256 цветов) реализуется путем изменения палитры. Однако чаще всего изображение формируется на лету. Термин "фрактальная плазма" который время от времени употребляется - как правило некорректен.

 

Plasma

 

Wormhole - одна из древнейших разновидностей эффекта "туннеля". Ныне практически не используется. Была популярна благодаря впечатляющему эффекту, в комбинации с простотой реализации (циклическим изменением палитры).

 

Wormhole

Color Bars (цветные полоски) - Чрезвычайно популярный и распространенный на Commodore 64, Amiga эффект. Относится к группе растровых эффектов, поскольку как правило реализуется путем изменения цвета фона или изображения (а также палитры) в момент прохождения лучем определенного участка экрана. Позднее на PC этот эффект был повторен в двух вариантах - первоначальным (с ожиданием луча и изменением цвета) и упрощенном (простым изменением палитры статического изображения, либо перемещением полосок-спрайтов). Этот эффект иногда называют Copper.

 

Color Bars

Copper - Еще один эффект "извивающихся лент" из группы растровых, очень сходный в плане реализации с Color Bars.

 

Copper

 

Vector Balls - изображение объектов в виде комбинации из "освещенных шариков". Шарики при этом не являются трехмерными, а представляют собой обычные плоские спрайты.

 

Vector balls

Fake Balls ("поддельные" шарики) - Представляет собой змейку из бегущих друг за другом одинаковых шариков. Реализовывался либо сменой кадров (достаточно трех) либо, насколько я помню, циклическим изменением палитры (наподобие Wormhole).

 

Fake balls

 

Dots (точки) - Изображение объектов/надписей/ландшафтов из точек. Был особенно популярен на маломощных компьютерах (Commodore 64, старые PC XT/AT, ZX Spectrum). Предметом особой гордости было максимальное количество точек, из которых состояло динамически меняющееся изображение. Эту цифру часто писали в углу экрана.

 

Dots

3D Dot Tube - Пролет через туннель из точек.

 

3D Dot Tube

Rotating Dot Tube (вращающаяся труба из точек) - имитация "вихря" из точек. В центре концентрация наибольшая, к краям - уменьшается.

 

Rotating Dot Tube

Parallax Stars - Имитация движения относительно в одном направлении, но с разной скоростью (более темные удаленные звезды движутся медленнее, чем более близкие светлые). Частный случай Parallax Scrolling'a.

3D Stars - Имитация движения навстречу звездам. При этом звезды приближаются, источником их является одна точка. Иногда при приближении звезды могут становиться светлее, или даже увеличиваться. Есть варианты с одновременным вращением неба и с motion blur'om (от звезд остается след - послесвечение)

Crossfading (Blending) - плавный переход одного изображения в другое посредством Fading'a:

dest = pic1 * k + pic2 * (1 - k), где k медленно меняется от 0 до 1.

Scaling (масштабиpование) - Увеличение или уменьшение (части) изобpажения или объекта.

Rotating (поворот, вращение) - Поворот (части) изображения или объекта.

Zoomer/Rotator - Чрезвычайно узнаваемый эффект, в основе которого повторяющиеся одновременно поворот и увеличение нескольких копий одного bitmap рисунка. Получил особенно широкое распространение на PC (особенно после появления Second Reality).

 

Zoomer/Rotator

Fire, Flame (огонь, пламя) - Имитация пламени. Чаще всего на основе простого клеточного автомата.

 

Fire, Flame

Water (вода) - группа разнообразных эффектов имитирующих воду (жидкость), волны, капли.

 

Один из вариантов воды
(Lixure 128b intro by Dr.Bug /Future Hackers)

 

Interference (интерференция) - популярный эффект получающийся в результате медленного перемещения прямых или радиальных полосок друг относительно друга. Раньше часто реализовывался с использованием нескольких плоскостей 16-цветных режимов VGA.

 

Interference

Shade Bobs - эффект, получаемый пpи движении по экpану по пpоизвольной тpаектоpии паттеpна (напpимер кpуга или квадpата), пpичем в каждой точке движения, суммиpуя цвет уже пpисутствующий с цветов в паттеpне и игноpиpуя пеpеполнения. Пpимечательно, что если двигаться в обpатном напpавлении, но уже вычитать цвет, то мы веpнемся к чеpному экpану.

 

Shade bobs

StarWars scroller - вариант скроллинга который использовался в титрах фильма Star Wars (текст уплывает вдаль с уменьшением яркости).

 

StarWars scroller (by Mad Max /QMG)

Sine scroller - вариант скроллинга с движением по синусоиде или похожей кривой.

 

Sine Scroller

Zoom (in/out) - Увеличение (zoom, zoom in) / уменьшение (zoom out) объекта.

Morphing - плавное "превращение" одного обьекта (изображения) в другое, путем установления взаимно однозначного соответствия каждого элемента исходного обьекта (изображения) конечному, и плавного изменения друг в друга.

Morphing представляет из себя смесь трех отдельных алгоритмов: warping'а, tweening'а и dissolving'а.

Warping - это математический трюк, с помощью которого изображение растягивается и сжимается, как будто оно нарисовано на резине. Warping задается точками или линиями.

Tweening, сокращенно от in-betweening, - интерполяция двух изображений для осуществления плавной анимации. Tweening обычно выполняется над точками, линиями или полигонами. Tweening удобно использовать, если в конкретной реализации warping ориентирован на линии. Tweening'ом положения управляющих линий можно плавно искривлять картинку.

Даже с помощью только warping'а и tweening'а, можно создавать фотореалистическую анимацию отдельной фотографии.

Dissolving, или cross-dissolving, - так говорили в Голливуде, когда одну сцену затемняли, в то время как другую "осветляли". В середине делалась двойная экспозиция.

Получается так: если все изображение покрыть сеткой, то warping изменяет форму каждого четырехугольника, tweening двигает сетку, а dissolving изменяет кусочек картинки внутри четырехугольника.

Когда все эти три эффекта применяются совместно, получается morphing.

Metaballs - эффект похожий на слияние (или отталкивание) капель "жидкого металла", с учетом поверхностного натяжения.

 

Metaballs

[Andrew A Aksyonoff]:
Эти капли - это изоповерхность скалярного поля, генерируемого несколькими движущимися источниками (центрами шаров). Более просто - пусть (x_1,y_1,z_1), (x_2,y_2,z_2), (x_3,y_3,z_3) - источники скалярного поля с.. эээ.. функцией потенциала [да не убьет меня ни один физик] вида p_i(x,y,z)=1/((x-x_i)^2+..+(z-z_i^2)). Суммарный потенциал в этом случае p(x,y,z)=p1(x,y,z)+..+p3(x,y,z). Капли есть множество таких точек пространства, для которых p(x,y,z)=C=const.

Изоповерхность, определенная таким образом, может быть полигонизирована (polygonised) с помощью, например, the marching cubes algorithm.

То есть, чтобы нарисовать эти капли, надо:
* определить изоповерхность (задать x_1,..,z_3 и C)
* полигонизровать ее (сделать сетку треугольников, которые ее достаточно хорошо приближают), например с помощью marching cubes
* отрендерить полученную структуру. В Jizz/Stash используется, IMHO, обычный environment map. Правда, сам map очень красивый ;)

Идея marching cubes (кратко):

Сгенерируем сетку из кубиков/параллелипипедов и посчитаем значения поля в ее узлах. Кубик может быть внутри/снаружи изоповерхности, либо пересекать ее. Если пересекает - линейной интерполяцией приближаем точки пересечения и в зависимости от того, сколько вершин над изоповерхностью, а сколько под, генерируем несколько треугольных граней. Пример:

              4--------3
            /        / |
          1--------2   |
          |        *   |
          |   8----|---7
          | /      | *
          5---*----6
Пусть точка 6 находится под isosurface'ом (т.е. p(6) < isolevel), остальные - над. Тогда в точках (*) p(*) == isolevel и через них проводим треугольную грань. Всего 256 случаев.

Smooth scrolling (гладкая/ровная прокрутка) - метод "прокрутки - скроллинга" какого-либо текста или изображения, при котором визуально нельзя обнаружить шаг с которым осуществляется перемещение. Достигается либо уменьшением шага (1 пиксел), либо увеличением скорости прокрутки.
В современных многозадачных системах smooth scrolling практически не встречается. (см. также раздел про Commodore 64)

 

Smooth Scrolling

Animation (анимация) - последовательный вывод на экpан хpанимых в памяти/на диске  упакованных либо не упакованных изобpажений. (из стандаpтных фоpматов это напpимеp .FLI,.FLC,.AVI,.MPEG) Если изобpажение фоpмиpуется пеpед тем как появится на экpане (посpедством каких-либо вычислений, либо комбинируется из дpугих изобpажений) то, как пpавило, это HЕ называют анимацией.

(часть screenshot'ов предоставлена Cyboman'om - http://www.uni-ulm.de/~s_cballh/htc/htc-e.html)

Если вы хотите дополнить FAQ - пожалуйста пишите.

design/collection/some content by Frog,
DEMO DESIGN FAQ (C) Realm Of Illusion 1994-2000,
При перепечатке материалов этой страницы пожалуйста ссылайтесь на источник: "DEMO.DESIGN FAQ, http://www.enlight.ru/demo/faq".