Jump to content

View more

Image of the Day

Adding some finishing touches...
Follow us for more
#screenshotsaturday #indiedev... by #MakeGoodGames https://t.co/Otbwywbm3a
IOTD | Top Screenshots

The latest, straight to your Inbox.

Subscribe to GameDev.net Direct to receive the latest updates and exclusive content.


Sign up now

Alpha mapping with a .DDS, DX11

4: Adsense

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.


  • You cannot reply to this topic
1 reply to this topic

#1 Papadopol   Members   

178
Like
0Likes
Like

Posted 22 January 2013 - 01:22 PM

Hello. I'm rendering a text with a DDS file texture that has Alpha enables so it can render letters as quads. Im using DDS with no compression for quality reasons. 

The resulting image will be r,g,b beeing 0 and alpha the surroundings the rest of thexture that is not character body.

When the imagine has r,g,b = 0 the text is back with correct Alpha but when I try to modify the r,g,b to any value it also colores the alpha zone even if I keep alpha at the same value. 

The thing is that I want to make different colored characters and I dont understand why I cant modify different pixels after Sampling the texture.



blendStateDescription.RenderTarget[0].BlendEnable = TRUE;

blendStateDescription.RenderTarget[0].SrcBlend = D3D11_BLEND_ONE;

blendStateDescription.RenderTarget[0].DestBlend = D3D11_BLEND_INV_SRC_ALPHA;

blendStateDescription.RenderTarget[0].BlendOp = D3D11_BLEND_OP_ADD;

blendStateDescription.RenderTarget[0].SrcBlendAlpha = D3D11_BLEND_ONE;

blendStateDescription.RenderTarget[0].DestBlendAlpha = D3D11_BLEND_ZERO;

blendStateDescription.RenderTarget[0].BlendOpAlpha = D3D11_BLEND_OP_ADD;

blendStateDescription.RenderTarget[0].RenderTargetWriteMask = 0x0f;

 

 
void PS( in PixelInputType inpt , out float4 colorOut : SV_Target )

{


colorOut = shaderTexture.Sample(SampleType, inpt.tex);

colorOut = float4(0.7f, 0.7f,0.7f,colorOut[3]); // here I try to color the text by overwriting a given pixel that by default mapped from texture should be black (rgb 0 and custom alpha).


}

 

alphatl.jpg



#2 bb_buster   Members   

117
Like
0Likes
Like

Posted 22 January 2013 - 10:33 PM

The blend state for the source alpha is set to 1 whilst the destination alpha is 0 and they're being added together to make 1. I'd suggest trying the source alpha to be set as D3D11_BLEND_SRC_ALPHA

The colours may need to be checked too. I'd suggest maybe try changing the SrcBlend to D3D11_BLEND_SRC_COLOR and DestBlend to D3D11_BLEND_ZERO

Hope it helps




Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.