Page 1 of 1
Direct2D - Bildes caurspīdīgms
Posted: 24 Jul 2013, 01:50
by ArtisDz
Sveiki, vēlējos pajautāt kā uz
Direct2D var iegūt/ padarīt caurspīdīgāku bildi..
Līdzīgi kā attēlā.
Zinu ka uz OpenGL to varēja pavisam viegli panākt..
mainot krāsas A-alfa kanalu pirms tika zīmēts attēls..
Bet kā ir ar Direct2D?
Sākumā mēģināju mainīt
Code: Select all
..->CreateSolidColorBrush(ColorF(1,1,1,0.5f),&ota)
Bet cik sapratu tad tas neatbild par attēlu apstrādi..
Lai ko tādu iegūtu ir javeido kādi filtri vai kas tāds..?
Jautāju jo paris dienas atpakaļ sāku apgūt Directx un tā ir lieta kuru esmu izmeklējies bet tā ari uz jautajumu nesmu guvis tiešu atbildi..
-Ceru uz sapratni
Re: Direct2D - Bildes caurspīdīgms
Posted: 24 Jul 2013, 09:24
by bubu
Tu gribi zīmēt ID2D1Bitmap uz render-target'a lietojot konstantu caurspīdīgumu?
Man šķiet, ka tam tev derēs ID2D1RenderTarget::DrawBitmap metode. Tam ir float opacity parametrs, kurā tu norādi, cik caurspīdīgu bildi rezultātā gribi.
Reku piemērs ar visu kodu:
How to Draw a Bitmap
Re: Direct2D - Bildes caurspīdīgms
Posted: 24 Jul 2013, 21:38
by ArtisDz
Konstantu nee..
Parlaboju visu no
Image uz
Bitmap un viņam pie zimešanas parametriem ir
Opacity kur reali to ari var regulēt..
Paldies bubu
Re: Direct2D - Bildes caurspīdīgms
Posted: 24 Jul 2013, 21:59
by bubu
Nesapratu. Kā tas ir - "palaboju visu no Image uz Bitmap"? Pati par sevi Image ir abstrakta klase, kuru nevar instancēt. Un Bitmap ir Image apakšklase, kuru var instancēt.
Ja tev vajag ne-konstantu opacity, tad vajadzēs lietot opacity maskas -
Opacity Masks Overview
Re: Direct2D - Bildes caurspīdīgms
Posted: 24 Jul 2013, 22:18
by ArtisDz
Nu es pirmstam izmantoju
un pectam zimeju ar .DrawImage(..); caur efektu...
Un nē maskas man nevajag.. panācu to ko vēlējos..
Re: Direct2D - Bildes caurspīdīgms
Posted: 25 Jul 2013, 02:30
by elvman
Man gan vairāk ir jautājums, vai tu esi pārliecināts, ka gribi izmantot Direct2D. Pats 10 gadus atpakaļ izmantoju Direct2D, un jau tad tas bija salīdzinoši ļoti lēns. Ieteiktu apsvērt gatavas bibliotēkas izmantošanu (piemēram, SDL) vai kaut vai plika Direct3D izmantošanu 2D zīmēšanai.
Re: Direct2D - Bildes caurspīdīgms
Posted: 25 Jul 2013, 03:00
by ArtisDz
Amm nu patiesībā nezinu vai velos vispār izmantot
DirectX.
Sanāk ka bezmazvai esmu spiests izmantot viņu, jo ir doma bāzēties uz
Window Store pusi
un tur pārsvarā dominē
XAML un
DirectX.
Iesākumam nedaudz domāju paņemties ar
Direct2D. Neizskatas nemaz tik švaki..kautgan pielagoties ir pagrūti..
Re: Direct2D - Bildes caurspīdīgms
Posted: 25 Jul 2013, 06:40
by bubu
elvman wrote:Man gan vairāk ir jautājums, vai tu esi pārliecināts, ka gribi izmantot Direct2D. Pats 10 gadus atpakaļ izmantoju Direct2D, un jau tad tas bija salīdzinoši ļoti lēns. Ieteiktu apsvērt gatavas bibliotēkas izmantošanu (piemēram, SDL) vai kaut vai plika Direct3D izmantošanu 2D zīmēšanai.
What? Kādus 10 gadus atpakaļ? Tu to nejauc ar GDI? Direct2D tika izlaists kopā ar Windows 7 - 2009. gadā (tātad 4 gadus atpakaļ).
Un Direct2D nav lēns, jo izmanto to pašu hardware akselerāciju, ko Direct3D, t.i. tas gandrīz visu savu darbu veic izmantojot Direct3D.
Reku uzskatāmas diagrammas:
Re: Direct2D - Bildes caurspīdīgms
Posted: 25 Jul 2013, 13:35
by elvman
Auch, sajaucu ar DirectDraw. Sen neesmu sekojis līdzi MS pasaulei
.
Re: Direct2D - Bildes caurspīdīgms
Posted: 24 Feb 2014, 13:25
by plaimuts
laba info,noderēja, paldies!