It is possible, with the Direct3D9ex, to share resources between devices. Is it also possible to use those shared resources with Direct3D10 devices?
It is possible, with the Direct3D9ex, to share resources between devices. Is it also
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Yes, you can share resources between D3D9Ex and D3D10 devices using the technique described here:
Feature Summary (Direct3D 9 for Windows Vista) – Sharing Resources
Note that GPU access to shared surfaces is not synchronized – for example, if you render to the same render surface on two devices simultaneously, expect all sorts of corruptions and races.
To work around it, make sure one device is completed rendering to the shared surface before the other one uses it. One option is event query (IDirect3DQuery9) , the other is doing a StretchRect to a small surface and Lock it (if Lock succeeds, GPU completed all previous work)