789f3753b5
* fix Break out the UnityTransport's Update method into two methods: EarlyUpdate and PostLateUpdate. * update Modifications to NetworkManager to invoke the newly adding EarlyUpdate and PostLateUpdate methods. * update Adjusting the job handle name. Migrating the m_FlushSendJobHandle.Complete(); outside of the driver IsCreated check to avoid any potential job safety issues. * style removing unused Update method and removing the Unity.Netcode.Transports.UTP namespace reference. * update Removing the job handle stuff as that could potentially break users trying to get RTT during OnGUI. * test fix Adjusting the UnityTransport tests to simulate the NetworkManager invoking the EarlyUpdate and PostLateUpdate methods. Adding event processing in shutdown primarily for integration testing to handle any pending events prior to shutting down the transport. This resolves the issue with the UnitTransportConnectionTests failing in areas where it was just waiting and not invoking the EarlyUpdate and PostLateUpdate methods. * test - fix Approaching the issue differently by adding a UnityTransportTestComponent that registers with the playerloop update stages needed to properly handle message processing. * test Removing the unused additional script and namespace reference. * test removing some more unused code and the namespace reference. * style removing some CRs and unused local var. * test - fix Removing whitespace issue. Setting velocity to zero after moving and after waiting. * update Adding change log entries. Found the culprit with the transform ownership instability. Moving an object can give it velocity which if there is enough time that passes between updates then fixed update will apply enough velocity motion to move the object and it will continue to move. Increased mass and linearDampening and setting the linear velocity to zero in the appropriate places. |
||
---|---|---|
.github | ||
.yamato | ||
Examples | ||
com.unity.netcode.gameobjects | ||
dotnet-tools | ||
minimalproject | ||
testproject | ||
testproject-tools-integration | ||
.buginfo | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
LICENSE.md | ||
README.md |
README.md
Netcode for GameObjects
Welcome!
Welcome to the Netcode for GameObjects repository.
Netcode for GameObjects is a Unity package that provides networking capabilities to GameObject & MonoBehaviour workflows. The framework is interoperable with many low-level transports, including the official Unity Transport Package.
Getting Started
Visit the Multiplayer Docs Site for package & API documentation, as well as information about several samples which leverage the Netcode for GameObjects package.
You can also jump right into our Hello World guide for a taste of how to use the framework for basic networked tasks.
Community and Feedback
For general questions, networking advice or discussions about Netcode for GameObjects, please join our Discord Community or create a post in the Unity Multiplayer Forum.
Compatibility
Netcode for GameObjects targets the following Unity versions:
- Unity 2021.3(LTS), and 2022.3(LTS)
On the following runtime platforms:
- Windows, MacOS, and Linux
- iOS and Android
- Most closed platforms, such as consoles. Contact us for more information about specific closed platforms.
Development
This repository is broken into multiple components, each one implemented as a Unity Package.
.
├── com.unity.netcode.gameobjects # The core netcode SDK unity package (source + tests)
└── testproject # A Unity project with various test implementations & scenes which exercise the features in the above packages.
Contributing
We are an open-source project and we encourage and welcome contributions. If you wish to contribute, please be sure to review our contribution guidelines.
Issues and missing features
If you have an issue, bug or feature request, please follow the information in our contribution guidelines to submit an issue.
You can also check out our public roadmap to get an idea for what we might be working on next!