Skip to content

Archives

  • Januar 2022
  • Dezember 2021
  • November 2021
  • Oktober 2021
  • September 2021

Categories

  • Keine Kategorien
Trend RepositoryArticles and guides
Articles

Unity-Technologies / multiplayer

On Dezember 16, 2021 by admin

Willkommen im Unity Real-time Multiplayer Alpha Repository!

Hier findet ihr alle Ressourcen, die ihr braucht, um mit dem Prototyping eurer eigenen Echtzeit-Multiplayer-Spiele zu beginnen.

NetCode Manual

Transport Manual

Klicke hier, um das Forum zu besuchen

  • Enthaltener Inhalt
  • Unity Transport Package
  • Unity-Netcode-Paket
  • Beispiele
  • Ping
  • Soaker
  • Asteroids
  • LagCompensation
  • NetCube
  • Installation

Enthaltener Inhalt

  • sampleproject/ – Unity Projekt, das alle Multiplayer-Beispiele enthält.
  • sampleproject/Assets/Samples/Asteroids – Asteroids Klon, der die Kern-Netcode-Konzepte demonstriert.
  • sampleproject/Assets/Samples/LagCompensation – Beispiel, das Lag-Kompensation basierend auf Unity Physics zeigt.
  • sampleproject/Assets/Samples/NetCube – Beispiel, das die grundlegende Verwendung von Netcode zeigt.
  • sampleproject/Assets/Samples/Ping – Beispiel, das die grundlegende Verwendung von Transport zeigt.
  • sampleproject/Assets/Samples/Soaker – Ein Soak-Tester für den Transport, um typische Produktionslast zu testen.
  • sampleproject/Assets/Samples/CustomNetworkInterface – Ein Beispiel, das zeigt, wie man eine spielspezifische Socket-Implementierung in Unity Transport verwendet.

Unity Transport Package

Das neue Unity Transport Package, das die UNet low-level API ersetzen wird.Die Vorschau des Transport Package unterstützt den Aufbau von Verbindungen und das Senden von Nachrichten an einen entfernten Host. Weitere Informationen über das Transportpaket finden Sie in der Unity-Transportdokumentation

Unity-Netcode-Paket

Das Netcode-Paket stellt die Multiplayer-Funktionen bereit, die für die Implementierung der Synchronisierung von Welten in einem Multiplayer-Spiel erforderlich sind. Es verwendet das Transportpaket für die Socket-Level-Funktionalität und ist für das Entity Component System gemacht.

  • Einige Dinge auf höherer Ebene, die es bietet, sind
    • Server-Autoritäts-Synchronisationsmodell.
    • RPC-Unterstützung, nützlich für den Kontrollfluss oder Netzwerk-Ereignisse.
    • Client/Server-World-Bootrapping, so dass man eine klare Trennung der Logik hat und man einen Server mit mehreren Clients in einem einzigen Prozess laufen lassen kann, wie den Editor beim Testen.
    • Synchronisieren von Entitäten mit Interpolation und clientseitiger Vorhersage, die standardmäßig funktionieren
    • Debugging-Tools für den Netzwerkverkehr
    • Unterstützung für den Konvertierungsfluss von GameObjects, so dass Sie ein Hybridmodell verwenden können, um einem GameObject/MonoBehaviour-basierten Projekt Multiplayer hinzuzufügen.

    Weitere Informationen über das NetCode-Paket finden Sie in der Unity NetCode-Dokumentation

    Beispiele

    Ping

    Das Ping-Beispiel ist ein guter Ausgangspunkt, um alle im Transportpaket enthaltenen Teile kennenzulernen. Der ping-Client baut eine Verbindung zum ping-Server auf, sendet eine ping-Nachricht und empfängt eine pong-Antwort. Ping besteht aus mehreren Szenen, die alle in sampleproject/Assets/Scenes/ zu finden sind.

    • PingMainThread.unity – Eine Main-Thread-Implementierung von ping.
    • Ping.unity – Eine vollständig jobifizierte Version des ping-Clients und -Servers.
    • PingClient.unity – Der gleiche jobifizierte Client-Code wie Ping.unity, aber ohne den Server.
    • PingServer.unity – Die dedizierte Server-Version des jobifizierten ping. Ein Headless (oder Server Build in 2019.1) Linux 64 Bit Build dieser Szene sollte für Multiplay bereitgestellt werden.
    • PingECS.unity – Eine ECS-Version des jobifizierten Ping-Beispiels.

    Soaker

    Ein Stresstest, der eine bestimmte Anzahl von Clients und einen Server im selben Prozess erstellt. Jeder Client sendet Nachrichten mit der angegebenen Rate und der angegebenen Größe und misst Statistiken.

    Asteroids

    Ein kleines Spiel, das die Funktionen des Unity NetCode Pakets nutzt.

    LagCompensation

    Ein Beispiel, das zeigt, wie man Lag-Kompensation basierend auf Unity Physics implementiert. In einem Spiel, das auf dem Unity NetCode basiert, zeigt der Client einen alten Weltzustand an. Die Lag-Kompensation erlaubt es dem Server, dies zu berücksichtigen, wenn er Raycasts durchführt, so dass der Spieler auf das zielen kann, was tatsächlich auf dem Client angezeigt wird.

    NetCube

    Ein kleines Beispiel, das die Funktionen des Unity NetCode Pakets zeigt. Dies ist der Code, der in der Unite-Präsentation über NetCode verwendet wird.

    Installation

    Um die Beispiele in diesem Repository auszuprobieren, müsst ihr nursampleprojects/ in Unity öffnen.

    • Wenn ihr ein neues Unity-Projekt mit diesen Paketen erstellen wollt, ist das ebenfalls möglich.
      • Stellt sicher, dass ihr eine unterstützte Version von Unity habt (2019.3 oder neuer)
      • Erstelle ein neues Unity Projekt
      • Wenn du NetCode verwenden möchtest, füge Unity NetCode aus dem Paketmanager hinzu.
      • Wenn du den Transport aber nicht NetCode verwenden möchtest, füge Unity Transport aus dem Paketmanager hinzu.
      • Paketabhängigkeiten werden automatisch in das Projekt gezogen

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Archive

  • Januar 2022
  • Dezember 2021
  • November 2021
  • Oktober 2021
  • September 2021

Meta

  • Anmelden
  • Feed der Einträge
  • Kommentare-Feed
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress