[Résolu]Remplacer chemin local par un string

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Avatar de l’utilisateur
stigma
Messages : 1400
Inscription : 17 Nov 2012 18:29
Localisation : Perdu dans les mondes de Myst
Contact :

[Résolu]Remplacer chemin local par un string

Message par stigma » 26 Août 2019 10:59

Bonjour,
Je ne suis pas très à l'aise avec le C# mais j'ai un petit souci. Je voudrais remplacer la ligne "C:/Users/alain/AppData/LocalLow/DefaultCompany/test/ScreenInventaire.png"
Par une chaîne qui contient la ligne ci-dessus. J'ai créé ma variable "texture" précédemment (Playmaker). Je dois faire ça car le user "alain" sera différent suivant le joueur bien sûr.
D'habitude j'utilise Playmaker mais je n'ai rien trouvé qui fasse cela. Le site Huton Games de Jean ne répond pas souvent.
Je pense que c'est assez simple à faire (pour vous )
Merci

Code : Tout sélectionner

using UnityEngine;
using System.Collections;
using System.IO; // namespace to use File.ReadAllBytes
 
public class LoadLocalTexture : MonoBehaviour {
 
    string filePath;     

    public byte[] fileData; // load data inside a byte array 0x89,0x50,0x4E,0x47,0x0D...
 
    public void Start() {
 
         filePath = "C:/Users/alain/AppData/LocalLow/DefaultCompany/test/ScreenInventaire.png";                   // the path of the image
         fileData = File.ReadAllBytes(filePath);              // 1.read the bytes array
         Texture2D tex = new Texture2D(2, 2);                 // 2.create a texture named tex
         tex.LoadImage(fileData);                             // 3.load inside tx the bytes and use the correct image size
         GetComponent<Renderer>().material.mainTexture = tex; // 4.apply tex to material.mainTexture 
    }
}
Dernière édition par stigma le 26 Août 2019 14:52, édité 1 fois.

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Remplacer chemin local par un string

Message par boubouk50 » 26 Août 2019 13:28

Il te faut passer par les chemins déjà prédéfinis qu'Unity a mis en place, et pas forcément celui que tu as décidé. En l'occurrence: https://docs.unity3d.com/ScriptReferenc ... aPath.html
-> %userprofile%\AppData\Local\Packages\<productname>\LocalState.
Il a été déterminé pour pouvoir stocker des données entre 2 parties.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Avatar de l’utilisateur
stigma
Messages : 1400
Inscription : 17 Nov 2012 18:29
Localisation : Perdu dans les mondes de Myst
Contact :

Re: Remplacer chemin local par un string

Message par stigma » 26 Août 2019 14:52

ça à enfin marché grâce à toi !:kiss2:

J'ai remplacé la ligne par

Code : Tout sélectionner

  filePath = Application.persistentDataPath + "/ScreenInventaire.png";
Merci boubouk

Je fais une pause, je pars pour la plage.

Répondre

Revenir vers « (C#) CSharp »