Sign in to follow this  
Solid_Spy

Does stretchrect or UpdateRect take out alpha? Please help!

Recommended Posts

Solid_Spy    708
This is Directx9, sorry, don't know why it won't let me edit the topic to change the tag -.-

I'm trying to add a surface to another surface, however the alpha doesn't blend, it just shows as white pixels.

For example:

[url="http://i1298.photobucket.com/albums/ag46/Solid_spy/alpha_blending.png"]http://i1298.photobu...ha_blending.png[/url]

I loaded the HUD surface with LoadSurfaceFromFile, however, i'm not sure if it is loading the alpha or not!

This is the stretchrect code:

[CODE]d3ddev->StretchRect(tilesurface1, &destrect, backbuffer, &rect, D3DTEXF_NONE);[/CODE]

And this is the LoadSurfaceFromFile code:

[CODE]d3ddev->CreateOffscreenPlainSurface(1024, 1024, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &tilesurface1, NULL);
D3DXLoadSurfaceFromFile(tilesurface1, NULL, NULL, "Title_Screen_text1.png", NULL, D3DX_DEFAULT, 0, NULL);[/CODE]

I have the backbuffer format set to A8R8G8B8, and also the surface as well, but it still isn't working...

Is there something i am missing? I'm using stretchrect to draw the surface ontop of the backbuffer, is that a bad thing? please help! Edited by Solid_Spy

Share this post


Link to post
Share on other sites
MJP    19753
StretchRect doesn't really "draw" anything, it basically just does a copy. It won't use alpha-blending even if you enable it with blend states.

I would suggest using ID3DXSprite for something like this. It supports blending, and more complex transformations such as rotations.

Share this post


Link to post
Share on other sites
Solid_Spy    708
[quote name='MJP' timestamp='1354996414' post='5008581']
StretchRect doesn't really "draw" anything, it basically just does a copy. It won't use alpha-blending even if you enable it with blend states.

I would suggest using ID3DXSprite for something like this. It supports blending, and more complex transformations such as rotations.
[/quote]

Hey, thanks for the help [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

I just did some research, and i decided to use 3d quads to draw the images from now on. Sprites are depricated in Directx11, so i feel that it would be a bad habit to learn how to use them in case i wan't to switch to directx11 in the future, but thanks for the suggestion. Edited by Solid_Spy

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this