IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Unity Discussion :

Exporter une image dans le dossier d'un exécutable


Sujet :

Unity

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 32
    Points
    32
    Par défaut Exporter une image dans le dossier d'un exécutable
    Bonjour,

    J'ai un script c# dans un projet Unity dans lequel une fonction prend comme paramètre une variable string. Cette variable est le nom d'une image .jpg que j'ai dans le répertoire principal du projet. Après avoir exporté le projet sous forme .exe (PC), la fonction en question s'exécute sans prendre en considération l'image .jpg.
    Y a t-il une façon s'il vous plaît pour résoudre ce problème (j'ai essayé de copier l'image dans le dossier Assets mais ça ne servait à rien).
    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Greg Latiner
    Homme Profil pro
    Développeur JV
    Inscrit en
    Février 2014
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : Développeur JV

    Informations forums :
    Inscription : Février 2014
    Messages : 341
    Points : 1 313
    Points
    1 313
    Par défaut
    J'espère avoir saisi ta question. En standalone sur PC, le repertoire 'Asset' n'existe plus.
    Ton répertoire par défaut Application.dataPath devient alors XXX_Data si ton exe s'appelle XXX.exe.

    Si en mode éditeur tu as par exemple Assets/media/image.jpg alors en mode exe il faudra avoir XXX_Data/media/image.jpg (je ne sais pas si je suis clair).

    Après, pour mieux aider, fournis le bout de script qui te permet de charger ton image....

  3. #3
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    La réponse donnée là fonctionne : http://answers.unity3d.com/questions...from-file.html
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 32
    Points
    32
    Par défaut
    Bonjour,
    Merci Greg pour votre réponse.
    Citation Envoyé par Greg Latiner Voir le message
    Si en mode éditeur tu as par exemple Assets/media/image.jpg alors en mode exe il faudra avoir XXX_Data/media/image.jpg (je ne sais pas si je suis clair).
    Je l'ai essayé mais l'image est toujours non chargée.

    Après, pour mieux aider, fournis le bout de script qui te permet de charger ton image.... ;)
    Voici le code C# qui importe une dll et fait appel à la fonction qui doit charger l'image

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
               string img = "Bg.jpg";
    	   [DllImport ("OpencvDll")]
    	   private static extern void incrusterLesFgs(int nbr,string str);
    	   void Start () {
               incrusterLesFgs(nbFichiersJPG,img);
              }
    La fonction dans la dll (C++) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
              void  EXPORT_API incrusterLesFgs(int nbr, const char* BG)
              {
                cv::Mat background = imread(BG,1);
                ...  
              }
    Merci pour votre aide :)

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par MoDDiB Voir le message
    La réponse donnée là fonctionne : http://answers.unity3d.com/questions...from-file.html
    Merci MoDDiB pour la réponse. Il ne s'agit pas ici de charger une texture.

  6. #6
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Oulà oui j'ai répondu à coté

    En mettant le chemin complet ( "c://test.jpg" ) par exemple.
    Cela fonctionne t il ?
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  7. #7
    Membre expérimenté
    Avatar de Greg Latiner
    Homme Profil pro
    Développeur JV
    Inscrit en
    Février 2014
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : Développeur JV

    Informations forums :
    Inscription : Février 2014
    Messages : 341
    Points : 1 313
    Points
    1 313
    Par défaut
    Citation Envoyé par manoulaisamm Voir le message
    Voici le code C# qui importe une dll et fait appel à la fonction qui doit charger l'image...
    Arff, voilà une info qui pourrait avoir son importance.
    Le soucis n'est pas nécessairement lié au path fournis pour votre image, mais à votre DLL, non trouvée en exe (DLLs dans Plugins dans l'éditeur ? que dit le debuglog de votre executable ? )

  8. #8
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par MoDDiB Voir le message
    En mettant le chemin complet ( "c://test.jpg" ) par exemple.
    Cela fonctionne t il ?
    Sur ma machine ça fonctionne bien mais quand je teste l'exécutable sur une autre machine se pose un autre problème :

    Citation Envoyé par Greg Latiner
    Le soucis n'est pas nécessairement lié au path fournis pour votre image, mais à votre DLL, non trouvée en exe (DLLs dans Plugins dans l'éditeur ? que dit le debuglog de votre executable ? )
    Oui vous avez raison mais comme j'ai déjà mentionné, en passant le chemin absolu ça fonctionne sur ma machine. Ce que j'ai conclu en testant sur une autre machine est que la DLL n'est pas trouvée (elle existe dans le dossier Plugins exporté avec l'exécutable). Donc le problème maintenant est dans le chargement de la DLL, afin que je puisse tester le chargement de l'image sur une autre machine.
    Comment avoir le debuglog dans l'exécutable s'il vous plaît?
    Merci infiniment

  9. #9
    Membre expérimenté
    Avatar de Greg Latiner
    Homme Profil pro
    Développeur JV
    Inscrit en
    Février 2014
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : Développeur JV

    Informations forums :
    Inscription : Février 2014
    Messages : 341
    Points : 1 313
    Points
    1 313
    Par défaut
    Citation Envoyé par manoulaisamm Voir le message
    Comment avoir le debuglog dans l'exécutable s'il vous plaît?
    Il vous faut passer par la class Debug qui va vous permettre de faire des messages de sortie. Le fichier généré est output_log.txt qui se trouvera dans ton répertoire xxx_Data..
    Vous pouvez même générer votre appli en cochant l'option Development Build dans le build setting, ce qui en plus permettra d'avoir la console durant l'exe.
    Aspect vital que revêt cet aspect du dev (si je puis me permettre)

    Pour ce qui est du problème de DLL, pour être sûr de comprendre, la version StandAlone une fois compilée fonctionne-t-elle bien sur votre machine ?
    ( le soucis se situant uniquement sur d'autres PC )

  10. #10
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par Greg Latiner Voir le message
    Pour ce qui est du problème de DLL, pour être sûr de comprendre, la version StandAlone une fois compilée fonctionne-t-elle bien sur votre machine ?
    ( le soucis se situant uniquement sur d'autres PC )
    Oui, elle fonctionne bien. D'après mes recherches sur google, j'ai constaté que le problème est au niveau de la création de la DLL sous Visual C++. En fait, les autres PC n'ont pas la bibliothèque OpenCV installée ce qui ne leur permet pas d'exécuter ses fonctions. S'il s'agit du vrai problème, j'arrive pas à trouver comment "redistribuer la bibliothèque OpenCV avec la dll Visual C++" et qu'est qu'on veut dire par "déployer" des applications OpenCV.

    Pourriez vous m'aider s'il vous plaît? (je m'excuse si je ne suis plus dans le bon forum)
    Merci encore une fois.

  11. #11
    Membre expérimenté
    Avatar de Greg Latiner
    Homme Profil pro
    Développeur JV
    Inscrit en
    Février 2014
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : Développeur JV

    Informations forums :
    Inscription : Février 2014
    Messages : 341
    Points : 1 313
    Points
    1 313
    Par défaut
    Bonjour,

    Citation Envoyé par manoulaisamm Voir le message
    qu'est qu'on veut dire par "déployer" des applications OpenCV
    déployer une appli, pour résumer, c'est permettre à partir d'un package d'installer tous les éléments permettant de garantir le bon fonctionnement d'une application sur un système.

    Là, je ne suis pas vraiment spécialiste de ce domaine. Affectivement certaines appli demandent que certaines lib soient installées, car utilisées par les outils de production Microsoft (comme Visual Studio). Maintenant, n'est-il pas possible de vous baser sur une version d'OpenCV s'affranchissant de cela ? (ce qui semble possible si je lit bien le lien fournis, même si il semble dater un peu...).

  12. #12
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Autre

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par Greg Latiner Voir le message
    Maintenant, n'est-il pas possible de vous baser sur une version d'OpenCV s'affranchissant de cela ? (ce qui semble possible si je lit bien le lien fournis, même si il semble dater un peu...).
    Bonjour,
    Oui je n'ai pas fait attention qu'il parle des anciennes versions, je travaille avec la version 2.4.8; quelle est la solution alors ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 30/08/2009, 00h01
  2. [Débutant]charger une image dans un dossier
    Par kinon dans le forum ASP.NET
    Réponses: 1
    Dernier message: 26/02/2009, 02h18
  3. Stocker une image dans un dossier de mon projet
    Par naima2005 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 17/01/2008, 12h01
  4. Copier une image dans un dossier
    Par L'aigle de Carthage dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 02/05/2007, 19h54
  5. Placer une image dans un dossier où qu'elle soit
    Par st0nky dans le forum Langage
    Réponses: 2
    Dernier message: 04/12/2005, 21h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo