Dans XNA, lorsque vous appelez Content.Load() pour charger dans une ressource, si vous chargez la même ressource dans plusieurs objets (la texture d'un projectile peut être multiple) obtenez-vous une copie pour chaque objet, ou est-ce que le système ne fait que référencer en interne la même mémoire pour chacun d'eux? Je réalisais qu'ayant un objet Texture2D séparé dans chaque élément peut être un problème de mémoire sur la ligne.XNA Content.Load() Utilisation de la mémoire
Répondre
ContentManager met en cache l'objet et renvoie la référence à cet objet lorsque vous essayez de le charger à nouveau.
Oui, la modification des données de texture modifie toutes les textures qui font référence à ces données.
Si vous en avez besoin de plusieurs, dupliquez le fichier d'origine et chargez différentes versions.
hmm pas une solution idéale ... pas moyen de copier les données des structures d'objet en mémoire? –
Vous auriez besoin de faire un nouvel objet Texture2D et de copier les données modifiées dans la nouvelle texture avec la méthode SetData:
http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.graphics.texture2d.setdata.aspx
- 1. Utilisation de la mémoire
- 2. Utilisation de system.windows.forms avec XNA
- 3. Utilisation de la mémoire + .net
- 4. Utilisation de la mémoire IronPython
- 5. Utilisation de la mémoire SQL
- 6. utilisation de la mémoire java
- 7. Utilisation de la mémoire dans la R
- 8. boost :: utilisation de la mémoire de fonction
- 9. utilisation de la mémoire de classe JavaScript
- 10. Utilisation de la mémoire de JBoss?
- 11. C++ comprendre CPU/utilisation de la mémoire
- 12. Libérer de la mémoire après utilisation
- 13. Utilisation actuelle de la mémoire en Lisp
- 14. Comet, responseText et utilisation de la mémoire
- 15. Utilisation de la mémoire Java BigDecimal?
- 16. DOM vs Array - utilisation de la mémoire
- 17. Utilisation de la mémoire Visual Studio 2005
- 18. C#: utilisation de la mémoire d'un objet
- 19. utilisation de la mémoire Reactive Extensions
- 20. Utilisation de la mémoire Settimeout et setinterval
- 21. utilisation de la mémoire Ruby/Rails
- 22. Utilisation de la mémoire/profilage en PHP
- 23. Spreadsheet :: Utilisation de la mémoire WriteExcel
- 24. Utilisation de la mémoire vidéo OpenGL
- 25. HttpContext.Cache Utilisation de la mémoire physique
- 26. Utilisation de la mémoire des résultats Mysqli
- 27. Utilisation de la mémoire VS. Utilisation du processeur dans l'iphone
- 28. utilisation mémoire java
- 29. Javascript mémoire Utilisation
- 30. Utilisation de la mémoire pendant la procédure de dessin
Donc, si je charge dans un Texture2D en 2 différents objets, puis modifier la données de texture dans un, est-ce que ça change pour les deux? –