Jump to content
Unity Insider Forum

All Activity

This stream auto-updates     

  1. Past hour
  2. Update 1.3 ist jetzt live im Asset Store: Änderungen: Texturen optimiert um den Speicherplatzverbrauch auf der HDD/SSD zu veringern. (Vorher: ~ 1,6GB. Jetzt: 1GB). Wo möglich wurde die Anzahl der Materialien pro Modell reduziert, um die Draw Calls zu veringern ohne die Freiheit der Konfigurierbarkeit zu verlieren. Bei ein paar Modellen wurden die Polygone reduziert.
  3. Update 1.1 ist jetzt live im Asset Store. Änderungen: Texturen optimiert um den Speicherplatzverbrauch auf der HDD/SSD zu veringern ohne Qualitätsverlust. Vorher: ~ 80MB Jetzt: ~ 25MB
  4. Today
  5. Okay, ich weis jetzt woran es lag ! Es war zwar fast nichts in der Scene aber geruckelt hat es wegen der Kamera. Cool jetzt läufts wieder
  6. Ein NavMesh kannst du benutzen, wenn du einen Weg durch ein Gebiet finden willst, das Hindernisse hat. Auf deinem Bild ist die Luftlinie scheinbar immer nicht blockiert, da kannst du einfach von Punkt zu Punkt fahren. Dafür bieten sich Coroutinen sehr gut an. Wenn du aber tatsächlich Hindernisse umfahren musst, dann ist NavMesh nicht die einzige Option, aber oft eine gute. Die Basisvariante hier wäre ein NavMeshAgent und ein kleines Script, dass auf diesem SetDestination aufruft.
  7. Hallo Leute Weiss jemand, wie man einen selbstfahrenden Mähdrescher programmiert, der ein zuvor erstelltes Feld aberntet. Geht das ev. mit dem Nav Mesh Agent? Wie kann man die Koordinaten der Pflanzen an den Nav Mesh Agent weitergeben? for (z = 0; z < 10; z++) { for (x = 0; x < 12; x++) { k = z * 12 + x; newX = offsetX + i * 250 + x * abstandX; newZ = offsetZ + i * 0 + z * abstandZ; GameObject obj = (GameObject)Instantiate(prefabHaus[i], new Vector3(newX, 1f, newZ), Quaternion.identity); obj.SetActive(true); pooledObjects.Add(obj); UnityEngine.Debug.Log(parzelle.Parzname + parzelle.Fläche); } } i++; UnityEngine.Debug.Log("i =" + i); } Mit dem obigen Code wird das Feld mit den Pflanzen erstellt! Gruss, peachplayer
  8. Hallo Ah. Da habe ich den gerade selber erst empfohlen, ohne ihn nur annähernd zu kennen. Danke. Sehe ich mir an. Christoph
  9. Yesterday
  10. Von async und wait würde ich ganz stark abraten aktuell. Das ist noch nicht annähernd in Unity brauchbar, zumindest nicht ohne eine zusätzliche Bilbiothek. Wie du UnityWebRequest benutzen kannst, steht hier: https://docs.unity3d.com/ScriptReference/Networking.UnityWebRequest.Get.html using (UnityWebRequest webRequest = UnityWebRequest.Get(uri)) { yield return webRequest.SendWebRequest(); if (webRequest.isNetworkError) { DoErrorStuffWith(webRequest.error); } else { DoStuffWith(webRequest.downloadHandler.text); } } Denke daran, dass Coroutinen zwar technisch gesehen nicht asynchron sind, aber durch ihre Unterbrechungen über mehrere Frames hinweg laufen können. Im Gegensatz zu async/await können sie keine Werte zurückgeben. Wenn du mit dem Ergebnis des Requests etwas machen willst, musst du das je nach Situation in die Coroutine einbauen oder über ein Callback regeln. Ersteres ist auf jeden Fall die einfachere Variante, nur halt nicht immer die bessere.
  11. Du kannst im Profiler ganz oben, zweites Dropdown von links, von "Playmode" auf "Editor" stellen, dann analysiert der Profiler den Editor.
  12. https://docs.unity3d.com/Manual/ProfilerWindow.html Damit du weißt, wie du anfangen kannst
  13. Hallo Gibt es eine Art Profiler für unity selber? Ich habe ein paar packages installiert und habe das Gefühl, dass alles sehr träge ist. Würde erstens gerne meine Wahrnehmung überprüfen und zweitens schauen, wer der Übeltäter ist. Eventuell liegt es auch an 2020.1? Christoph
  14. Hallo Unity hat ja einen eingebauten Profiler. Damit kann man mit etwas Übung sehr genau erkennen, was Zeit kostet. Wenn du aber nix in der Szene hast, hilft vielleicht auch einfach ein Neustart oder ähnliches. Christoph
  15. Ich kenne mich irgendwie nich aus damit, weis nicht was gut ist oder schlecht 😕
  16. Wenn deine Objekte direkt nach Instantiate inaktiv sind, dann fallen mir dafür nur zwei mögliche Gründe ein: Dein Prefab ist inaktiv, dann ist auch die Instanz davon erstmal inaktiv. Wenn du keinen Grund für das inaktive Prefab hast, aktiviere es, ansonsten musst du halt nach dem Spawnen jede Instanz einzeln aktivieren. Wenn du nicht vom GameObject redest, sondern von einer Script-Komponente auf deinem GameObject, dann kann diese deaktiviert werden, wenn darin eine unbehandelte Exception fliegt. Müsstest du in der Konsole sehen und dann beheben. Alternativ kann natürlich irgendein Code von dir Dinge deaktivieren, aber nicht der, den du gepostet hast.
  17. Hallo, ja wie im Titel beschrieben, mein Spiel ruckelt obwohl fast gar nichts drinne ist in der "Hierarchy view" Wie kann ich das Problem ausfindig machen ? Gruß: w0rks
  18. Es wurde ja bereits angesprochen aber die Begrifflichkeiten kannst du vergessen. Game Design, Level Design usw das sind alles Oberbegriffe wie der "Handwerker" Im Prinzip solltest du dich zwischen zwei Richtungen unterschieden: 1.Programmieren 2.Design Willst du programmieren lernen könntest du dir vielleicht auch überlegen einen Informatiker Weg oder ähnliches zu gehen. (Spieleentwickeln kannst du damit auch) Willst du etwas mit Design machen, dann geht das eher in Richtung 3D oder/und 2D Software lernen. WIllst du das beruflich machen, wäre es auch empfehlenswert eine Software zu lernen die in Firmen verwendet. 3Dsmax oder Maya. Anmerken möchte ich: Selbst wenn du irgend was in der Richtung studierst, sind die Chancen dass du einen Job bekommst leider gering. Ich hab den Eindruck das 1/4 meines Semesters einen Job in diesem Bereich bekommen haben. Das Studium würde ich nicht als Überflüssig bezeichnen den es gibt auch vieles das man eben nicht aus Youtube Tutorials lernen kann. Willst du den Weg gehen, dann musst du einer der besten sein und zu den 25% gehören. Man kann schließlich auch durch Youtube einen Motor auseinander bauen und wieder zusammensetzen wegen dem ist man auch kein guter Mechaniker.
  19. Last week
  20. Ach oke jetzt funktionierts wieder danke !
  21. Hallo. Ich bin neu hier und auch ealtiv neu zu Unity, C# und coiding allgemein. Daher probiere und recherchiere ich ewig, nur zu diesem Problem habe ich bis jetzt keine Lösung gefunden. Zunächst mein Ziel: Von Unity(C#) aus, steuere PHP-File an, um von der MySQL-Datenbank die Informationen zu erhalten. Nach dem ich die Infos mit Unity vom PHP-File erhalte, will ich die Infos direkt in einer anderen Funktion umsetzen. Also so würde es ungefähr aussehen: main (){ // activated from a button resievedString = get_Cell_from_PHPFile(); this_is_functions_with_that_string(resievedString ) } Und das habe ich erfolglos ausprobiert: zunächst mit Coroutine, mit dem Ergebniss, dass this_is_functions_with_that_string( ) zuerst mit leeren Argument gerufen wird: get_Cell_from_PHPFile(){ StartCoroutine(Call_PHPPhile()); } IEnumerator Call_PHPPhile(){ ..some code for the form to send to PHP_File.. www.SendWebRequest(); yield return www.downloadHandler.text; } Dann habe ich versucht auf yield und IEnumerator zu verzichten, mit dem Resultat, dass ich von PHP-file gar nichts zurück bekomme. Es wird eine Fehler ausgegeben, dass ich die Funktion aus Start() rufen soll. Doch auch das funktioniert nicht. : get_Cell_from_PHPFile(){ ..some code.. www.SendWebRequest(); return www.downloadHandler.text; } Dann habe ich von Async und Wait gehört: public string ZwischenSpeicher; public void Test_FunctionFortheBtn() { Calling_Head_SsyncFunctions(); } private async void Calling_Head_SsyncFunctions() { var result = await Async_Function_should_GO_first(); MethodAfter_StartCoRoutine(ZwischenSpeicher); } private async Task<bool> await Async_Function_should_GO_first() { bool result = false; await Task.Run(() => { StartCoroutine(Call_PHP_File()); result = true; }); return result; } IEnumerator Call_PHP_File() { ...some code for the form to send to PHP_File.. yield return www.SendWebRequest(); ZwischenSpeicher = www.downloadHandler.text; } Ich wäre wirklich dankbar, wenn mir jemand mit einem Ratschlag helfen könnte.
  22. Ich habe ein Skript geschrieben, welches Kugeln spawnt und diese nach vorne schießen soll: public class Waffe : MonoBehaviour { public Transform Bulletspawn; Rigidbody clone; public Rigidbody bulletPrefap; public float bulletSpeed = 100f; private readonly int maximaleMunition = 60; public int ShotsFired = 0; // Start is called before the first frame update private void Update() { if (Input.GetKeyDown("p")) { Schießen(); } if (Input.GetKeyDown("r")) { Nachladen(); } } public void Schießen() { if (ShotsFired < maximaleMunition) { clone = Instantiate(bulletPrefap, Bulletspawn.position, Bulletspawn.rotation); clone.AddForce(Bulletspawn.transform.forward * bulletSpeed); ShotsFired++; } } public void Nachladen() { ShotsFired = 0; } } Die Kugeln werden aber nur inaktiv geklont. Was muss ich machen, damit das funktioniert, was ich oben geschrieben habe?
  23. Hi Ich habe mit Amplify Shader und einem Tutorial ein ziemlich schöner Ozean erstellt. Jetzt möchte ich die Höhe des Wassers an einer bestimmten Position ermitteln um den Spieler schwimmen und tauchen zu lassen. Hab dazu schon recherchiert und herausgefunden, dass einige die Wellen mit einer bestimmten Funktion (Sinus/Gerstner) im Shader generieren und mit der selben Funktion einfach das nochmal parallel in einem Script berechnen. Dann müsste die Höhe stimmen. Aaaaber ich erstelle die Wellen mit zwei Noise Generatoren. Kann mir da jemand erklären, wie ich die Höhe der Wellen ermitteln kann?! Der "Ozean" ist übrigens ein ganz normales Plane.
  24. Man kann das Ding mit einem Klick der mittleren Maustaste auf die Kopfleiste vom Inspektor abtrennen, dann wird's ein ganz normales Teilfenster, das man in das Editor-Layout einsortieren kann. Im Zweifelsfall einfach mal ganz oben rechts auf eines der Standardlayouts zurücksetzen.
  25. Habe auch daran gedacht alles in ein Array oder Liste zu speichern. Weiss aber nicht wie ich dann das entsprechende Object aus der Liste gelöscht bekomme wenn ich es manuell in der Scene lösche.
  26. Hallo Könntest du nicht alle go, die du erstellst, speichern und dann abfragen, ob es bereits eins mit der neuen Position gibt? Christoph
  1. Load more activity

Announcements

Hy, wir programmieren für dich Apps(Android & iOS):

Weiterleitung zum Entwickler "daubit"



×
×
  • Create New...