[RESOLU][DB-AL] gestion des WebCamTexture

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
Master_Bruce_
Messages : 18
Inscription : 02 Oct 2017 14:51

[RESOLU][DB-AL] gestion des WebCamTexture

Message par Master_Bruce_ » 03 Oct 2017 17:47

Bonjour à tous,
Je débute sur Unity et je fais face à quelque soucis, le plus notable étant le message d'erreur classique suivant :
- "NullReferenceException: Object reference not set to an instance of an object
WebCam.Start () (at Assets/WebCam.cs:25)"

Voici le contexte :
Je suis actuellement en train de m'essayer aux WebCamTexture. Je souhaiterai afficher le rendu de ma Webcam en jeu.
De ce que j'ai compris, en suivant quelques petits tuto et matant 2-3 posts de forum, la class WebCamTexture me permet d'effectuer une telle manœuvre.

Cependant le message d'erreur présente ci-dessus s'affiche dans ma console lorsque je Run mon projet et bien sur je n'ai rien qui s'affiche.

Voici mon petit bout de code..

Code : Tout sélectionner

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class WebCam : MonoBehaviour
{
    public RawImage display;
    public WebCamTexture tex;

    public int numeroCamera = 1;


	// Use this for initialization
	void Start () {
        if (WebCamTexture.devices.Length < 0)
        {
            Debug.Log("No camera detected");
        }
        else
        {
            Debug.Log("Camera detected");
            WebCamDevice device = WebCamTexture.devices[numeroCamera];
            tex = new WebCamTexture(device.name);
            display.texture = tex;
            tex.Play();
        }
	}
}

Pourrais-je un simple petit coup de pouce svp?
En vous remerciant d'avance de votre aide..

Bruce
.
 ! Message de : Max
Utilisez les balises code SVP
Merci de lire la Netiquette.

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

Re: [DB-AL] gestion des WebCamTexture

Message par boubouk50 » 04 Oct 2017 09:46

Salut,

"NullReferenceException: Object reference not set to an instance of an object WebCam.Start () (at Assets/WebCam.cs:25)"
veut dire:
tentative d'accès à un objet inconnu dans le Start () de la classe WebCam à la ligne 25.

Ligne 25 (si j'ai bien compté): display.texture = tex;
display est une variable publique -> A-t-elle été renseignée dans l'Inspector?
"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

Master_Bruce_
Messages : 18
Inscription : 02 Oct 2017 14:51

Re: [DB-AL] gestion des WebCamTexture

Message par Master_Bruce_ » 04 Oct 2017 10:33

Tout d'abord merci de ton retour !

J'ai vérifié et effectivement je n'avais pas renseigné la rawImage dans l'inspector.
Maintenant que c'est chose faite ça fonctionne ! J'ai bien le rendu de ma camera sur ma RawImage,

Cependant, le message d'erreur persiste toujours et au même endroit.
Cela doit surement venir de ma WebCamTexture tex? Elle n'est "assigné" à aucun GameObject

Voici une petite capture :
Image

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

Re: [DB-AL] gestion des WebCamTexture

Message par boubouk50 » 04 Oct 2017 10:46

Elle n'est pas renseignée au départ car elle ne peut exister en dehors du runtime (la webcam n'est pas prise en compte), donc cela est normal qu'elle soit vide.
Ton code va chercher la webcam et créer une texture avec son rendu qu'il va affecter à tex.
Es-tu bien sur que c’est la même erreur? Si display est renseigné, ce n'est pas possible mis à part si ce script a été assigné plusieurs fois et qu'un des scripts ne renseigne pas display.
"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

Master_Bruce_
Messages : 18
Inscription : 02 Oct 2017 14:51

Re: [DB-AL] gestion des WebCamTexture

Message par Master_Bruce_ » 04 Oct 2017 11:33

Effectivement le problème venait du fait que le Script était raccordé à plusieurs élément du Canvas.
Je n'ai plus le message d'erreur et la camera !

Maintenant je vais voir comment j'enregistre la photo et comment je peux lancer une impression !

Merci beaucoup de ton aide !

En ce qui me concerne le problème est résolu :)

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

Re: [Résolu][DB-AL] gestion des WebCamTexture

Message par boubouk50 » 04 Oct 2017 11:45

Tu n'as surement pas besoin de plusieurs occurrences de ce script, n'en garde qu'un, sinon c'est gourmand en ressources.
"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

Répondre

Revenir vers « (C#) CSharp »