Jump to content
Unity Insider Forum

Sascha

Administrators
  • Content Count

    12,609
  • Joined

  • Last visited

  • Days Won

    670

Everything posted by Sascha

  1. Moin! Du meinst https://docs.unity3d.com/ScriptReference/index.html? Die hat so ihre Problemchen, ist aber definitiv noch eine der besseren Dokumentationen, die es so für Software gibt. Unity ist halt kein kleines Ding, und für die abertausenden an Funktionen sind nicht so schnell mal eben gute Beispiele geschrieben. Ansonsten hat die Manual noch viele gute Informationen (Beispiel), aber das sind halt auch wieder viel zu viele, als dass man die in einen Index stecken könnte, der noch übersichtlich oder gut strukturiert wäre. Ansonsten musst du dir halt eines der vielen verfügbaren
  2. Sozusagen - jede Komponente ist eine neue Instanz deines Scripts. Nein, willst du auch nicht. Wenn deine Dinge alle gleich funktionieren sollen, dann willst du ja nicht trotzdem bei jedem Ding aufs neue dieselben Eigenschaften angezeigt bekommen. Du kannst zwar wunderbar Sachen festlegen, die für alle Dinge gleichermaßen gelten (Stichwort static), aber das kannst du dann nicht mal eben im Inspektor einstellen. Du kannst allerdings z.B. ScriptableObjects erstellen, in denen Daten eingestellt sind, die für alle gelten. Die ziehst du dann in deine Komponenten rein.
  3. I've never used it. I always put a component on my UI things that reference a Selectable and select it in OnEnable.
  4. Sascha

    Shaded

    8 Lichter sind die Standardgrenze für Forward Rendering... und das sind immer noch minimal mehr als 1 Polygon Aber war auch nur so am Rande. Schau lieber unter Graphics nach.
  5. Sascha

    Shaded

    Naja, drei Stück schafft auch Forward Rendering, und du hast da ein bisschen mehr als ein Polygon
  6. Sascha

    Shaded

    Ich bin mir nicht ganz sicher, wie der aktuelle Weg sein muss. Mein letzter Stand war, dass das in den Project Settings unter Graphics angeschaltet sein muss. Kannst ja zum Testen mal drölf Lichtquellen auf ein großes Polygon werfen und schauen, ob sie alle gerendert werden.
  7. Sascha

    Shaded

    Deferred Rendering-Optionen sind nur an, wenn auch deferred Rendering laufen hast. Hast du?
  8. Der Standard-Shader implementiert das PBS (physically based shading)-Modell. Die Oberflächen abstrahieren ziemlich genau, wie sich Licht auf ihnen verhält. Wenn dir dein Objekt zu dunkel ist, dann hast du mehrere Möglichkeiten: Du drehst das Licht heller. Du machst das Objekt weniger metallisch (dass es dunkler wird, je mehr du "metallic" hochdrehst, ist korrekt so). Du machst die Farbe oder die Textur des Objekts heller. Du machst die physikalische Korrektheit kaputt und baust etwas unlogisches (was nicht automatisch falsch oder unschön wäre). Du kannst z.B. Emission a
  9. Nene, serialisierte Felder (tauchen im Editor auf und Werte werden gespeichert) sind schon gut und richtig, aber ab nem bestimmten Punkt benutzt du dafür keine öffentlichen (public) Felder mehr. Für den Anfang ist's aber okay.
  10. Geil x <= (x + 10) So als Tipp: Das ist immer true. Wird ja nicht nur das linke X größer, das rechte wird's auch
  11. Okay @Sir_Mathew, so langsam werden deine Beiträge wirklich unproduktiv. Lass das mal bitte.
  12. Moin! Wenn du dafür UnityUI benutzt, wird es einfach. Dann kannst du einen simplen, vollständigen Kreis als Grafik machen und diesen von einer Image-Komponente anzeigen lassen. Da stellst du den Modus auf "Filled" und den Fill Type auf "Radial"... oder so Dann kannst du mit einem Wert zwischen 0 und 1 beim "Fill Amount" genau diesen Effekt erzeugen. Im Code kannst du mit einem steigenden Wert für Image.fillAmount genau dasselbe tun. Wenn's außerhalb der UI-Welt passieren soll, dann würde ich es zuerst mit einem Alpha Cutout Shader probieren, dem du eine Textur gibst, auf dessen Alph
  13. Cool zu wissen! Hast du auch eine Frage? Ansonsten ein Schuss ins Blaue: Nutze dafür keinen Collider, sondern z.B. einen Raycast.
  14. So, ein letztes Mal zum Lernen ist noch okay, aber den vierten Thread zu dem Thema werde ich einfach wieder löschen. Nur, damit du Bescheid weißt.
  15. Glaube ich irgendwie nicht, ansonsten würdest du nicht nach meiner Schleife auf ein Element in der leere Liste zugreifen. spawnpoints[list[rollIndex]] Daher kommt nämlich der Fehler. Deine anfängliche Frage war, wie du aus einer Menge an Ergebnissen zufällig wählen kannst, aber jedes Ergebnis nur einmal gewählt werden kann. Genau das wird hier implementiert. Du hast alle möglichen Ergebnisse in einer Liste (wobei das in meinem Beispiel Zahlen sind, und es in deinem eher Referenzen auf Spawnpunkte sein sollten). Du würfelst ein zufälliges Element der Liste, benutzt es (das passie
  16. Du musst dir angewöhnen, Code zu lesen und dabei auch zu verstehen, was jeder Teil tut. Bitte nicht einfach Code kopieren, irgendwelche Dinge einfügen und dann glauben, dass das wie durch ein Wunder funktioniert. Ich habe drangeschrieben, was in jeder Zeile passiert, und eine Zusammenfassung hast du auch. Sie lautet: "Es werden so lange Elemente aus der Liste genommen, bis sie leer ist." Meine while-Schleife macht also die Liste leer. Und danach, wenn die Schleife schon durch ist, willst du irgendetwas spawnen und greifst dabei auf die Liste zu. Einmalig. Wozu also die ganze Liste, wenn d
  17. Den kannte ich noch nicht. Sollte aber beides funktionieren. @Adrian H Bei einer Fehlermeldung steht immer die Zeile dran, in der sie auftritt. Schau dir mal diese Zeile genauer an.
  18. Wieso kopieren? var list = new List<int>(new int[]{10,20,30,40,50,60}); while (list.Count > 0) { var rollIndex = Random.Range(0, list.Count); // Suche dir zufällig ein Element der Liste aus Debug.Log($"Rolled a {list[rollIndex]}."); // Zeige es an (sonst mach was anderes damit) list.RemoveAt(rollIndex); // Entferne das Ding aus der Liste, damit es nicht nochmal drankommt }
  19. Moin! Es kann sein, dass jetzt einiges kommt, was du schon weißt, aber ich fange einfach mal von vorne an. Nur zur Sicherheit... und wenn in Zukunft jemand UI-Probleme hat, kann ich einfach auf diesen Post verweisen Also... wenn er nicht auf "Constant Pixel Size" gestellt ist, sorgt der Canvas Scaler dafür, dass der Canvas immer einigermaßen™ gleich groß bleibt. Ansonsten nimmt er Höhe und Breite des Spielfensters an. Meine übliche Konfiguration ist "Scale with Screen Size", eingestellt auf "Match Width Or Height", weil ich meine Grafiken nicht gestreckt haben will. "Match" ist dann ganz
  20. Sag mal, liest du meine Posts überhaupt?
  21. Lies dir einfach ein bisschen was darüber durch. Ja ach ne. Genau das hab ich halt in meinem Beitrag geschrieben. Aber was ich geschrieben habe, ist eben auch eine Antwort auf Denn die Rigs müssen eben nicht identisch sein, damit das Retargeting funktioniert.
  22. @Sir_Mathew Unity kann menschliche Animationen auf beliebige menschliche Rigs übertragen. Dafür muss man Bones auf "Muskeln" mappen. Wenn das eine Rig dabei ganz anders aussieht als das andere, ist das egal, solange die Muskeln definiert sind. Nennt sich "Humanoid Retargeting". @grinseengel Sind denn deine beiden Modelle mit Humanoid Rigs importiert und beide Avatare vollständig definiert?
×
×
  • Create New...