netlib.narod.ru | < Назад | Оглавление | Далее > |
Задавая различные комбинации коэффициентов смешивания источника и приемника вы можете реализовать десятки различных эффектов. Поэкспериментируйте с различными комбинациями, чтобы увидеть что они делают. Чтобы установить коэффициент смешивания источника и коэффициент смешивания приемника надо задать значения режимов визуализации D3DRS_SRCBLEND и D3DRS_DESTBLEND соответственно. Например, мы можем написать:
Device->SetRenderState(D3DRS_SRCBLEND, Source); Device->SetRenderState(D3DRS_DESTBLEND, Destination);
где Source и Destination могут принимать значения одного из следующих коэффициентов смешивания:
D3DBLEND_ZERO — коэффициент смешивания = (0, 0, 0, 0)
D3DBLEND_ONE — коэффициент смешивания = (1, 1, 1, 1)
D3DBLEND_SRCCOLOR — коэффициент смешивания = (rs, gs, bs, as)
D3DBLEND_INVSRCCOLOR — коэффициент смешивания = (1 – rs, 1 – gs, 1 – bs, 1 – as)
D3DBLEND_SRCALPHA — коэффициент смешивания = (as, as, as, as)
D3DBLEND_INVSRCALPHA — коэффициент смешивания = (1 – as, 1 – as, 1 – as, 1 – as)
D3DBLEND_DESTALPHA — коэффициент смешивания = (ad, ad, ad, ad)
D3DBLEND_INVDESTALPHA — коэффициент смешивания = (1 – ad, 1 – ad, 1 – ad, 1 – ad)
D3DBLEND_DESTCOLOR — коэффициент смешивания = (rd, gd, bd, ad)
D3DBLEND_INVDESTCOLOR — коэффициент смешивания = (1 – rd, 1 – gd, 1 – bd, 1 – ad)
D3DBLEND_SRCALPHASAT — коэффициент смешивания = (f, f, f, 1), где f = min(as, 1 – ad)
D3DBLEND_BOTHINVSRCALPHA — Этот режим смешивания устанавливает коэффициент смешивания источника равным (1 – as, 1 – as, 1 – as, 1 – as), а коэффициент смешивания приемника равным (as, as, as, as). Его можно указывать только для режима визуализации D3DRS_SRCBLEND.
Значениями по умолчанию для коэффициента смешивания источника и коэффициента смешивания приемника являются D3DBLEND_SRCALPHA и D3DBLEND_INVSRCALPHA соответственно.
netlib.narod.ru | < Назад | Оглавление | Далее > |