Jump to content
Unity Insider Forum

3D Text verändern per Skript


Starninchen

Recommended Posts

Hallo zusammen :D

Wie kann ich einen 3D Text per Skript verändern? Ih habe schon einiges versucht will aber nicht klappen.

Da ich das Objekt nicht direkt verändere sondern es ist das Kind eines Kind-Objektes.

Ich habe es u.a. so versucht.

  function Start () 
{
var hand = GameObject.Find("Slot1/Text1A");
hand = GetComponent(TextMesh).text = "Hello";
}

 

StarmanRoyal

Link zu diesem Kommentar
Auf anderen Seiten teilen

ja du hast rechts das "as TextMesh" braucht man nicht :)

 

Zu einem anderen Problem.

Und zwar will ich ja Zahlen anzeigen lassen dazu konvertiere ich Zahlen zu einem String, das funktioniert auch

ganz gut, aber nur wenn ich die erste Zeile weg lasse ;)

 

In der erstzen Zeile der For wird jede Zahl zu einem String umgewandelt so das der gesammt String der dritten Zeile der Find

jedes mal einen der vier Slots anspricht. Doch das will nicht funktionieren, es liegt allein an der ersten Zeile, da zb

im String "StringZahl" bauschal der String "2" gespeichert ist.

    for (var i=0;i<wieOft;i++) 
   {
       StringZahl= i.ToString();
       var MengeString = Mengen[MengeNR].ToString();
       var abc = GameObject.Find("Slot"+StringZahl+"/TextA");
       (abc.GetComponent(TextMesh)).text = MengeString;

   }

 

StarmanRoyal icon-fox.gif

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die Klammern um

abc.GetComponent(TextMesh)

brauchst Du nicht.

 

Des Weiteren:

Javascript sieht das mit den Datentypen sehr locker.

Als Konsequenz muss man, um eine Zahl in einen String zu konvertieren nichts weiter tun als einen String anzubamseln, z.B.:

(abc.GetComponent(TextMesh)).text = ""+Mengen[MengeNR];

 

Da sparst Du Dir erstmal Stress mit.

Link zu diesem Kommentar
Auf anderen Seiten teilen

...Da sparst Du Dir erstmal Stress mit.

Cool, Danke :lol:

 

Aber noch ne andere Frage und zwar. Wie lade ich die Daten wieder aus einem 3D Text heraus?

Jeder Slot (zb Slot1) soll untersuchen welchen Inhalt (Zahl) sein Kind hat und darauf reagieren.

Der ansatzt ist der selbe

 def = GameObject.Find("TextA");

 

Habs mal plump versucht :lol: aber es überträgt nur einen String von 0 und nicht 1 der eigentlich drin sein sollte :lol:

Wort = def.GetComponent(TextMesh).text;

#

 

 

StarmanRoyal icon-fox.gif

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...