Comment définir chaque pixel non transparent dans un Texture2D arbitraire pour dire Color.White temporairement?C# XNA Comment définir un Texture2D sur une seule couleur?
Répondre
Juste une boucle conditionnelle? Ce ne sera pas la syntaxe exacte, mais quelque chose entre les lignes de:
Texture2D texture = /*copy the texture you want to change*/;
Pixel pixel;/*note it's really inexact, so don't mind it, the idea is to show how it would be done*/
for(int i=0; i<texture.width; i++)
{
for(int j=0; j<texture.height; j++)
{
pixel = texture.GetPixel(i, j);
if(pixel.Color.A==1)
pixel.Color = Color.White;
}
}
Je ne peux insister assez sur ce point: ne vous contentez pas de copier coller ce dans, ce qui est similaire à pseudocode, juste là pour montrer comment il serait fait.
ai pas testé, mais hors de ma tête, vous pourriez faire quelque chose comme ceci:
Color[] az = Enumerable.Range(0, 100).Select(i => Color.White).ToArray();
Texture2D texture = new Texture2D(GameRef.GraphicsDevice, 10, 10, false, SurfaceFormat.Color);
texture.SetData(az);
Ce premier crée un tableau avec 100 éléments, et il remplit de Color.White Ensuite, en utilisant la SetData, nous le remplissons avec le colorarray.
Assurez-vous que le tableau est la même taille que la taille de la texture (hauteur * largeur)
OP ne voulait pas définir * chaque * pixel, seulement les pixels opaques – MattDavey
- 1. Comment faire un Texture2D 50% transparent? XNA
- 2. XNA Rendu à Texture2D
- 3. Comment convertir une image emgu en un XNA Texture2D?
- 4. XNA: Polygone Source de Texture2D
- 5. Redimensionner et charger une texture2d dans XNA
- 6. Comment dessiner des caractères sur un Texture2D?
- 7. XNA nouveau Texture2D conserve les anciennes données
- 8. XNA Texture2D bug de recadrage
- 9. XNA tirage/peinture sur un Texture2D lors de l'exécution
- 10. Attribution d'un Texture2D à un Texture2D existant
- 11. Microsoft Xna Texture2D et la rotation
- 12. Sérialiser Texture2D par programmation dans XNA
- 13. xna wp7-essayant d'obtenir un texture2d de photoChooser
- 14. Faire pivoter un Texture2D avec la méthode Draw dans XNA?
- 15. XNA: Utilisation de Content.Load avec une sous-classe de Texture2D
- 16. XNA C# Créer un affichage tête haute
- 17. Comment définir une couleur pour une cellule sur un TableView?
- 18. Rendre des parties de Texture2D transparentes dans XNA
- 19. Comment puis-je obtenir et définir des données de pixels dans XNA?
- 20. Comment dessiner un cercle avec une couleur spécifique dans XNA?
- 21. C# sélection de souris XNA
- 22. C# Texture2D SetData ARGB?
- 23. Rendre le tampon à l'objet texture2D dans XNA
- 24. Comment définir une couleur d'arrière-plan sur un JLayeredPane?
- 25. Comment définir une vue orthographique dans xna?
- 26. XNA Framework: ContentManager.Content.Load <Texture2d> ("10by10tile") est une "méthode" mais est utilisé comme un 'type'
- 27. XNA Le contenu ne décharge pas les ressources jetables (Texture2D)
- 28. Comment isoler une seule couleur sur une image avec PHP?
- 29. Composant webcam en C# XNA
- 30. Charger tous les Texture2D dans un dossier
Voulez-vous dire que vous voulez réellement changer la texture? Ou simplement dessiner comme blanc? Si vous dessinez, vous pouvez utiliser un shader, [consultez cette réponse] (http://stackoverflow.com/questions/9598832/make-a-sprite-white-in-xna-4-0-w-simple- shader-alpha-issues/9600620 # 9600620), notez qu'il fait référence à un shader externe, mais ce n'est pas trop compliqué. –