L'unité c#, prendre une capture d'écran et l'enregistrer en format jpg
Je suis en train de Prendre un screencapture et l'enregistrer dans un fichier au format jpg. Je suis la suite de cet exemple.
http://docs.unity3d.com/ScriptReference/Texture2D.EncodeToPNG.html
C'est ce que j'ai à ce jour:
string jpgFile = Application.persistentDataPath + "/scrn-1.jpg";
Texture2D tex = new Texture2D (Screen.width, Screen.height);
tex.ReadPixels (new Rect(0, 0, Screen.width, Screen.height), 0, 0);
tex.Apply ();
var bytes = tex.EncodeToJPG();
Destroy (tex);
System.IO.File.WriteAllBytes(jpgFile, bytes);
J'ai trouvé que l'exécution de cette Unité sur iOS me donne:
JPEG paramètre struct incompatibilité: bibliothèque pense que la taille est 372, appelant attend 360
Cependant si je change la conversion de tex.EncodeToPNG(); et de modifier le nom de fichier .png tout fonctionne bien. Je ne suis pas sûr de savoir comment procéder à toute aide serait appréciée. Merci.
Avez-vous aussi essayé en Game Dev Exchange?
Je n'ai pas. Je vais essayer d'en obtenir un duplicata sur un peu plus de temps. Merci.
Vous avez marqués ce avec ios', donc je suppose que vous êtes en cours d'exécution sur un Apple appareil de poche d'un peu de variété.. Avez-vous essayé d'appuyer sur la maison et les boutons d'alimentation en même temps? 😉
Haha j'ai besoin d'être capable de tout faire par programmation. Je vais passer ce fichier image à la fois Android et iOS code natif après sa création. Merci pour vos commentaires. Je vais ajouter les autres tag.
Je suis en supposant que l'Unité est construite dynamiquement contre
Je n'ai pas. Je vais essayer d'en obtenir un duplicata sur un peu plus de temps. Merci.
Vous avez marqués ce avec ios', donc je suppose que vous êtes en cours d'exécution sur un Apple appareil de poche d'un peu de variété.. Avez-vous essayé d'appuyer sur la maison et les boutons d'alimentation en même temps? 😉
Haha j'ai besoin d'être capable de tout faire par programmation. Je vais passer ce fichier image à la fois Android et iOS code natif après sa création. Merci pour vos commentaires. Je vais ajouter les autres tag.
Je suis en supposant que l'Unité est construite dynamiquement contre
libjpeg
, si c'est le cas, les questions ne résout pas jusqu'à ce que l'Unité aura sorti un fix(êtes-vous à jour?). Aussi, est-il une raison pour laquelle vous ne pouvez pas utiliser .png?OriginalL'auteur running-codebase | 2014-10-06
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé cette, qui vous permet de l'enregistrer en tant que .jpg. J'ai l'habitude de simplement utiliser capture d'écran et enregistrer sous .png.
Ici, vous allez:
Si vous voulez juste tout type de photo, je recommande fortement ce:
Simple et efficace.
OriginalL'auteur FunctionR
J'ai en fait besoin de quelque chose comme cela dans ces aujourd'hui, mais pas de l'enregistrer.
L'unité n'est pas nous fournir une méthode par défaut pour rétablir l'image instantanément comme un octet, c'est comment j'ai résolu mon problème.
Utilisation:
OriginalL'auteur DreTaX