Jump to content
Unity Insider Forum
dranoel06

Wie mache ich einen Button aus einem Sprite?

Recommended Posts

Hallo,

ich bin ziemlicher anfänger in Unity und möchte programmieren, dass wenn man einen  Sprite anklickt, eine scene gestartet wird.

Das ganze soll in 2D sein. Ich habe diesen Button schon gemacht und nun weiß ich nicht weiter.

Ich wäre über eine Antwort froh ;)

Share this post


Link to post
Share on other sites

Hallo 

 

Du musst die onclick Methode des buttons bearbeiten. Oder ist das ganze bisher nur ein sprite in der Szene? 

 

Christoph 

Share this post


Link to post
Share on other sites

Mir ist klar, dass ich die Buttons auch mit einem Coponenten machen kann. Diese Buttons gefallen mir vom Design aber nicht.

 

Darum möchte ich dies mit einem Sprite machen (der Sprite ist schon in der Scene).

Wenn man diesen Sprite anklickt soll eine andere scene laden.

Wüsstest du da was?

Share this post


Link to post
Share on other sites
vor 49 Minuten schrieb dranoel06:

Diese Buttons gefallen mir vom Design aber nicht.

Wenn du damit das Aussehen meinst: Dir ist schon klar, dass man das ändern kann, oder?

Ob du einen UI-Button oder ein Sprite in deiner Szene benutzt, sollte einzig davon abhängig sein, ob du die UI-Features benutzen willst. Das wären so Sachen wie Layouting oder eben einfacheres Implementieren von Reaktionen auf Knopfdrucke usw. Mit Aussehen hat das nix zu tun.

Share this post


Link to post
Share on other sites

Hallo

 

Doch. Dir wurden doch mindestens zwei Möglichkeiten genannt. Kannst natürlich auch die Mausklicks abfangen mit mousebuttondown und schauen, wo die Maus ist. Wenn sie sich auf deinem sprite befindet, führst du entsprechend aus. 

 

Christoph 

Share this post


Link to post
Share on other sites

Zieh das Script hier auf dein Sprite und ergänze noch das Laden deiner Szene (siehe Kommentar).
Es fügt automatisch noch einen 2D-Trigger-Collider dem Sprite hinzu da hierüber die Mauseingaben getriggert werden.

using UnityEngine;

// TriggerMouse requires the GameObject to have a BoxCollider2D component
[RequireComponent(typeof(BoxCollider2D))]
public class TriggerMouse : MonoBehaviour
{
    private void Awake()
    {
        BoxCollider2D boxCollider = GetComponent<BoxCollider2D>();
        boxCollider.isTrigger = true;
    }

    void OnMouseDown()
    {
        Debug.Log("Sprite " + gameObject.name + " was pressed.");
        // Lade deine Scene hier
        // SceneManager.LoadScene("deineScene");
    }
}

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...