Лукап
Материал из SpeccyWiki
Версия от 16:10, 17 сентября 2009; Alone (обсуждение | вклад)
Лукап (lookup, также называется mapping (у X-Trade) или stretch (у Exploder'а)) — метод получения различных эффектов путём проецирования текстуры на экран по таблице. Для каждого пикселя активной части экрана берётся из таблицы (таблицу можно смещать относительно экрана) адрес в текстуре, либо смещение в текстуре (тогда текстуру можно смещать относительно таблицы), либо смещение относительно предыдущего адреса в текстуре (аналогично).
Этим методом можно изобразить:
- туннель;
- фонарик (bump mapping);
- вспышку света — например, в демо Refresh;
- линзу;
- внутренность тора или сферы;
- другие эффекты.
Сам метод реализуется с помощью команд POP HL:ADD HL,BC:LDI (можно POP BC:ADD HL,BC:LDI), с помощью генерации процедуры из таблицы или другими способами.