Jump to content
Unity Insider Forum

UnityProband

Members
  • Content count

    41
  • Joined

  • Last visited

Community Reputation

0 Neutral

About UnityProband

  • Rank
    Advanced Member

Recent Profile Visitors

327 profile views
  1. UnityProband

    Canvas GUI per Skript manipulieren

    Ich habe in meinem Unity Projekt eine Benutzerschnittstelle implementiert. Das entsprechende Canvas-Objekt besitzt jeweils 5 Buttons und Images als Child-Objekt. In einem ScrollView sollen die einzelnen Images visualisiert und durch den Klick auf den ensprechenden Button ausgetauscht werden können. Die Funktionalität des Button-Klick kann ich doch mit Hilfe von Lisener realisieren, die ich einzelnen buttons hinzufügen könnte. Ich habe dafür auf meinem Cancas-Objekt folgendes Skript als Komponente hinzugefügt. mycanvas = GetComponent<Canvas>(); testbutton = mycanvas.gameObject.GetComponentInChildren<Button>(); myimage = mycanvas.gameObject.GetComponentInChildren<Image>(); foreach(Button test in testbutton){ Debug.Log (test.name); } foreach(Image pc in myimage){ Debug.Log (pc.name); } testbutton[1].Select(); myimage[5].enabled = false; Die Namen der einzelnen Buttons und Images werden korrekt aufgelistet. Wie könnte ich jetzt auf den Inhalt des Scrollviews per c#-Skript zugreifen, um die einzelnen Bilder zu visualisieren. Dieses Codefragment funktioniert nicht! myimage[0] = irgendeinimages; Die Funktionalität der Button würde ich so per Skript beschreiben! //In der Start-Funktion testbutton[0].onClick.AddListener(ChangeImageOnClick); Oder mache ich etwas falsch?
  2. Hallo liebe Unity Freunde! Ich habe ein GUI erstellt mit 5 Buttons und 5 Images. Ebenfalls habe ich ein sogenanntes ScrollView als Child unter dem entsprechenden Canvas erstellt, welches die 5 Images je nach Klick des entsprechenden Buttons anzeigt. Jetzt wollte ich gerne mit Hilfe eines C#-Skript folgende GUI-Funktionalität umsetzen. Wenn ich einen der Button klicke, dann wird im ScrollView eines der entsprechenden Image angezeigt. Das C#-Skript ist als Komponente auf dem Canvas hinzugefügt. mycanvas = GetComponent<Canvas>(); testbutton = mycanvas.gameObject.GetComponentInChildren<Button>(); myimage = mycanvas.gameObject.GetComponentInChildren<Image>(); foreach(Button test in testbutton){ Debug.Log (test.name); } foreach(Image pc in myimage){ Debug.Log (pc.name); } testbutton[1].Select(); myimage[5].enabled = false; Das Skript funktioniert so weit! Aber wie könnte ich jetzt z. B. auf die Komponente Content des ScrollView zugreifen, damit ich diese austauschen kann mit den einzelnen Images? Hat Jemand eine Idee? Wenn ich das Klick-Event eines Buttons auflösen möchte, dann müsste ich doch einen Lisener den einzelnen Buttons zuordnen können. Über Hilfe wäre ich sehr dankbar! VG
  3. UnityProband

    Unity 5 MouseOver & Farbpalette

    Hallo liebe Unity Gemeinde! Wenn ich mit dem Mauszeiger über ein 3d-Objekt fahre, dann gab es doch in der alten Unity Version die OnMousEenter Funktion. Einen Collider habe ich dem Objekt hinzugefügt, aber unter Unity 5 will die Funktion einfach nicht funktionieren. Gibt es da eine Alternative? Gibt es eine möglichkeit per Skript eine GUI Objekt zu starten, dass mir so einen Art Farbauswahl ermöglicht.? D.h. ich wähle mir mit der Mouse eine entsprechende Farbe aus und das GUI Object gibt liefert mir entsprechende Farbparameter zurück? Über Hilfe würde ich mich sehr freuen!
  4. UnityProband

    Tipps für Schwieriges Thema

    Hallo Unity Freunde! Ich habe folgende Anordnung. 5 Einheitswürfel, die im Raum entlang nebeneinander angeornet sein sollen. Das Ganze hat also eine räumliche Austehnung entlang der x-Achse von 5 Einheiten, die auch immer konstant bleiben soll. Jetzt will ich folgendes machen können. Wenn ich einen Würfel skaliere, dann sollen die anderen Würfel automatisch mitskaliert werden, so dass die Ausdehnung des Würfelgebilde 5 Einheiten entsprechend. Beispiel: Wenn ich einen Würfel in x-Richtung vergrößere, dann muß sich die Ausdehung der anderen Würfel in x-Richtung verkleinern. Dazu habe ich folgende Formel aufgestellt: 5 = A + B + C + D + F für die räumliche Ausdehnung in X-Richtung für das komplette Gebilde. Die einzelnen Buchstaben entsprechend der räumlichen Ausdehnung der einzelnen Würfel in x-Richtung. Ich habe mir jetzt gedacht, dass ich die Formel jetzt für jeden Würfel umstelle. D.h. für den ersten Würfel wäre das z.B. A = 5 - B - C - D - F. Die einzelnen Ausdehnungen wären ja bekannt. Hier jetzt alle eine Einheit. Wäre das die richtige Richtung für eine Lösung? Programmtechnisch würde ich mir eine statische Klasse schreiben, die je nachdem welchen Würfel ich grade skaliere, die einzelnen Ausdehnungen der Würfel berechnet. Über Tipps wäre ich sehr danbar! Oder gibt es da eine viel einfacherere Methode, die das Problem lösen würde? VG
  5. Hallo liebe Unity Gemeinde! Ich bin neu im Bereich entwicklung von Anroid Applikationen unter Unity! Ich habe deise Tutorial durchgespielt! https://unity3d.com/de/learn/tutorials/topics/mobile-touch/building-your-unity-game-android-device-testing Unter Prferences habe ich die entsprechenden Ordner des Java und des Android SDK angegeben. In der Player-Settings das Android 2.3.1. Wenn ich jetzt den Vorgang Build und run auswähle, dann kommt folgender Fehler! Unable to list target platforms........ Unity findet den Dateifad zu dem entsprechenden Android SDK nicht. Mit dem SDK Manager von Android Studio habe ich die jeweiligen Android Builds angewählt und installiert! Mache ich was falsch? Habe ich keine Zugriffsrechte zu dem Pfad? Ich starte Unity als Administrator! Über einen Lösungsvorschlag würde ich mich sehr freuen. VG
  6. UnityProband

    Scene Manager Problem

    Hallo liebe Unity Freunde! Ich habe jetzt 3 Scenen und wollte diese nacheinander mit dem Secene Manager der unity 5 Version Laden. SceneManager.LoadScene("scene4") Ich wollte per Tastendrück eine Scene laden. Das funktioniert auch recht gut, aber wenn ich mit Hilfe der Funktion LoadScene eine andere Scene laden möchte, dann passiert leider nichts. Den Name der Scene wird per Skript angepasst! Ich habe ja diese Standard Scene, die ja den Index 0 hat. die zweite Scebe hat bei mir den Index 1, aber er will einfach die dritte Scene nicht laden, Muss ich die alte Scene jetzt wieder zerstören? Oder, was mache ich falsch? Die einzelnen Scenen wurden dem Build hinzugefügt, und werden auch mit deren Index angezeigt. Hier mal das Skrip! if(Input.GetKeyDown(KeyCode.A)){ SceneManager.LaodManager.GetActiveScene().buldIndex + scenes); if(scenes < 3 ) { if(!oneTime) { scenes++; oneTime = true; } else { scenes=0 } } } oneTime = false; Ich sterte von der Scene mit dem Index 0. Das ganze wird in der Update Funktion ausgeführt! Die Scene mit dem Index 1 wird geladen und angezeigt! Die int Variabel scenes hat am Anfang den Wert 1. OneTime den Wert false! Was mache ich falsch? VG VG
  7. UnityProband

    Datenaustausch zwischen Konsolenprogramm

    Hallo Mark! p.StandardOutput.ReadToEnd(); Danke, super Tipp Mark! Das war das Problem! Es funzt mit meinem geklauten Codebeispiel. Jetzt gibt er während die Konsolenanwendung starten, den String aus! VG
  8. UnityProband

    Datenaustausch zwischen Konsolenprogramm

    Hallo Mark! Danke für das Code-Schnipsel! Aber jetzt gibt er gar nichts mehr aus! Auch wenn ich die Konsolenanwendung beende! Aber trotzdem, Danke! VG
  9. UnityProband

    Datenaustausch zwischen Konsolenprogramm

    Hallo! Es funktioniert, aber nich so wie es haben will. Er startet die Applikation und Unity friert irgendwie ein? Wenn ich die Konsolenanwendung beende, dann geht Unity in die Game-Loop über und gibt mir auch den Konsolen-String aus! void Start(){ p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.FileName = pfad; output = p.StandardOutput.ReadToEnd(); UnityEngine.Debug.Log(output); p.Start();} Was mache ich falsch? Muss ich da eher einen Thread starten? Andere Frage : Funktioniert die Process - Funktionalität auch bei einer exe? VG
  10. UnityProband

    Datenaustausch zwischen Konsolenprogramm

    Hallo Mark! Danke für die Infos! Ich werde das mal ausprobieren! VG
  11. UnityProband

    Datenaustausch zwischen Konsolenprogramm

    Hallo! Die dll konnte ich ohne Probleme unter Unity einbinden. Die importierten Funktionen konnte ich unter Unity aufrufen , aber zeigten keine Wirkung! Unter der c++ Konsolenanwendung war das kein Problem! Ich weiss nicht, voran das lag! Das mit dem Aufbau eines RPC System ist ja auch toll, aber leider rennt mir die Zeit weg. Könnte ich nicht per Unity die externe c++ Anwendung als ein Thread starten und den Output unter Unity auslesen? Ich finde da nur was für c#! VG
  12. UnityProband

    Datenaustausch zwischen Konsolenprogramm

    Hallo! Danke für die Infos! Ich schaue mir das mal an! Eine entsprechende dll habe ich von der Konsolenanwendung schon erzeugt, aber leider hat das nicht funktioniert! Ich wollte die Imotiv Inside Brainwear unter Unity auslesen. Nicht die Raw Daten, sondern das Frequenzband. Das hat unter einer Konsolenanwendung funktioniert. Diese Konsolenanwendung wollte ich anschließend so modifizieren, dass diese als einer Art C++ Server funktioniert, der mir die Möglichkeit gibt auf die jeweiligen Daten unter Unity ran zu kommen Halt, durch eine Named Pipe, MemoryMappedFiles, Consolein/Out. Ich denke mal, dass ich mir diese Console in/out zuesrt anschaue! Hört sich ja schon gut an! VG
  13. Hallo liebe Unity Gemeinde! Ich hätte da mal eine Frage bezüglich eines Datenaustausch zwischen einer Konsolenanwendung, die in C++ geschrieben wurde, und einem Unity Projekt. Die einfachste Möglichkeit wäre es, dass ich das Konsolenprogramm per CMD starte und mit Hilfe von Unity auf die erzeugten double Werte zugreifen könnte. Momentan gibt das Konsolenprogramm die Daten auf der Konsole aus. Gibt es da eine einfache Möglichkeit, die Daten umzuleiten nach Unity. Habt Ihr vielleicht sogar Ideen? Ich wollte das mit Named Pipe realisieren, aber ich weiss jetzt nicht, ob Unity 5 überhaupt Named Pipes unterstützt? Also, einen C++ Server, der die Daten permanent sendet, und ein C# Client, der die Daten liest! Oder würde das viel simpler gehen? Über Vorschläge wäre ich sehr dankbar! VG
  14. UnityProband

    Realtime OBJ Importer

    Hallo! Es existiert ein Ordner mit den Namen RealtimeImport_Data, der den Resources Ordner enthält! Die entsprechenden Daten sind da aber jetzt nicht vorhanden. Aber unter dem Assets Ordner ist ebenfalls der Resources Ordner vorhanden, da sind die Daten drin. VG
  15. UnityProband

    Realtime OBJ Importer

    Hallo! Ich habe die erste Zeile gegen die zweite ausgetauscht. Es existiert also nur die zweite Zeile im Code! Leider funktioniert das halt nur im Unity Editor gut, aber wenn ich eine Exe erstelle aus dem Projekt, dann funktioniert das nicht mehr mit dem Import! In meinem Assets Ordner existieren zwei Ordner mit den Namen Resources mit dem Material und der Ordner mit den Skripten , der dat den Namen OBJImport! VG
×