• Benvenuto in Making Videogames!
  • Dai sfogo alla tua fantasia!
  • Crea il tuo Videogioco!
Benvenuto ospite! Login Registrati




Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
Un piccolo aiuto per Unity 3D?
#1
Ciao a tutti ragazzi.
Colgo l'occasione per salutare tutti dopo una mia lunga assenza dal Forum (dovuta ad impegni scolastici).
Vorrei chiedervi un favore riguardante Unity 3D.
Mi servirebbe uno o più script per far apparire delle seguente di immagini sullo schermo prima di far partire la vera e propria "Scena" (come se fosse un'introduzione). Al click di un pulsante l'immagine lascia il posto alla successiva fino ad arrivare alla scena. Ho provato a scrivere qualche Script ma non sono riuscito a raggiungere il mio obiettivo. Qualcuno può aiutarmi?
Grazie mille a tutti. Smile
 
Rispondi
#2
Dunque, ti serve uno script che quando clicchi su un bottone con il mouse cambia l'immagine?
Crea un oggetto vuoto con solo uno spriterenderer. Applica la prima immagine allo spriterenderer, e posiziona l'oggetto in modo che "copra" la scena principale. Potresti anche fare con due scene diverse, che quando le immagini sono finite il gioco carica la scena principale, ma non cambia molto. Ora crea un'oggetto contenente uno spriterenderer con il tasto da premere. Aggiungici un collider, di qulaunque tipo. Posizionalo dove più ti aggrada Smile

Attacca questo script all'oggetto del tasto:
Codice:
using UnityEngine;
using System.Collections;

public class SwitchBackgound : MonoBehaviour
{

    public GameObject sfondo; //questo è l'oggetto sfondo

    public Sprite frame1; //queste sono le immagini che si scambieranno con la prima
    public Sprite frame2; //io ne ho messe tre, puoi aggiungerne o toglierne a piacimento
    public Sprite frame3;

    private int counter = 0;

    void OnMouseDown()
    {
        if (counter == 0)
        {
            sfondo.GetComponent<SpriteRenderer>().sprite = frame1;
            counter++;
        }

        else if (counter == 1)
        {
            sfondo.GetComponent<SpriteRenderer>().sprite = frame2;
            counter++;
        }
        else if(counter == 2)
        {
            sfondo.GetComponent<SpriteRenderer>().sprite = frame3;
            counter++;
        }
       else if(counter == 3)
       {
        Destroy(sfondo.gameObject);
        Destroy(gameObject);
       }
   }
}

E' un pò grezzo, ma dovrebbe funzionare lo stesso Smile
Ora nell'inspector nella variabile sfondo dello script selezioni l'oggetto contenente la prima immagine, poi nelle variabili frame1, 2 e 3 ci metti le immagini che vuoi che si scambino con la prima.

Prova a vedere se va Smile
 
Rispondi
  


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
  Cerco aiuto per applicazione 3D Manuel_89 1 186 09-02-2018, 03:04 PM
Ultimo messaggio: Matteoxt24mt
  aiuto unity 3d pulsante h per help carlomanzino 3 307 18-05-2017, 04:23 PM
Ultimo messaggio: alessiobb3b
  Teletrasportare un oggetto su unity 3d? zodanilbello 25 2,272 04-01-2015, 10:25 PM
Ultimo messaggio: zodanilbello
  Come potrei creare dialoghi su Unity 3D? Biagino 3 1,214 13-09-2014, 01:08 PM
Ultimo messaggio: Chip
  Problema Unity 3D/ Sketchup xSprinthardx 4 1,255 23-03-2014, 12:35 PM
Ultimo messaggio: Black96
  UNITY 3D. far galleggiare il player? leirbag99 4 1,133 29-07-2013, 09:33 AM
Ultimo messaggio: xGiovi9810x
  Problema di apertura con unity 3d GibboSKQ 7 1,312 01-04-2013, 04:05 AM
Ultimo messaggio: echo_92
  Aiuto creazione modelli in .fbx per unity mark99 3 1,082 30-01-2013, 05:10 PM
Ultimo messaggio: war10hacker
  Unity 3d Aiuto script kaosmoda 5 970 07-12-2012, 12:30 PM
Ultimo messaggio: Exorcist

Vai al forum:


Browsing: 1 Ospite(i)