Proposer à l'utilisateur de mettre une photo en arrière plan d'un jeu appli

Toutes les questions sur le développement Mobile, y compris la partie script.
baloulipe
Messages : 16
Inscription : 03 Sep 2015 10:28

Proposer à l'utilisateur de mettre une photo en arrière plan d'un jeu appli

Message par baloulipe » 19 Juin 2020 14:51

Hello la communauté.
Petite question pour la création d'une appli futur. J'étudie les faisabilités et pour bien décrire mon idée:
Je veux donc créer un mini jeu de tire mobile en 2D où les gens auront la possibilité d'uploader une image de leur choix en arrière plan. En gros, au lieu d'avoir un décors en arrière plan, ils choisissent quelle image ils veulent voir. Donc je veux mettre un système de upload de photos présentes dans le mobile et aussi un système où on prend une photo du décors où on se trouve et mettre ça en arrière plan du jeu.
Est ce possible et comment puis je faire.
Merci la communauté

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

Re: Proposer à l'utilisateur de mettre une photo en arrière plan d'un jeu appli

Message par boubouk50 » 19 Juin 2020 15:17

Salut Baloulipe.

Réponse courte:
- Oui. Je l'ai eu fait il y a déjà bien 4-5 ans.
Réponse moins courte:
- J'avais utilisé un plugin Android/iOS qui permettait d'accéder à la galerie d'images et/ou à l'appareil photo, qui me renvoyait une image. Ensuite, je créais une texture à partir de cette image que j'appliquais à une RawImage. Enfin, je calculais la dimension de la RawImage depuis la dimension de l'image retournée, pour qu'elle soit dans le bon aspect ratio et caler les bords.
"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

baloulipe
Messages : 16
Inscription : 03 Sep 2015 10:28

Re: Proposer à l'utilisateur de mettre une photo en arrière plan d'un jeu appli

Message par baloulipe » 19 Juin 2020 15:30

boubouk50 a écrit :
19 Juin 2020 15:17
Salut Baloulipe.

Réponse courte:
- Oui. Je l'ai eu fait il y a déjà bien 4-5 ans.
Réponse moins courte:
- J'avais utilisé un plugin Android/iOS qui permettait d'accéder à la galerie d'images et/ou à l'appareil photo, qui me renvoyait une image. Ensuite, je créais une texture à partir de cette image que j'appliquais à une RawImage. Enfin, je calculais la dimension de la RawImage depuis la dimension de l'image retournée, pour qu'elle soit dans le bon aspect ratio et caler les bords.
Merci pour cette réponse. Est ce que tu avais créé ce script ou est ce que tu l'avais eu dans l'assets store?

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

Re: Proposer à l'utilisateur de mettre une photo en arrière plan d'un jeu appli

Message par boubouk50 » 19 Juin 2020 16:20

J'ai développé le script, oui, à partir de l'image renvoyée par le plugin.
"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
ZeroKcm
Messages : 175
Inscription : 09 Juil 2013 21:16

Re: Proposer à l'utilisateur de mettre une photo en arrière plan d'un jeu appli

Message par ZeroKcm » 29 Juin 2020 15:12

Hello,

Le plus simple serait d'activer l'appareil photo du smartphone et d'afficher la camera sur une RawImage.
Ensuite, tu sauves cette image en local.

Je l'ai fait plein de fois, ça marche très simplement.

Tu actives la camera et tu l'envoies sur une RawTexture :

Code : Tout sélectionner

WebCamDevice[] devices = WebCamTexture.devices;
if (devices.Length > 0)
{
    webcamTexture = new WebCamTexture(1024, 1024);
    ecranWebCam.texture = webcamTexture;
    webcamTexture.Play();
}
Quand l'utilisateur prend la photo, tu sauves l'image

Code : Tout sélectionner

Texture2D img = GetTexture2D(webcamTexture.GetPixels32(), webcamTexture.width, webcamTexture.height, reverseScreen);

byte[] bytes = img.EncodeToPNG();

string filename = "photo.png";

BinaryWriter bwStream = new BinaryWriter(new FileStream(Data.CacheDirectory + filename, FileMode.Create));
bwStream.Write(bytes);
bwStream.Close();

Répondre

Revenir vers « Développement plateformes mobile Iphone et Android »