• Advertisement
Sign in to follow this  

Decals with deferred renderer

This topic is 1667 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Currently i am adding decals after gbuffer pass with alpha blending overwriting diffuse color. They "inherit" bumpiness of underneath surface:
decals.jpg
but then i am unable (at least not cheap) to write to other guffer elements.

I am trying to add something like this (from crydev docs):

image008.jpg

so i was reading MSDN documentation about MRTs, but i am not sure what this exactly mean:

Some of the implementations do not apply the output write mask (D3DRS_COLORWRITEENABLE). Those that can, have independent color write masks. This is expressed using a new capability bit. The number of independent color write masks available will be equal to the maximum number of elements the device is capable of.

1. Am i able to disable colorwrite to certain RTs within MRTs with D3DRS_COLORWRITEENABLEn?
2. What caps (if any) to check if device is capable of doing this (as this is not mentioned in the docs)? Ah, nevermind, found it (D3DPMISCCAPS_COLORWRITEENABLE and D3DPMISCCAPS_INDEPENDENTWRITEMASKS).

3. Could you say that it is common for most of all these days DX10-11 capable hardware to support D3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING ?

4. Any other method you would use for decals like in crydev image?

 

 

Thank you for your time.

Edited by belfegor

Share this post


Link to post
Share on other sites
Advertisement

DX10 feature level requires full, independent blending support for multiple render targets. So any DX10-capable GPU should support blending and color write control for MRT's, assuming that the driver enables it for D3D9.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement