Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

DirectDraw: overlay-поверхность В окне

282
15 ноября 2009 года
Bard
481 / / 26.02.2006
Разбираюсь с libavcodec и паралельно с DirectDraw. Получилось создать оверлейный сурфейс и вывести в него изображение. Но как заставить ету повехность сидеть в окне? Ведь как-то же плееры (KMPlayer к примеру) используют оверлей и "запихивают" его себе в окно...
282
15 ноября 2009 года
Bard
481 / / 26.02.2006
ухух. Разабрался. Оказывается надо использовать цветовой ключ. И все что на екране указаного в ключе цвета будёт заменятсо на соответствующие части изображения. При обновлении оверлея надо применять че-нить такое:

Код:
...
DDOVERLAYFX ddovfx;
ddovfx.dwSize = sizeof (DDOVERLAYFX);
ddovfx.dckDestColorkey.dwColorSpaceLowValue = OVERLAY_COLOR_KEY;
ddovfx.dckDestColorkey.dwColorSpaceHighValue = OVERLAY_COLOR_KEY;

DWORD ovflags = {
    DDOVER_KEYDESTOVERRIDE |
    DDOVER_DDFX |
    DDOVER_SHOW
};

overlay->UpdateOverlay (&rcRectSrc, primary, &rcRectDest, ovflags, &ddovfx);
...


где OVERLAY_COLOR_KEY - rgb цвет


утро вечера мудренее...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог