0
votes

Unity C # pouvez-vous changer de caméra dans la scène sans désactiver l'une des caméras?

J'ai deux caméras dans une scène et je souhaite basculer entre elles sans les désactiver. Est-il possible? Si c'est le cas, pouvez-vous montrer comment cela se fait? Merci


2 commentaires

Pourquoi ne voudriez-vous pas le désactiver? Laissant cela permis juste gaspille des cycles GPU rendant quelque chose qui ne sera pas vu.


Vous auriez une application à trois ports 1) Connexion à la caméra 1 2) Connexion à la caméra 2 3) Sortie vers la scène. Votre application prendra l'une des caméras comme entrée et l'enverra à la scène.


3 Réponses :


5
votes

Un bon moyen d'utiliser différentes caméras et de gérer les transitions consiste à utiliser le package Cinemachine créé par Unity. Dans l'animation suivante, je passe d'une caméra virtuelle à l'autre en changeant leur priorité.

 Basculer entre 2 caméras Virtual Cinemachine en modifiant leur priorité.

  1. Créez une nouvelle scène vide avec la caméra par défaut.
  2. Ajoutez une sphère au centre de la scène. Ce sera l'objet que nous voulons regarder avec nos caméras. Peut-être aussi ajouter un plan sous la sphère comme dans l'image ci-dessus, pour l'orientation.
  3. Allez dans Window-> Package Manager. Recherchez Cinemachine et installez-le.
  4. Sélectionnez l'objet de jeu de la caméra principale actuel dans votre scène et ajoutez un composant CinemachineBrain.
  5. Il existe une nouvelle entrée dans le menu principal appelée Cinemachine. Sélectionnez "Créer une caméra virtuelle" deux fois. Deux objets de jeu avec un script "Cinemachine Virtual Camera" seront ajoutés. Le composant CinemachineBrain agit en tant que coordinateur pour ces caméras virtuelles.
  6. Positionnez les deux caméras virtuelles dans votre scène et faites glisser la sphère dans la propriété "Regarder" des deux caméras virtuelles.
  7. Si vous démarrez le projet, la première caméra virtuelle sera active. Vous pouvez augmenter la propriété "Priority" de la deuxième caméra virtuelle et la vue passera à la deuxième caméra. Vous pouvez également désactiver la première caméra virtuelle.
  8. Cinemachine est très puissant. Vous pouvez modifier les transitions entre les caméras virtuelles dans le composant CinemachineBrain. Sélectionnez un autre "mélange par défaut" ou ajoutez des "mélanges personnalisés" pour les transitions.
  9. Consultez quelques tutoriels officiels Cinemachine pour libérer toute leur puissance.

0 commentaires

0
votes

Un moyen très simple consiste à désactiver uniquement le composant caméra . J'ai eu une scène avec 6 caméras avec un post-traitement différent, l'un de mes plugins AA faisait planter le jeu après avoir désactivé l'objet caméra, puis j'ai essayé de désactiver uniquement Composant caméra .

Maintenant ça marche très bien :)

la deuxième pensée est simplement de supprimer et d'ajouter le composant caméra aux objets caméra à l'aide d'un script.


0 commentaires

0
votes

Que diriez-vous de changer le Tag sur les caméras. Habituellement, la mainCam a la balise MainCamera. Je ne sais pas si cela fonctionne bien ..


0 commentaires