stringtranslate.com

Растровая полоса

Пример перемещения растровых полос за текстом из вступления The Replicants на Atari ST

Растровая полоса (также называемая rasterbar или copperbar ) — эффект , используемый в демонстрациях и старых видеоиграх, который отображает анимированные полосы цвета, обычно горизонтальные, которые дополнительно могут простираться до границы, также известной как неизменяемая область (при условии отсутствия пересканирования ) дисплея. Эффекты в стиле растровой полосы были распространены на компьютерах Atari 2600 и Atari 8-bit (потому что их можно было легко отобразить с помощью аппаратного обеспечения этих систем), а затем в демонстрациях для Commodore 64 , Amiga , Atari ST и Amstrad CPC .

Термин copperbar происходит от графического сопроцессора на домашнем компьютере Amiga , называемого Copper (сокращенная форма сопроцессора ). Его можно запрограммировать на изменение цветов дисплея на каждой строке сканирования без использования ЦП, за исключением обновления положения полос один раз за кадр.

Горизонтальные растровые полосы

Такие компьютеры имели ограниченные графические возможности и обычно фиксированное количество цветов или чернил ( например, максимум 16 на Amstrad CPC), которые могли отображаться в любой момент времени, которые часто назначались из таблицы соответствия цветов (CLUT), которая сопоставляет каждый отображаемый цвет с одним из большего набора возможных цветов (палитры), на который было способно оборудование ( например, 27 на CPC). Растровые полосы и подобные эффекты ( например, наличие HUD , который использует другой набор цветов, чем игровая область) достигаются путем изменения записей в CLUT в определенное время во время прорисовки экрана (первоначально электронным лучом ) , чтобы отобразить другой набор цветов в последующей части экрана. Самая простая растровая полоса просто влияет на одну строку сканирования , изменяя значение в CLUT для цвета, покрывающего эту строку, непосредственно перед тем, как электронная пушка ее прорисует, а затем возвращает его к предыдущему цвету после завершения строки. Используя последовательно несколько цветов и тщательно градуируя переходы, можно добиться эффекта металлических горизонтальных полос.

Многие графические чипы могут вызывать прерывание , в частности, называемое растровым прерыванием , когда начинается горизонтальный интервал гашения или вертикальная синхронизация ; таким образом, обработчик прерываний может точно рассчитать время и выполнить задачу обновления записей CLUT для растровых полос и других эффектов изменения цвета.

Вертикальные растровые полосы

Пример вертикальных растровых полос из демо-версии Angel's "Coppermaster" для Amiga с горизонтальными растровыми полосами на заднем плане

Похожий эффект может быть сгенерирован вертикально, хотя он часто не распространяется на область границы. Для генерации вертикальных полос одна и та же строка видеопамяти повторно выводится на каждой строке сканирования. В верхней части кадра видеопамять обычно пуста, и каждый интервал горизонтального гашения она обновляется новой «полосой» в немного другой позиции, создавая «ступенчатый» эффект.

Примеры кода