Jump to content
Unity Insider Forum

Leaderboard


Popular Content

Showing content with the highest reputation since 06/20/2019 in all areas

  1. 2 points
    Hallo, ich bin viel in Discord unterwegs und ja auch hier von Forum. Ich finde man kann aus dem Discordserver viel mehr machen. Für mich sieht der Discordserver eher nach einem Chatroom aus. Sehe da auch selten ein Admin oder so unterwegs. Wahrscheinlich sind sie aber nur unsichtbar ^^. Klar es gibt ein Channel für den Unity Support, aber der Server hat viel mehr potenzial, aber es wird nicht ausgenutzt. Z.B. Warum gibt es sowas wie #work-in-progress nicht? Manche zeigen gerne ihre aktuellen Arbeiten z.B. per Video oder Screenshots. Das sorgt für interessante Gespräche und für mehr Informationsaustausch. Oder #release, #completed-projects oder so, wenn es um fertige Projekte geht. Sowas wie #unitytips, wo man Tipps über jegliche Art zeigt (Twitterlink, Youtubelink, Bild oder einfach nur Snippet Code) Was ich auch cool finden würde wäre, wenn man Rollen zuweisen kann. Programmierer, Designer oder sowas. Weiß allerdings nicht, ob man dafür irgendwas scripten muss (z.B. wegen commands). Das war es erst mal.
  2. 2 points
    Hallo Unity Insiders 🖐️ ich habe die letzten Wochen ein kleinen Prototypen erstellt von einer Spielidee. Diesen möchte ich mit euch teilen und mir erstes wichtiges Feedback von euch einholen. Zum Spielprinzip: Du schuldest einen Drogenbaron Geld, dieser hat seine Schläger losgeschickt um dich zu finden. Dein Ziel ist es das Geld aufzutreiben und zu überleben. Halte dein Fadungslevel im Auge, sonst jagen dich nicht nur die Schläger, sondern auch die Polizei. Schläger greifen dich nur an, wenn sie keine Polizisten sehen. Screenshots: Controlls: WASD => Walk Right => Targeting/Rob Left + Right => Shoot R => Reload E => Pickup Video: Prototype-Download-Link: https://dock17.itch.io/tba-game-prototype Feedback Ich würde mich über Feedback/Anregungen/Kommentare freuen 😉 Best Grüße John / Dock
  3. 2 points
    So, ich hab jetzt mal etwas herumgebastelt, dabei ist dieser kleine Prototyp entstanden:
  4. 2 points
  5. 1 point
    Letzter Post August 2018 Oo Ich arbeite schon länger an einem eigenen Network System. Kann in meinem Dedicated Server nun sowas reinprogrammieren. Einfach mal 2 Gameserver und einen Chatserver in der selben Programm starten. Braucht noch viele Optimierungen, aber finde es bis jetzt cool. Der allgemeine Server wurde so aufgebaut, dass man ihn für vieles benutzen kann. Darum geht auch ein Chatserver. Ein Beispiel, wenn man es für Unity verwenden möchte. Dort sieht man zwei Klassen die extra für Unity gemacht sind. NetworkObject sind sozusagen die Spieler und ScenenObject, die durch den Dedicated Server kontrolliert werden bzw. zum Synchronisieren benutzt werden. In dem Fall ist es natürlich Clientsided. Was ich aber abändern möchte ist, dass es nicht direkt gestartet werden soll. AgarioServerLogic zum Beispiel könnte ein paar abgeänderte Einstellungen haben.
  6. 1 point
    Ich hab's! Ich habe den Layer meiner Tilemap von Default auf eines der anderen fünf Vorlagen umgestellt. Vielen Dank für deine Unterstützung!
  7. 1 point
    - Ist dein Grid ein Child Ojbekt von irgendwas? - Ist der origin Point auch mittig von dem Grid?
  8. 1 point
    Als Erstes würde ich dir empfehlen solche Sachen einfach zu animieren. Dafür musst du natürlich erst einmal lernen, wie das mit Animationen so funktioniert. Aber glaub mir, es lohnt sich. Zu deinem Problem will ich aber auch noch was schreiben. Du fährst eine Schleife durch, bei der du den Alphawert einfach solange erhöhst, bis er 255 erreicht hat. So eine Schleife wird komplett ausgeführt und erst danach geht es im Code weiter. Da ist es komplett egal, ob du innerhalb der Schleife eine Coroutine startest. Das Einzige, was es bewirkt: Diese Coroutine wird 256 mal in diesem einen Frame gestartet. Sie würde dir dann auch nach der Sekunde Verzögerung 256 mal etwas ausgeben, wenn du hinter dem Yield etwas hättest, was ausgegeben würde. Da ist aber nichts! Das was du da machst, passiert innerhalb eines Frames. Aus diesem Grund wirkt es so, als würde der Button sofort den neuen Zustand annehmen.
  9. 1 point
    Schöne klare Icons! Gefallen mir.
  10. 1 point
    Phu, so die Icons sind jetzt alle fertig gepixelt. Jetzt kann ich mit dem Code weitermachen.
  11. 1 point
    Moin, Du suchst die Buttons, wenn Du ToggleButtons() aufrufst. Das Problem hierbei ist, dass Unity keine GameObjects in der Scene findet, die inaktiv sind. Die einfachste und sauberste Lösung ohne zu viel zu ändern wäre die folgende Änderung, einmal beim Start die Buttons zu finden und dann nur noch das Array zu nutzen. using System.Collections; using System.Collections.Generic; using UnityEngine; public class PanelToggle : MonoBehaviour { private bool buttonStatus = true; // Mit wahr initialisieren private GameObject[] buttonArray; void Start() { //Buttons beim Start einmal suchen und im Array cachen. buttonArray = GameObject.FindGameObjectsWithTag("Button"); // Array aus allen GameObjects generieren, die Buttons sind } public void ToggleButtons() // Alle Buttons ein- bzw. ausblenden { buttonStatus = !buttonStatus; // buttonStatus togglen foreach (GameObject button in buttonArray) // Für alle Buttons: { button.SetActive(buttonStatus); // Aktuellen Button ein- bzw. ausblenden Debug.Log("Buttons sind: " + buttonStatus); // OK } } } Grundsätzlich würde ich aber von "FindGameObjectsWithTag" und anderen Suchfunktionen mit String-Namen abraten, weil das sehr fehleranfällig ist. Entweder direkt nach Components suchen, oder ein im Inspector zugängliches Feld machen, wo Du die Buttons einfach im Editor reinziehst. //Hierfür müsste die Komponente auf dem Panel liegen und dann alle Unterelemente durchsuchen GetComponentsInChildren<Button>() //oder so, mit dem SerializeField Attribut erlaubst Du Unity, ein privates Feld im Inspector sichtbar zu machen [SerializeField] private Button[] buttonArray;
  12. 1 point
    Weil es die Dissonanz zwischen visueller Wahrnehmung und Gleichgewichtssinn ist, die Schwindel verursacht. Gibt ein paar Leute, die damit keine Probleme haben, aber ein sehr großer Teil der Spieler kann ein Spiel direkt weglegen, wenn die Kamera nicht nahezu ausschließlich durch den Kopf kontrolliert wird.
  13. 1 point
    Kannst du gerne machen, möchte dir ja nicht alles einfach vorkauen, sollst ja auch damit umgehen können.
  14. 1 point
    Könnte irgendwie so aussehen: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class DemoScript : MonoBehaviour { public string[] text; public Text uiText; private int index=0; private void Start() { uiText.text = text[0].ToString(); } public void next() { int size = text.Length; if (index < size-1) { index++; uiText.text = text[index].ToString(); } } public void last() { if (index > 0) { index--; uiText.text = text[index].ToString(); } } } Dieses Skript kannst du z.B. auf ein EmptyGameobject machen welches als Manager fungiert. Dann erstellst du zwei Buttons, einer für zurück, einer für weiter(roter Bereich). Bei denen kannst du dann das Skript als Referenz nehmen und die Funktion next oder last ausführen. Im Skript kannst du das Array so gross machen, wie du verschiedene Texte hast und dann direkt im Inpsektor den Text eingeben. Ist ja noch recht überschaubar. Kannst du dann natürlich auch für Farben für den Hintergrund oder Sounds erweitern. Hier ne kleine Demo damit du siehst wie alles verknüpft ist: Demo_thecellar.unitypackage
  15. 1 point
    Nicht schlecht! Aber das scheint dann doch recht schwer zu werden, sobald dich die Polizei als Gangster identifiziert.
  16. 1 point
    Hallo Zusammen Da ich momentan in meinem Hauptprojekt so gar nicht weiter komme, habe ich mal was kleiners angefangen. Was haltet Ihr davon bezüglich dem Artstyle und Animationen? Fängt es das retro Feeling ein oder eher nicht? Spielen: https://jomnitech.itch.io/kernslegend Steuerung mit Controller oder mit Maus und Tasta (ASDW/Pfeile,Space,LMT,RMT,MMT)
  17. 1 point
    Ein Canvas wird Standardmäßig über dem gesamten restlichen Spiel gerendert. Das kannst du ändern, indem du beim Canvas von "Screen Space" auf etwas anderes stellst. Bei "Camera" verhält sich der Canvas immer noch so wie vorher relativ zu einer Kamera, die du angeben kannst. Es wird dann aber als Teil der Welt gerendert, mit einem einstellbaren Abstand zur Kamera. Wenn dein Partikelsystem aber eigentlich nur Teil des UI sein soll, kann dein Canvas im Screen Space bleiben. Du solltest dann meines Wissens nach einfach dein Partikelsystem in den Canvas hineinverschieben können.
  18. 1 point
    Ach, die Geschichte... Richtig. @Thariel Du hast natürlich Recht: Ein bewegtes GameObject ist nicht sofort an seiner neuen Position, sondern erst nach Ende des Frames. Da ein verschobenes Objekt letztendlich einiges mehr an Konsequenzen nach sich zieht, als man erwartet, arbeitet Unity alle Änderungen in der Szene in einem Rutsch ab. Dadurch müssen Dinge nicht doppelt und dreifach gemacht werden, wie es der Fall wäre, wenn diese Dinge nach jeder Transform-Änderung gemacht würden. In deinem Fall ist das natürlich schlecht. Du kannst diese Änderungen aber manuell auslösen, und zwar mit Physics.SyncTransforms. Das rufst du einfach nach dem Verschieben auf. Damit umgehst du zwar diese Optimierung, die es nicht ohne Grund gibt, aber wie immer gilt: Performance ist erst dann ein Thema, wenn es zum Problem wird. Optimalerweise würdest du dir eine eigene Datenstruktur bauen, die das Feld repräsentiert, und das ganze nicht über die Physik-Engine machen, aber wenn dein Spiel nicht zu groß ist, ersparst du dir mit dieser Methode einiges an Ärger. @Jomnitech Er löst den Raycast in Update aus - das heißt nicht, dass er das jeden Frame macht. FixedUpdate ändert hier auch nichts.
  19. 1 point
    Mit riesigen Zahlen kann Unity nicht umgehen, weil 32-bit floating point numbers im Koordinatensystem verwendet werden. Im Millionenbereich kann dir bereits die erste Nachkommastelle flöten gehen. Im 10-Milliarden-Bereich gibt's schonmal Ungenauigkeiten im dreistelligen Bereich. Aber davon mal abgesehen: Wenn dein Objekt auf die gegebene Distanz zu klein ist, um gesehen zu werden, dann ist es zu klein, um gesehen zu werden. Wenn dein Objekt plötzlich größer ist, hat es ja nicht mehr die richtige Größe. Du schaust ja auch nicht in den Nachthimmel und beschwerst dich, dass du Deimos nicht erkennen kannst.
  20. 1 point
    Ja, du musst jetzt noch die Keys in ihrer Eigenschaft anpassen. Die sind natürlich ersteinmal smooth. Klicke mit rechts auf den 2 Key, der abgehackt kommen soll und wähle Left Tangent - Constant . Jetzt sollte die Animation zu diesem Key hin so sein, wie du es wolltest. Wenn du die Animation nicht im Dope Sheet Modus sondern im Curves Modus anschaust, siehst du auch genau was da passiert.
  21. 1 point
  22. 1 point
    Darauf gibt es leider keine eindeutige Antwort. In C# gibt es ja, im Gegensatz zum nahen Verwandten Java, Properties. Das bedeutet in diesem Kontext, dass eine Zuweisung wie deine beliebig viele Seiteneffekte haben kann. Beim Setzen von transform.localScale könnten z.B. irgendwelche Hintergrund-Datenstrukturen der Szene neu berechnet werden - was genau passiert, könnte dann wiederum davon abhängen, ob du einen Renderer und/oder einen Collider auf dem GameObject hast. Kann natürlich auch sein, dass die Property schlau genug ist, gar nichts neu zu berechnen, wenn der neue Wert sowieso dem alten entspricht - so, wie du es oben vorschlägst. Nur eben in der Property anstatt außenherum. Leider gibt es keinen Weg, da einfach mal hineinzuschauen, wenn du keinen Source Code-Zugriff hast. Unity hat da in den letzten Jahren verstärkt optimiert, aber was genau da passiert... keine Ahnung. Es gilt also wie immer: Mach dir keinen Kopf um Performance, lass einfach ohne großen Drumherum den Code laufen und kümmer dich um Framerate, wenn sie anfängt, ein Problem darzustellen. In Sachen Code-Qualität würde ich sagen: Die beiden Varianten geben sich nicht sonderlich viel.
  23. 1 point
    Die Textur wird so groß in den Speicher geladen, wie sie ist. Die Skalierung in den Import Settings (und in der Transform-Komponente) haben darauf keinen Einfluss. Du kannst allerdings in den Import Settings auch eine Maximalgröße per Plattform festlegen, und das ist dann wirklich die Größe des Textur-Assets, wie es in den Build gepackt wird. Bei Texturgrößen gilt: So groß wie nötig, so klein wie möglich.
  24. 1 point
    Für @Peanuts Idee brauchst du das eigentlich genau nicht. Ich weiß nicht, ob sie überhaupt funktioniert, aber deshalb finde ich die Idee sogar ganz gut. Geschwindigkeit vom Mittelpunkt weg oder hin solltest du mit den bereits vorhandenen Modulen hinkriegen. Es geht aber noch viel einfacher. Ist mir gerade aufgefallen, als ich das mal ausprobieren wollte. Du machst einfach bei deinem Partikelsystem "External Forces" an und Packst dir da, wo die Münzen hinsollen, ein "Particle System Force Field" hin. Das lässt du auf den Standardeinstellungen, außer: End Range: Das muss so groß sein, dass alle möglichen Spawnpunkte für Partikelsysteme abgedeckt sind. Gravity: Das kannst du höher einstellen, damit die Partikel stärker zum Mittelpunkt des Force Fields gezogen werden. Drag/Strength: Das stellst du auf etwas höheres als 0, damit die Partikel nicht immer wieder über das Ziel hinausschießen. Denk daran, dass die Sache mit "End Range" bedeutet, dass sowohl die Partikelsysteme, als auch das Force Field im UI-Canvas sein sollten.
  25. 1 point
    Hi, ich habe in den letzten zwei Jahren immer wieder an einem Flüssigkeit Simulations Shader gearbeitet und seit Mitte letzten Monats ist er jetzt im AssetStore erhältlich. Mit Fluid Flow kann man in Echtzeit simulieren wie beispielsweise Blut oder Farbe an einer Oberfläche herunter fließt. Es ist keine 100% physikalisch korrekte Simulation, sondern das Asset versucht mit möglichst geringen Performance Einbußen überzeugend Flüssigkeit zu simulieren. Dazu werden die Berechnungen mithilfe eines Compute Shaders auf die Grafikkarte ausgelagert. Compute Shader benötigen allerdings mindestens DirectX 11 oder OpenGL 4.3 support! Zudem sind Android und iOS momentan nicht unterstützt! Fluid Flow Echtzeit Flüssigkeit Simulation dynamisches Anpassen der Flussrichtung unterstützt animierte Objekte Tropfen* * werden asynchron von der GPU zur CPU gelesen. Dieses Feature gibt es erst seit Unity 2018.2, und mit OpenGL wird es nicht unterstützt! Demo (win): https://drive.google.com/drive/folders/1ewcJn2Cc56Pcg3IVXPgvDDYucfRrU2mg Asset Store: https://assetstore.unity.com/packages/vfx/shaders/fluid-flow-143786
  26. 1 point
    Kommt drauf an, was du haben willst. Eine perspektivische Kamera kennt eben Perspektive. Was weiter weg ist, ist kleiner und näher am Bildmittelpunkt. Eine orthographische Kamera kennt das nicht, sondern rendert alles gleich groß, egal, wie weit es weg ist. Zum visualisieren kannst du dir die Linien anschauen, die die selektierte Kamera in der Scene View anzeigt. Kameras rendern nichts, was näher dran ist als die "Near Clip Plane". Die kannst du verstellen, aber das solltest du lassen, da diese Werte mit Transformationmatrizen zu tun haben, mit denen Dinge angezeigt werden. Daran rumzuspielen, kann also Konsequenzen haben, mit denen man sich erstmal beschäftigen müsste. Oder anders gesagt: Kameras rendern Dinge erst ab einem Mindestabstand - platziere deine Objekte entsprechend.
  27. 1 point
    Moinsen! Ich habe eben mal meine Script Templates hochgeladen. Dieses Bild sagt vermutlich einiges: Alles schön sortiert, außerdem zusätzliche Templates für ScriptableObjects oder Editor-Scripts. Sind auch ein paar Änderungen gegenüber den Vanilla-Templates drin. Windows Line Endings und überall 4 Leerzeichen statt Tabs und so. Wenn ihr Sachen objektiv besser findet, immer her mit den Merge Requests, wenn subjektiv, gerne forken. Hier gibt's das Ganze: https://gitlab.com/FlaShG/unity-script-templates Anleitung steht in der Readme.
  28. 1 point
    Screenshotsaturday!! Hier kommt einfach mal ein Screenshot vom neuen Ghost House Flipper, von gerade eben. Alle Lämpchen sind an, was normalerweise nicht vorkommen kann.
  29. 1 point

Announcements

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

Weiterleitung zum Entwickler "daubit"



×
×
  • Create New...