- can't unparent camera in OnDisable
- Player may be in a subscene so put camera in active scene after unparenting so it's not lost if additive is unloaded.
- Moving player object between subscenes unexpectedly fires OnDisable & OnEnable...who knew?
- Now uses Network Authenticator
- ChatUI is now a networked object with Cmd/Rpc
- Player is much simplified
- LoginUI is a separate canvas
- Login and server HUD combined into one panel
* feat: Support Fast Enter Playmode
- Uses [RuntimeInitializeOnLoadMethod] to reset statics
* fixed namespace
* Added comment
* Don't clear cmdHandlerDelegates
* Don't set aoi null
* renamed Init to Reset in static classes
* renamed method to ResetStatics
* renamed one too many
* marked NetworkServer.Shutdown with RuntimeInitializeOnLoadMethod
* Added RuntimeInitializeOnLoadMethod to NetworkClient.Shutdown
* renamed NetworkTime.Reset to ResetStatics
* reverted changes to Player
- Will be changing Chat example in master
* Renamed NetworkManager.Shutdown to ResetStatics
* fixed comment
* NetworkServer now calls NetworkIdentity.ResetStatics from its Shutdown
* Updated NetworkManagerTest::ShutdownTest
* Updated NetworkServerTest::ShutdownCleanup
* Updated NetworkServerTest::ShutdownCleanup
* Updated NetworkClientTest::ShutdownCleanup
* comments
* Call NetworkIdentity.ResetStatics from NetworkClient.Shutdown
- No longer passes `NetworkConnection` on Client
- Use `NetworkClient.connection` within your event hanlder
This is only breaking for users that assigned their own events to OnClientAuthenticated in the inspector. Everything else related to an Authenticator works the same with no changes needed because nearly all Authenticator mechanisms are private.
Deprecating would be worse than not in this case, since custom user-made handers would be the far uncommon case as far as I know.
* Obsoletes NetworkConnection param in client callbacks
- Use NetworkClient.connection instead
* fixed comments
* fixed more comments
* fixed more comments
* Restored original calls to virtuals with pragmas
* Call both old and new methods where possible
* added comments
* updated deprecated date
* fix parameters
* fixed examples
* comments
* NetworkTransform Improvements Reeeeesubmission
1: Optional boolean to allow onlySyncOnChange.
2: Checks if pos/rot/scale changed, if not, sends the value as null (1byte)
* NetworkTransform Improvements +defines
1: Optional boolean to allow onlySyncOnChange.
2: Checks if pos/rot/scale changed, if not, sends the value as null (1byte)
Contains the bundle of latest NT adjustments from the squad.
#3013#3021#3019#3018
Along with a fix for applying latest snapshot, if it exists, before applying local data.
#3024
* NetworkTransform smart sync.
Checks if pos/rot/scale changed, if not, sends the value as null (1byte)
So if someone has rotation and position turned on, but just rotates around Y, they save almost an entire pointless Vector3 position being sent.
- Again, majority of credits to Ninja.
* NetworkTransform smart sync. B
Adjusted to default(Vector3?)/Quat as requested.
Checks if pos/rot/scale changed, if not, sends the value as null (1byte)
So if someone has rotation and position turned on, but just rotates around Y, they save almost an entire pointless Vector3 position being sent.
- Again, majority of credits to Ninja.
* NetworkTransform smart sync. C
Line break added at end of file? as requested.
Adjusted to default(Vector3?)/Quat as requested.
Checks if pos/rot/scale changed, if not, sends the value as null (1byte)
So if someone has rotation and position turned on, but just rotates around Y, they save almost an entire pointless Vector3 position being sent.
- Again, majority of credits to Ninja.
Added NetworkTransformChild, set target as Turret
Adjust NTC and NT variables
Dragged ProjectileMount and Spot Light into Turret, so they all move together.
Added RotateTurret code
Updated current CmdFire to use projectileMount.rotation
* onlySendOnMove for new NetworkTransform
Majority of credits to Ninja.
Check comments, tooltips, and messages us if further clarification needed.
* onlySendOnMove for new NetworkTransform B
Majority of credits to Ninja.
Check comments, tooltips, and messages us if further clarification needed.
* onlySendOnMove for new NetworkTransform C
- added defines by request, to easier revert or disable new addition.
Majority of credits to Ninja.
Check comments, tooltips, and messages us if further clarification needed.
* onlySendOnMove for new NetworkTransform D
- added defines by request, to easier revert or disable new addition.
- added cachedSnapshotComparison by request.
- adjusted default variable and buffer check + thoroughly tested.
Majority of credits to Ninja.
Check comments, tooltips, and messages us if further clarification needed.
* onlySendOnMove for new NetworkTransform E
- code style => && adjusted as requested
- added defines by request, to easier revert or disable new addition.
- added cachedSnapshotComparison by request.
- adjusted default variable and buffer check + thoroughly tested.
Majority of credits to Ninja.
Check comments, tooltips, and messages us if further clarification needed.
* Optimised example game textures.
The 6 skyboxes for AdditiveLevels
Lowered from 4k .png (50 mb per image)
to 1k .jpg (70 kb per image)
* Delete .vsconfig
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* feat: Added Reset to Interest Management
- Used in Distance and Spatial to reset `lastRebuildTime`.
* Updated Template
* Update Assets/Mirror/Runtime/NetworkServer.cs
Co-authored-by: vis2k <info@noobtuts.com>
- fix: Send() now throws an exception for messages which require > 255 fragments
- fix: ReliableMaxMessageSize is now limited to messages which require <= 255 fragments
* feat: Support more nullable types
- NetworkWriter was also slightly rearraged to match NetworkReader
* fixed code smells
* fixed WriteVector4Nullable
* Got some of them working
* Couple more
* Couple more
* Added the rest
* reverted accidental change
Calling RemovePlayerForConnection followed by AddPlayerForConnection with the same player object fails to call OnStartLocalPlayer again because previousLocalPlayer was't properly reset to null.
* fix: NT checks NetworkClient.ready
NT should not be calling Cmd's when client isn't ready.
* Update Assets/Mirror/Components/NetworkTransform2k/NetworkTransformBase.cs
Co-authored-by: vis2k <info@noobtuts.com>
* Pass connection when spawning scene objects so that authority is not lost
* Update Assets/Mirror/Runtime/NetworkServer.cs
Co-authored-by: vis2k <info@noobtuts.com>
* feature: SyncVar<T>
* remove unused import
* SyncVarNetworkBehaviour<T> to support explicit hooks of <T> and to prepare for Weaver [SyncVar] internal replacement
* only call hook on client for compatibility with original [SyncVar]
* show SyncVar<T> label to make it obvious what type it is. useful to distinguish weaver replacements later