PDA

Показать полную графическую версию : Прозрачный цвет фона спрайта на С++ в ДОС


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

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




© OSzone.net 2001-2012