Sign in to follow this  

Meshes appear layered even without depth stencil view

This topic is 1526 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

Hi,

 

I am rendering a 3D model using Direct3D 11 and the meshes on my model appear layered as if there was a depth stencil view active which would layer the meshes but I haven't created one. Are there any other factors that could cause this to happen? Thanks.

Share this post


Link to post
Share on other sites

If I understand you correctly, it's probably a combination of the order in which you draw your meshes, and the winding order (front facing).

 

Can you post an image?

Share this post


Link to post
Share on other sites

Does the mesh look OK from all directions?

If yes, then you have a depth stencil even though you think you don't.

If not, then the answer why it looks fine on the screenshot is that it's a coincidence and the mesh's triangles are defined/drawn in the proper order.

Share this post


Link to post
Share on other sites

What happens if you rotate it 180 degrees so you are looking towards the back?

 

With the information given, I think it's just a coincidence that the triangles are being drawn in the right order to make it look semi-correct.

 

Also, it's quite possible that you do have a depth buffer even though you didn't ask for one - check to make sure.

Share this post


Link to post
Share on other sites

There is a similar result from the back but this time the hat is still in the background so you don't see the hat as you might expect. Could this have any relevance?

 

EDIT: I don't think I would have been just given a stencil buffer because I tried it with the same model but a different model file format and it displayed correctly.

Edited by gchris6810

Share this post


Link to post
Share on other sites

"Could this have any relevance?" Yeah - it tells me that you don't have a back buffer. You are drawing the head first, then the body. What you are seeing is exactly as expected. Try drawing the body first and then the head, and you'll see what I mean.

 

What you are conceiving as a problem is actually quite normal - it only depends on the draw order/windings. (in other words, ignore it!)

Share this post


Link to post
Share on other sites

Let me add...

 

Each time you draw without a depth buffer, you are simply drawing over the top of previously rendered stuff.

 

So - the order in which you draw stuff is really quite important.

Share this post


Link to post
Share on other sites

I can't be sure from the screenshot, but it seems to me that the face culling order could be wrong... try changing your front face setting from clockwise to counter clockwise, or biseversa

Share this post


Link to post
Share on other sites

Yeah - it tells me that you don't have a back buffer.

And how is he rendering it without a backbuffer? ;)

 

I can't be sure from the screenshot, but it seems to me that the face culling order could be wrong... try changing your front face setting from clockwise to counter clockwise, or biseversa

The culling order seems to be fine IMHO, the mesh would look much worse otherwise.

Share this post


Link to post
Share on other sites

When I look at that image it looks wider and the hands are down. its the wrong image for that object.

Share this post


Link to post
Share on other sites

When I add a depth stencil view to the device nothing is rendered at all! Why would this be?

 

Are you clearing your depth/stencil buffer after you add it before drawing the mesh. Also are you setting an DepthStencilState as well. It would be good to see some code

to see exactly how you are setting it up

Edited by BornToCode

Share this post


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