Jump to content
Unity Insider Forum

Seyshiro

Members
  • Content count

    39
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Seyshiro

  • Rank
    Advanced Member

Recent Profile Visitors

997 profile views
  1. Seyshiro

    on trigger stay pendant (gelöst)

    Versuchs mal hiermit. using UnityEngine; public class TriggerChecker : MonoBehaviour { private bool isInTrigger = false; private void OnTriggerEnter(Collider other) { isInTrigger = true; } private void OnTriggerExit(Collider other) { isInTrigger = false; } private void Update() { if (!isInTrigger) { // do something } } } Ich hab den Code zwar nicht getestet aber er sollte eigentlich funktionieren. Im if-Block innerhalb der Update Methode kannst du jetzt deinen Code ausführen.
  2. Seyshiro

    Lichtbrechung mit Shader Graph

    @malzbie Danke für die schöne Erklärung. Ist das Erstellen so eines Fake-Lichtbrechungs-Shaders für glatte Oberflächen auch mit dem Shader Graph möglich? Und wenn ja, wie kann ich das am besten umsetzen? Mir fehlt da irgendwie der Ansatz.
  3. Hi@all, Ich hoffe, dass sich der ein oder andere schon ein wenig mit Shader Graph auseinandergesetzt hat und mir sagen kann, ob es schon möglich ist, damit einen transparenten Shader mit Lichtbrechung umzusetzen.
  4. Seyshiro

    Skript nur für den Editor

    Ich verstehe leider nicht so wirklich was du meinst. Könntest du das bitte noch etwas näher erläutern. Was für Datenstrukturen und was genau meinst du mit Felder?
  5. Seyshiro

    Lightweight Pipeline und Shadergraph

    Da ich mich selbst auch sehr für die neuen Render Pipelines interessiere habe ich mich mal ein bisschen damit auseinander gesetzt und mich ein bisschen darüber belesen. Es kann sein das ich mich irre ( was mich sehr freuen würde ) aber wie es aussieht, funktionieren die meisten Post Processing Effects noch nicht mit den neuen Pipelines. Ist halt alles noch in der Preview-Phase aber da das Unity-Team sich damt z.Z. stark auseinandersetzt denke ich mal , dass das in den nächsten paar Releases funktionieren wird.
  6. Seyshiro

    Skript nur für den Editor

    Bin mir jetzt nicht 100%ig sicher ob es das ist was du suchst, aber probier mal folgendes: #if UNITY_EDITOR // Editor-Only-Code #endif Alles was innerhalb dieser Directive steht, wird nur im Editor ausgeführt, nicht aber im fertigen Build.
  7. Seyshiro

    Kamera fliegt durch Objekte

    Er meint, dass du ein Empty Object erstellst und diesem dann die Camera als Child unterordnest. Dann gibst du dem Empty Object noch einen Collider, einen RigidBody und das Script, das für die Bewegung zuständig ist. (Welches du vorher sicherlich der Camera selbst zugeordnet hast)
  8. Seyshiro

    Maximaler Polycount pro Scene ?

    Die Anzahl der sichtbaren Polygone die man ohne große Leistungseinbußen auf dem Bildschirm darstellen kann hängt nicht nur ein bisschen sondern sehr stark vom System ab. Ich habe das Wort "sichtbar" deswegen unterstrichen, weil Unity (so wie so ziemlich jede andere moderne Gameengine) hauptsächlich die Polygone berechnet, die auch auf dem Bildschirm sichtbar sind, d.h. wenn wenn sich ein Objekt hinter einem anderen befindet oder außerhalb des Sichtbereiches der Camera, und somit auf dem Bildschirm nicht angezeigt wird, dann wird auch keine Rechenleistung für die Darstellung dieser Polygone verschwendet. (Bei Dingen wie physikalischen Berechnungen sieht die Sache wieder etwas anders aus). Zudem gibt es auch noch so schöne Systeme wie LOD (Level of Detail), mit denen man nochmal einiges an Grafikleistung einsparen kann. Desweiteren denke ich nicht, das es sich so sehr auf deine FPS Rate auswirkt, ob du nun 30 oder 300 Texturen verwendest. (Korrigiert mich bitte jemand wenn ich da falsch liege) Alles in allem denke ich nicht, dass man bei der Anzahl der maximal sichtbaren Polygone einen pauschalen Wert veranschlagen kann, da es von mehreren Faktoren abhängig ist. Ich würde sagen, hier gilt wie bei so vielen Dingen: So viel wie nötig so wenig wie möglich.
  9. Seyshiro

    Meine Figur bewegt sich Grundlos nach Linksoben

    Ich hab das Script mal so übernommen wie es ist und bei mir gibt es keine Probleme. Du könntest mal versuchen das hier: if (xEingabe != 0 || yEingabe != 0) { Debug.Log("x: " + xEingabe + " | y: " + yEingabe); } ans Ende deiner Update-Methode einzufügen und gucken, ob in der Console was ausgegeben wird, wenn sich deine Figur wieder von allein bewegt. Wenn ja, dann ist das Problem möglicherweise ein Hardwareproblem. Ansonsten gibt es noch die Möglichkeit, dass irgend ein anderes Script auf deine Figur zugreift und die Position verändert. Eine weitere Möglichkeit wäre (sofern deine Figur eine Rigidbody2D-Componente besitzt) das deine Figur aufgrund irgendwelcher Physics-Einstellung Bewegt wird.
  10. Seyshiro

    Powerleiste nach Gegnertod auffüllen

    OK, wie dein Name und der Quellcode schon vermuten lassen bist du noch ganz am Anfang aber gib nicht auf, das war jeder mal. =) Also als erstes setzt du deine "isDead" Variable 2 mal auf "true" das ist zwar nicht schlimm aber unnötig. Daher würde ich dir erstmal empfehlen, innerhalb deines if-Blocks in der Methode "ApplyDamage()" diese Zeile zu entfernen: isDead = true; da du genau das gleiche sowieso nochmal in der Death()-Methode machst. Dann möchtest du ja, dass die Variable "health" auf 2 steigt, nach dem sie kleiner oder gleich 0 ist. In deiner Death()-Methode machst du mit deiner health-Variable aber folgendes: health = health - 1; Das heißt, du verringerst ihren Wert um eins. Da du aber ihren wert auf 2 gesetzt haben möchtest (nicht um 2 erhöht, sondern auf 2 gesetzt) müsste die Zeile so aussehen: health = 2; Wenn das dann immer noch nicht funktioniert, dann hast du noch irgendwo anders fehlerhaften Code.
  11. Seyshiro

    Enerigeleiste soll sich nach einem Gegnertod auffüllen

    https://forum.unity-community.de/topic/13945-powerleiste-nach-gegnertod-auffüllen/
  12. Seyshiro

    Powerleiste nach Gegnertod auffüllen

    Das klappt nicht, weil du versuchst auf die enemy-Komponente zuzugreifen, obwohl du das GameObjekt, das die Komponente enthält zerstörst , sobald die Variable "health" <= 0 ist. Sobald du "Destroy(gameObject)" aufrufst, ist das GameObject (mit samt der Komponente) nicht mehr vorhanden.
  13. Seyshiro

    Daily Reward System Fehler

    Bin mir nicht ganz sicher ob das dein Problem löst aber die ersten beiden Codezeilen un deiner Start-Methode sehen so aus: string lastSavedTime = PlayerPrefs.GetString("LastRewarded"); lastRewarded = ulong.Parse(lastSavedTime.ToString()); in der 2. Zeile versuchst du lastSavedTime in einen string zu convertieren, obwohl diese Variable bereits ein string ist.
  14. Hi@all, ich bin mir leider nicht ganz sicher, ob ich hier im Bereich "Animation" richtig bin, oder ob mein Problem mehr in den Bereich "Scripting" gehört. Wie dem auch sei, ich leg einfach mal los. Im Prinzip ist mein Problem eigentlich recht schnell erklärt. Ich möchte, dass sich 2 Kreise verformen, wenn sie sich berühren, ähnlich wie wenn man 2 Gummibälle aneinander drücken würde. (Im Anhang ein Bild, welches zeigt, wie ich mir das Vorstelle.) Die Größe der Kreise und der Punkt der Kollision sind Variabel. Daher denke ich mall, dass dieser Effekt irgendwie dynamisch erzeugt werden müsste aber leider hab ich nicht mal im Ansatz einen Plan, wie ich das am besten anstelle. Hat irgendjemand eine Idee wie man das am besten umsetzen könnte?
  15. Hi@all, ich bin mir nicht sicher ob ich hier im richtigen Bereich bin, da ich nicht weiß, ob das ein Problem meines Scripts ist oder ob der Fehler irgendwo anders liegt. Am besten ich erkläre gleich mein Problem. Ich habe meiner Scene ein Sprite hinzugefügt, welches sich bei Tastendruck um eine bestimmte Achse drehen soll, dazu habe ich diesem Object eine HingeJoint2D-Component hinzugefügt (und natürlich auch nen RigidBody2D). Bei dieser Component habe ich "Use Motor" aktiviert (Motor Speed wird später per Script gesteuert) und da ich möchte, dass sich dieses Sprite nur in einem bestimmten bereich dreht habe ich auch noch "Use Limits" aktiviert und die Limits so eingestellt, wie ich sie benötige. Desweiteren habe ich dem Object noch einen PolygonCollider2D hinzugefügt. Mein Script, welches den Motor vom HingeJoit2D steuern soll sieht folgendermaßen aus: using System.Collections; using System.Collections.Generic; using UnityEngine; public class Hinging : MonoBehaviour { public KeyCode key; public float motorSpeed; private JointMotor2D jointMotor; // Use this for initialization void Start () { jointMotor = GetComponent<HingeJoint2D>().motor; } // Update is called once per frame void Update () { if (Input.GetKey(key)) { jointMotor.motorSpeed = motorSpeed; } else { jointMotor.motorSpeed = motorSpeed * -1; } GetComponent<HingeJoint2D>().motor = jointMotor; } } Wenn ich das jetzt ausprobiere, dann muss ich die eingestellte Taste ca. 1 Sekunde lang gedrückt halten, bis das Object in der Scene auf den Tastendruck reagiert. Weiß jemand woran das liegen könnte, bzw. wie ich das Problem beheben kann? P.S.: Wenn ich den PlygonCollider2D entferne, dann reagiert das Object ohne verzögerung aber den Collider brauche ich.
×