Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Прозрачный цвет фона спрайта на С++ в ДОС (http://forum.oszone.net/showthread.php?t=29422)

Guest 03-10-2004 21:25 203856

Умею вставить в свою прогу картинку, сохранить в памяти
участок экрана, чтобы затем восстановить его, убив спрайт.
Не умею сделать прозрачным цвет фона прямоугольной области,
внутри которой рисуется спрайт. Подскажите, кто знает. Нужно
под ДОС (<graphics.h>).

hasherfrog 04-10-2004 10:07 203857

Наиболее распространённым является резервирование одного цвета под "прозрачность". Например, фиксированый цвет с индексом 0 - прозрачен. Или - верхняя левая точка спрайта имеет прозрачный цвет. Как вариант можно использовать битовые маски, но это сложнее и нуднее. Складывание изображения спрайта с фоном: if (sprite.icolor != 0) then color = sprite.icolor; else color = background.color. Несмотря на кажущуюся громоздкость и неоптимизированность данный метод наиболее прост и, повторяю, распространен.


Время: 10:02.

Время: 10:02.
© OSzone.net 2001-