Jump to content
  • Advertisement
cozzie

DX11 RenderDoc and D2D/DirectWrite

Recommended Posts

Hi all,

Last week I noticed that when I run my test application(s) in Renderdoc, it crashes when it enable my code that uses D2D/DirectWrite. In Visual Studio no issues occur (debug or release), but when I run the same executable in Renderdoc, it crashes somehow (assert of D2D rendertarget or without any information). Before I spend hours on debugging/ figuring it out, does someone have experience with this symptom and/or know if Renderdoc has known issues with D2D? (if so, that would be bad news for debugging my application in the future );

I can also post some more information on what happens, code and which code commented out, eliminates the problems (when running in RenderDoc).

Any input is appreciated.

Share this post


Link to post
Share on other sites
Advertisement

For bugs in the program itself it's better to file them on the renderdoc github rather than posting here - I only saw this topic by chance because a twitter bot posted it.

As it happens I fixed a bug recently since v1.0 was released related to D2D, so you could try a recent nightly build and see if it works now.

Share this post


Link to post
Share on other sites

Hi. Nice to meet the one responsible ;) 
Really love your application for debugging my 3d engine.

I just tried the nighly build dated 13th of May, unfortunately both test applications (using D2D), crash when I try to run them through renderdoc. When I comment out the D2D part, it doesn't crash. Some debugging learned me that it's somehow related to the D2D rendertarget, being nullptr/ invalid at some point. Creating the D2D/DirectWrite factories, brush etc. all works fine. I'll give it some more tests, if I figure it out, I'll let you know.

Share this post


Link to post
Share on other sites

@Baldur: I did some additional testing, in short:

- D2D RT BeginDraw = OK
- D2D RT DrawText = OK
- D2D RT EndDraw -> crashes the executable within Renderdoc
(no crash in VS debug, or debug EXE outside of VS)

I also tried to catch the HRESULT of the EndDraw call, but it seems to crash during the call itself, so doesn't finish it (and doesn't return a HRESULT). What would be the way to go to see if this is solvable? (didn't use GitHub earlier, but could dig into it for sure if needed :))

Share this post


Link to post
Share on other sites

Are you able to share your program with me, or do you know of another open sample that reproduces the same problem? If you want to get in touch off the board, my contact info is on the renderdoc github.

I have tested with D2D in the past and fixed issues that have come up, but it could easily be that something new has cropped up which I'll need to fix. To fix it though I need to reproduce the problem somehow.

Share this post


Link to post
Share on other sites

Sure, no problem. Not being on GitHub has no thought through reasons, just didn't see benefits yet. Currently on the job, I'll make a ZIP and put it on my FTP tonight (and send you the link, using contact details on GitHub).

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

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!