feat: Unified Netcode POC migration#3963
Open
NoelStephensUnity wants to merge 117 commits intodevelop-3.x.xfrom
Open
feat: Unified Netcode POC migration#3963NoelStephensUnity wants to merge 117 commits intodevelop-3.x.xfrom
NoelStephensUnity wants to merge 117 commits intodevelop-3.x.xfrom
Conversation
…/v2-x-x/ngo-and-n4e
This is a "still messy" version that is working but needs more thought on the namespace collision fixes.
Adding support within NetworkPrefabs and NetworkPrefab to handle the registration of hybrid spawned objects (i.e. no more hacky-way of registering). Moving the hybrid spawn registration into the Start method of the NetworkObject to provide time for everything to run through Awake. Added some script (defined out) that was helping to debug why NetworkObject was being disabled sometimes (moving the initialization to Start resolved the issue).
Issue with AnimatorOverrideController not being handled which could cause improper processing of the animator's layers and parameters. Issue with clients sending state changes from the NetworkAnimatorStateChangeHandler due to added HasAuthority check. When using a server authoritative animation model, owner Clients should still be able to send trigger updates to the server.
Migrated the unique world setup into this branch. The world is created prior to starting NetworkManager completely. When using hybrid prefabs (i.e. mixed mode), the final portion of the NetworkManager's start logic (i.e. endpoint connection, etc.) is not invoked until the hybrid prefabs have been registered. Hybrid prefabs wait until the World is finished starting/being initialized.
Added an experimental "NetworkObjectBridge" icon (programmer art alert). Added some additional script to handle moving the GhostAdapter and NetworkObject bridge to the top of the GameObject's components where GhostAdapter is first and then NetworkObjectBridge is 2nd. Removed silly code to get the root transform.
This update is the first pass to making ChildNetworkBehaviours a table keyed off of the NetworkBehahviour identifiers. This allows for the removal of a NetworkBehaviour without it impacting the remaining NetworkBehaviours. This could most likely be optimized by generating the initial table ahead of time on each prefab. In-scene placed that are not registered prefabs would need to do this upon being instantiated.
Fixing test project not being able to load without an AnalyticsTests compilation error. Making ObjectNameIdentifier just use the new way we handle ChildNetworkBehaviours (i.e. it is a table now). Marking NetworkObject.ChildNetworkBehaviours comment above as having finished the migration to a table. Noting we should find a better place/way to initialize this stuff.
White space removal. UnifiedBootstrap name update.
Removing this from test project as we have never come back to use it. (It will still be on the develop-2.0.0 branch)
Member
Author
There was a problem hiding this comment.
This should be set to the base-line editor version we release NGO v3.x.x with.
(Note to revert this change)
Member
Author
There was a problem hiding this comment.
This should be set to the base-line editor version we release NGO v3.x.x with.
(Note to revert this change)
Member
Author
There was a problem hiding this comment.
This should be set to the base-line editor version we release NGO v3.x.x with.
(Note to revert this change)
Removing trailing whitespaces.
Adding some exceptions to the v3.x.x branch until we determine if we want to rename those assemblies or have them all in one assembly.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
(Not ready for merge but setting it to review for testing purposes)
Purpose of this PR
This PR takes the current POC work in progress and migrates it into the next major version for NGO.
The majority of changes:
Unity.Netcode.GameObjects.Editornamespace change.Jira ticket
MTT-14623
Changelog
NA (base develop-3.x.x branch creation)
Documentation
Testing & QA (How your changes can be verified during release Playtest)
Functional Testing
Manual testing :
Manual testing doneAutomated tests:
Covered by existing automated testsCovered by new automated testsDoes the change require QA team to:
Review automated tests?Execute manual tests?Provide feedback about the PR?If any boxes above are checked the QA team will be automatically added as a PR reviewer.
Backports
No back porting needed since this is for v3.x.x.