Jump to content
Unity Insider Forum

Shalafi

Members
  • Posts

    64
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Shalafi's Achievements

Advanced Member

Advanced Member (3/3)

0

Reputation

  1. Hi, ja da fehlt mir auch die Erfahrung. Ich hab beim Tilemap-Renderer auch nix gefunden, wo man die Schatten einstellen könnte ... Gruß
  2. Kann mir da keiner helfen? Wenn ich dem Player einen ShadowCaster2D gebe, wirft er tatsächlich Schatten. Nur bei der Tilemap funktioniert das nicht. Was ist nötig, damit ein Objekt Schatten wirft? Ich benutze in dem Spiel keinen TilemapCollider2D, da das viel zu langsam ist. Die Map wird von einem Server gestreamt und immer wenn Chunks hinzugefügt werden, wurden wohl die Collider der ganzen Map neu berechnet (auch beim CompositCollider). Deswegen haben ich ein Skript geschrieben, was allen Tiles an der Oberfläche einen Box-Collider gibt. Das funktioniert auch bisher wunderbar. Könnten deshalb die Schatten nicht funktionieren? Gruß
  3. Hi, ich arbeite an einem 2D-Projekt, das Ganze geht in Richtung Terraria/Starbound. Einen Map-Generator, verschiedene Rule-Tiles usw. hab ich schon. Jetzt möchte ich das grafisch etwas aufwerten und möchte Lighting hinzufügen. Leider bekomme ich das mit Shadows nicht hin. Das Lighting an sich geht schon, nur legen sich die Lights einfach über die Tiles drüber. Hat jemand ne Idee, wie ich das Ganze noch grafisch etwas aufwerten könnte? Gruß PS: Wäre auch im Discord zu erreichen: Shalafi#4096
  4. Hi, ich habe eine Tilemap in der Art von Terraria/Starbound. Diese möchte ich jetzt gerne mit 2D-Lights ausstatten. An der Oberfläche soll das Licht normal scheinen und im Untergrund soll es dunkel werden. Wie kann ich das am Besten erreichen? Ich hab bisher keine Directional-Lights in 2D gefunden. Point-Lights (zB Fackeln) für den Untergrund sollten kein Problem sein. Hat jemand ein paar Tipps für mich? Gruß
  5. Hi, danke für die Antwort. Wie genau funktioniert das mit den BoxCollidern zu Poolen? Gruß
  6. Hi, ich hab mal wieder Probleme mit meiner Tilemap Ich habe ein Tilemap-Streaming, bei der über einen Server die Tilemap vor dem Spieler geladen - und hinter dem Spieler wieder gelöscht wird. Das funktioniert auch alles wunderbar. Mein Problem ist jetzt der Collider. Wenn ein neuer Bereich der Tilemap geladen wird, dauert es immer > 1 Sekunde bis der Collider neu erstellt ist. Wenn ich testweise den Collider abschalte, dauert das Rendern an sich nur wenige Millisekunden. Hat jemand eine Lösung, wie ich die Zeit auf ein vertretbares Maß runterbekomme? Ich hab schon mit diversen Eintellungen am TilemapCollider2D rumgespielt und auch den CompositeCollider2D ausprobiert. Meine Idee war, dass man beim Laden der Map vielleicht jeder Tile nur nen Collider gibt, wenn in einem angrenzenden Feld keine Tile ist. Kann mir jemand weiterhelfen? Gruß
  7. HI, danke für die Antwort. Das ist schon alles bekannt und wird später auch so gemacht. Im Moment soll der Map-Generator eine Map erstellen, die man dann bearbeiten kann und dann auf dem Server speichern. Das Streamen der Map wird dann so wie bei dir beschrieben passieren. Es geht mir im Moment nur darum, dass das Generieren der Map 2-3 Sekunden dauert, aber das Löschen vielfach länger. Gruß
  8. Hi, Ich habe einen Map-Generator geschrieben, der mir eine (riesen) Tilemap generiert. (~1 Mio. Tiles) Das funktioniert ohne Probleme und ist in 2-3 Sekunden getan. Mein Problem ist es, dass wenn ich das Spiel beende (oder die Map anderweitig lösche) es dann ewig dauert, bis Unity wieder reagiert. Das kann dann schon mal ne Minute dauern. Kann man das irgendwie beschleunigen, bzw. woran kann das liegen? Vielleicht noch zur Info: die Map an sich ist in verschiedene GameObjects mit Tilemap-Components unterteilt (Chunks, um nach Bedarf einen Teil der Map zu deaktivieren). Könnte es daran liegen? Gruß Shalafi
  9. Hi, ich habe ein Skript geschrieben, mit dem ich eine 2D Tilemap in Unity generiere. Wenn die Welt etwas größer wird, hab ich zB mehr als 120000 Tiles gleichzeitig in der Scene. Das Generieren der Tiles ist nicht das Problem, das ist in knapp einer halben Sekunde getan. Das Problem ist dann der TilemapCollider. Der braucht dann immernoch ein paar Sekunden, bis er fertig ist. Kann man den Collider für einzelne Tiles ausschalten? Oder muss ich die Tilemap in kleinere Tilemaps unterteilen (die Generierung funktioniert schon in Chunks, die Tiles werden allerdings in ein einziges Tilemap-Objekt geschrieben), und dann für alle Tilemaps, die nicht in der nähe des Spielers sind, deaktivieren? Oder gibts da noch eine bessere Lösung? Gruß
  10. Hi, ich möchte ein 2D Terrain erstellen, so in die Richtung Terraria. Wie erstelle ich am Besten das Terrain? Kann ich dafür die Unity Tilemap nehmen, oder doch lieber selbst Meshes generieren, wie man es in 3D macht? Es geht mir hauptsächlich um die Performance, da ja mit unter viele Tiles/Blöcke/wie auch immer, angezeigt werden müssen. Gruß
  11. Hi, das Socket.ReceiveFrom() läuft bei mir in einem extra Task. Zwischen den beiden ReceiveFrom() kopiere ich die Daten einfach nur in ein anderes Byte-Array, welches im Mainthread dann verarbeitet wird. Das sollte eigentlich keine Probleme machen, dass da zu viel verlohren geht, oder? Gruß
  12. Hi, mir ist schon klar, dass es bei UDP auch zu Packet-Loss kommen kann. Reliable UDP hab ich bereits eingebaut. Allerdings wollte ich wissen, ob das auch ein Grund für verlorene Packets sein kann, oder ob die Socket da schon was buffert oder nicht. Gruß
  13. Hi, ich hab wieder eine Frage zu Sockets: Kann es passieren, dass bei einer Socket (UDP) zwischen Socket.ReceiveFrom(), dem Abarbeiten des Empfangenen, und dem nächsten Socket.ReceiveFrom() Daten ankommen, die dann verloren gehn? Wenn bei einem Server mehrere Clients gleichzeitig Senden, kann das zu Problemen führen? Wenn Ja, wie kann man das am Besten verhindern? Gruß
  14. Hi, danke für die Antwort. Ich wollte wissen, ob das was ich mit Stream.BeginWrite() verschicke, auch in einem Stück bei Stream.BeginRead() ankommt. Wenn das so ist brauch ich mir ja darum keine Gedanken zu machen. Gruß
  15. Hi, ich habe folgende Frage: Kann es beim Empfangen per TCPClient vorkommen, dass die gesendeten Daten in mehreren Stücken ankommen? Oder verhindert das der Client automatisch? Wenn es zum splitten kommt, wie geht man am Besten damit um? Muss man da als erstes die Größe des Packets übertragen und dann mit dem Verarbeiten warten bis alles da ist? Gruß Shalafi
×
×
  • Create New...