EOR fill

Материал из SpeccyWiki
Версия от 07:59, 15 августа 2014; Andrew771 (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

EOR fill (EOR-fill) - метод отрисовки залитых областей. Состоит в том, что рисуются только точки цветопереходов, а потом размываются сверху вниз командой XOR (на процессоре 6502 - EOR). Популярен на платформе Commodore 64 для отображения залитой 3D-графики, в том числе текстурированной (в этом случае заливают чётные и нечётные линии раздельно).

Алгоритм:

  1. Чистим экранный буфер.
  2. Рисуем по одной точке на столбик (это проще, чем линия по Брезенхему).
  3. EOR fill с переносом на экран. Примерный код: pop de:xor e:ld (hl),a:inc h:xor d:ld (hl),a:inc h.

Примеры использования на ZX Spectrum: интро Rst7 с залитой синусоидой и рекламой Prestige, несколько эффектов в Eye Ache 2 (синусы, треугольники, "glenz vectors"), Wolf-часть в Critical Error.