Il est possible, avec Direct3D9ex, de partager des ressources entre des périphériques. Est-il également possible d'utiliser ces ressources partagées avec des périphériques Direct3D10?Partage de ressources Direct3D9ex et Direct3D10
Répondre
Oui, vous pouvez partager des ressources entre D3D9Ex et dispositifs D3D10 selon la technique décrite ici:
Feature Summary (Direct3D 9 for Windows Vista) - Sharing Resources
Notez que l'accès GPU aux surfaces partagées n'est pas synchronisé - par exemple, si vous restituez à la même surface rendre sur deux dispositifs simultanément, s'attendre à toutes sortes de corruptions et de courses. Pour contourner ce problème, assurez-vous qu'un périphérique est en cours de rendu sur la surface partagée avant que l'autre ne l'utilise. Une option est la requête d'événement (IDirect3DQuery9), l'autre fait un StretchRect à une petite surface et le verrouille (si Lock réussit, le GPU a terminé tous les travaux précédents)
Quelqu'un me corriger si je me trompe, mais, Non et Non
Qu'est-ce que vous avez l'intention? Avoir une texture statique sur deux appareils? Si c'est le cas, vous pouvez facilement le faire en chargeant deux fois la même texture dans les deux pools par défaut. Sachez simplement que modifier un ne modifiera pas nécessairement l'autre.
Si vous essayez de partager une texture gérée sur deux périphériques, je ne pense pas que ce soit réalisable avec n'importe quel type de contrôle. SLI pourrait le faire derrière la scène, mais vous n'aurez aucun contrôle sur elle.
Si vous souhaitez utiliser explicitement une texture générée à partir d'un périphérique sur l'autre périphérique, vous devrez le télécharger depuis le périphérique source et le télécharger sur le périphérique cible à chaque image. Ce sera lent mais si absolument nécessaire, cela peut être fait de cette façon.
Vous pouvez partager des ressources Direct3D9 entre des périphériques ou des processus.
Feature Summary (Direct3D 9 for Windows Vista) - Sharing Resources
Une technique similaire fonctionne pour les ressources Direct3D10 (vous spécifiez également la poignée de partage). Ce GameDev.net topic traite du partage entre D3D9Ex et D3D10 en détail. Les conclusions dans ce sujet semblent être que, bien que basé sur la documentation, il devrait être possible (avec certaines limitations), dans la pratique, il ne fonctionne pas du tout (peut-être les restrictions sont-elles sévères?)
- 1. Partage de ressources entre frères et sœurs
- 2. Partage de ressources matérielles avec les clients du service WCF
- 3. Partage de modèles avec Rails et Javascript
- 4. Partage de l'authentification entre ASP.NET et WordPress
- 5. Partage de mémoire entre CGImageRef et UIImage
- 6. jBPM + partage de transactions Spring et portée
- 7. Comment consolider l'application de plusieurs rails et partager les ressources
- 8. les meilleures ressources pour s'impliquer dans le projet de partage de fichiers p2p
- 9. Fichiers multilingues et ressources
- 10. Dossiers de création et de ressources Xcode
- 11. Fichiers de ressources et assemblages de satellites
- 12. partage de fichiers ftp
- 13. De bonnes introductions et ressources pour gettext?
- 14. db4o Outils et ressources de développement?
- 15. question sur EJB et injection de ressources
- 16. ILMerge et les ressources Web
- 17. VS2008 Express Editions et ressources
- 18. comment déconnecter un partage de partage Windows par IP connu?
- 19. python gestionnaire de multiprocessing et partage de modèles composites
- 20. Besoin de partage de fichiers cloud avec API et sécurité
- 21. Visual Studio - Partage des ressources (CSS/JS/Images) entre les projets web
- 22. Partage d'objets
- 23. Fournisseur de profil de partage
- 24. Mono - code de partage sur le client et le serveur. .
- 25. Partage de la logique entre le navigateur et le serveur
- 26. Partage de fichiers entre Silverlight et "plain vanilla" .Net
- 27. Partage de session cookie Rails et problème "www.example.com" ou "example.com"
- 28. Partage du système de connexion entre ASP classique et ASP.Net
- 29. sessions de partage entre navigateurs et flex air
- 30. Déploiement ClickOnce à partir d'un partage réseau et de paramètres