mischa
a39c557e13
Predicted Billiards: fix dragging with predicted Rigidbody
2024-03-20 21:26:29 +08:00
mischa
376ed53483
Predicted Billiards: fix ghost materials
2024-03-20 18:38:14 +08:00
mischa
ac87583df8
perf: Prediction.CorrectHistory removed O(N) insertion. adjusting successive values is enough.
2024-03-18 16:24:12 +08:00
mischa
a84b7863ac
fix: Prediction.CorrectHistory now adjusts afterIndex after removals/insertions
2024-03-18 15:52:24 +08:00
mischa
af35e8678f
Prediction: explain insertions complexity
2024-03-18 15:49:08 +08:00
MrGadget
dfa551239e
fix(SimpleWeb.jslib): Locally Scope Runtime
2024-03-17 14:10:38 -04:00
MrGadget
36bac87b63
style(SimpleWeb.jslib): Code formatting
2024-03-17 14:09:51 -04:00
MrGadget
b062fe77ff
fix(SimpleWeb): scope websocket locally instead of globally
2024-03-15 21:29:44 -04:00
Robin Rolf
80687d3b4c
fix(LobbyServiceCreateDialogue): Added warning about Edgegap Lobby Name bug ( #3783 )
2024-03-15 16:02:50 -04:00
Robin Rolf
9641842147
fix: Edgegap Lobby Create UI Tweaks ( #3782 )
...
* chore: Edgegap Lobby Create UI Tweaks
* 3 loading dots
* help urls
2024-03-15 13:19:50 -04:00
MrGadget
84cb7089bf
EncryptionTransportInspector: Fixed button label
2024-03-15 11:44:36 -04:00
MrGadget
3ccf1c1ce5
fix(EdgegapLobbyKcpTransport): Fixed HelpURL
2024-03-15 11:16:52 -04:00
Robin Rolf
3a4f68dfcc
chore: old unity compat for PredictedRigidbody ( #3781 )
2024-03-15 22:12:20 +08:00
Robin Rolf
a23c5b75ad
feat: Edgegap Lobby Transport & Demo ( #3780 )
...
* feat: Edgegap Lobby Transport & Example
* Code Cleanup
* Rename data -> models
* Remove debug logs
* Log errors as OnClient/ServerError dont always log
* Only show joinable lobbies
* naming
* Transport help url
* old unity compat
* Unity 2020 compat as well
* Readme
* lobby name is required + correct placeholder
* Update lobby ui prefab too
* Lobby creation ui tweaks
* lobby url tooltip tweak
* Remove test lobby url
2024-03-15 14:09:04 +00:00
mischa
4d6ac92b62
Prediction: RingBuffer perf comments
2024-03-15 13:44:46 +08:00
mischa
52d00aa3e3
perf: PredictedRigidbody MoveTowardsCustom: only calculate distance factor once
2024-03-15 13:33:04 +08:00
mischa
e7e02c6662
perf: PredictedRigidbody MoveTowardsCustom
2024-03-15 13:21:11 +08:00
mischa
3daa3db8a4
perf: PredictedRigidbody smoothFollowThreshold squared caching
2024-03-15 12:55:09 +08:00
mischa
f532f0a283
PredictedRigidbody: update hard follow commented code
2024-03-15 12:32:42 +08:00
mischa
2a70862462
perf: PredictedRigidbody caches physics transform to use GetPositionAndRotation
2024-03-14 17:57:41 +08:00
mischa
0fc6688cea
perf: PredictedRigidbody UpdateGhosting: only every few frames
2024-03-14 17:55:44 +08:00
mischa
be0efc9fb6
prediction benchmark updated
2024-03-14 15:37:59 +08:00
mischa
fde90897f3
perf: PredictedRigidbody RecordState only grabs count once
2024-03-14 15:30:28 +08:00
mischa
1c7cc41bbd
perf: PredictedRigidbody state properties inlined
2024-03-14 15:30:25 +08:00
mischa
7f0a774968
perf: PredictedRigidbody RecordState only calls NetworkTime.time getter once
2024-03-14 15:30:22 +08:00
mischa
cbc67aecc0
perf: PredictedRigidbody FixedUpdate caches sqr computations
2024-03-14 15:29:52 +08:00
mischa
0781dd58c0
inlining
2024-03-14 15:29:33 +08:00
mischa
ce00db0943
perf: PredictedRigidbody caches IsMoving sqr computations
2024-03-14 15:29:30 +08:00
mischa
a4f42194cf
perf: PredictedRigidbody syncs a blittable struct once instead of doing 5 separate reads/writes
2024-03-14 14:57:38 +08:00
mischa
fb1d2ee683
PredictedSyncData struct first step: same reads & writes
2024-03-14 14:57:38 +08:00
mischa
3e852d3cb3
perf: PredictedRigidbody doesn't log "Separating Physics" anymore
2024-03-14 14:57:38 +08:00
mischa
95881c02b5
perf: Prediction.Sample() removed SortedList foreach iteration allocations(!)
2024-03-14 14:57:38 +08:00
mischa
cd4715fc7c
perf: PredictedRigidbody doesn't log hard correction when ahead anymore
2024-03-14 14:57:38 +08:00
mischa
59ef0e0cf3
PredictedRigidbody: syntax
2024-03-14 14:57:19 +08:00
mischa
949022e265
PredictedRigidbody: OnDeserialize parsing grouped together (syntax change)
2024-03-14 11:39:52 +08:00
mischa
f7a29718b9
Prediction: syntax
2024-03-13 19:33:43 +08:00
mischa
82737f58fa
readme changed from .txt to .md for formatting
2024-03-13 17:19:48 +08:00
mischa
a88ec0e5c1
Examples: Prediction Benchmark with readme & current results
2024-03-13 17:18:21 +08:00
mischa
62bf067f0e
PredictedRigidbody: make .predictedRigidbody accessible to other components!
2024-03-13 13:26:08 +08:00
MrGadget
a25b74565f
fix(ILPostProcessorAssemblyResolver): Ignore Bee.BeeDriver
...
- There is now BeeDriver2, so using StartsWith
2024-03-12 12:22:14 -04:00
Robin Rolf
fafc10b639
fix: EdgegapKcp StopHost() null reference exception ( #3779 )
...
see https://github.com/MirrorNetworking/Mirror/issues/3708
2024-03-12 00:35:21 +08:00
mischa
65f33dee90
fix : #2503 Weaver Custom Read Write functions for Serialization not working over multiple assembly definitions
2024-03-08 15:20:23 +08:00
MrGadget
f10bc77195
SimpleWebTransport: moved overrides down
2024-03-07 07:57:22 -05:00
Robin Rolf
1a915ccde7
feat: SWT overrides Transport.IsEncrypted & EncryptionCipher ( #3777 )
...
TLS isn't technically correct, but there's no good way to get that info
2024-03-07 12:52:33 +08:00
Robin Rolf
bac0f77cd7
feat: EncryptionTransport overrides IsEncrypted & Cipher ( #3776 )
2024-03-07 12:51:42 +08:00
mischa
d558c17815
feat(Transport): IsEncrypted, EncryptionCipher virtuals
2024-03-07 12:10:36 +08:00
mischa
421804378b
fix: NetworkServer.OnCommandMessage NullReferenceException due to log message accessing a guaranteed-to-be-null value
2024-03-07 11:47:51 +08:00
mischa
9e15f2423d
fix: NetworkServer.Destroy now warns instead of throwing for null objects again
2024-03-06 11:20:56 +08:00
Robin Rolf
9b2a6a3023
chore: EncryptionTransport help url ( #3774 )
2024-03-05 17:20:15 -05:00
MrGadget
e59e370f4f
Removed empty folder meta
2024-03-05 16:44:13 -05:00
MrGadget
9b103d5370
breaking: Asset Store Release
...
BREAKING CHANGE: Asset Store Release
2024-03-05 12:44:01 -05:00
Robin Rolf
dac1f6406f
fix: EncryptionTransport uses KDF to ensure fixed size key ( #3773 )
...
* reset _time
* fix: EncryptionTransport use KDF to ensure fixed size key
* Expose pub key through transport
* Old Unity compat
2024-03-05 12:13:09 -05:00
Robin Rolf
5482e60ff0
feat: EncryptionTransport ( #3768 )
...
* initial working transport
* code cleanup & transport wrap tests
* better connection tests
* Handle bouncycastle exceptions
* clean up usings
* Mirror icon :)
* list to allow for removing entries during loop
* Profiler sampling
* Unity 2019 compat
* code style
* pubkey validation
* use builtin aes engine selector
this is overly optimistic, as the hardware accelerated engine is only available on .net core 3 or higher
* Older unity version fix
2024-03-05 08:51:34 -05:00
mischa
a87e65c2c7
MIRROR_88_OR_NEWER
2024-03-05 20:26:49 +08:00
mischa
8344063563
fix: NetworkServer.Spawn now activates inactive GameObjects (for example, in case they were previously Unspawned)
2024-03-05 11:56:47 +01:00
mischa
dbc3887529
fix: NetworkServer.Destroy never destroys scene objects anymore since unlike prefabs, once they are gone we can never instantiate them again ( #3771 )
2024-03-03 17:56:39 +08:00
mischa
6b526d754f
refactor: NetworkServer DestroyObject(DestroyMode) logic moved to Unspawn() + Destroy to remove the DestroyMode parameter
2024-03-02 18:11:39 +08:00
mischa
f7d47ef8b7
LagCompensator: preview notice
2024-02-26 08:56:43 +01:00
mischa
6b21de516d
LagCompensator: rename collider field to be more obvious in Inspector
2024-02-25 12:49:34 +01:00
mischa
9081b2e3d2
feat: LagCompensator as convenience component that wraps all the Lag Compensation logic
2024-02-24 16:50:33 +01:00
mischa
8dc4b616c4
fix(Prediction): disable setting scale for joints since it causes issues with parenting
2024-02-22 08:47:25 +01:00
MrGadget
490dea82ab
fix: Safer version for FindAnyObjectByType ( #3765 )
...
Unity docs are a mess on when FindAnyObjectByType was implemented:
- 2021.3 says it is
- 2022.1 says it's not
- 2022.2 says it is
2024-02-16 17:22:59 +01:00
mischa
2ed1d7329c
fix(Prediction): ConfigurableJoints' range of motion is now moved correctly
2024-02-16 11:22:06 +01:00
mischa
78cdaef9c4
fix(PredictedRigidbody): reduce-send-rate considers angular velocity now too!
2024-02-14 19:45:28 +01:00
mischa
41a6591f8a
Prediction: sync delta rotations too [FakeByte]
2024-02-14 11:02:08 +01:00
mischa
beea27275f
Prediction: only set velocity if not kinematic
2024-02-14 11:01:03 +01:00
mischa
3960d5beaa
Prediction: better motion smoothing time
2024-02-14 11:00:40 +01:00
mischa
1532c46557
Prediction: sync angularVelocity too
2024-02-14 11:00:26 +01:00
mischa
2f9d60be48
perf(Prediction): ghosts-on-demand(!)
2024-02-11 17:07:54 +01:00
MrGadget
946716b29a
CanvasNetworkManagerHUD: fixed indent
2024-02-10 07:28:03 -05:00
mischa
3354363eae
PredictedRigidbody: add OnBeforeApplyState callback
2024-02-09 17:46:22 +01:00
MrGadget
157bf67a86
feat(NetworkRigidbody): Default Sync Direction = Client To Server ( #3764 )
...
- This is done in Reset so Network Behaviour isn't effected.
- This will not change components already in place on objects / prefabs unless user manually chooses Reset in the inspector.
2024-02-09 09:47:23 +01:00
MrGadget
fab87866f3
fix(SWT): Improved logging in ClientHandshake
...
- Added hint to check Server Roles for handshake key mismatches
2024-02-08 10:32:54 -05:00
MrGadget
1d5c8b6f87
feat(NetworkAnimator): Default Sync Direction = Client To Server
...
- This is done in Reset so Network Behaviour isn't effected.
- This will not change NA components already in place on objects / prefabs unless user manually chooses Reset in the inspector.
2024-02-07 17:40:16 -05:00
Robin Rolf
146a49eb09
breaking: perf: change NB.syncVarDirtyBits to field ( #3762 )
...
@miwarnec saw the property showing up while profiling. Very much unnecessary, so lets change that to a field.
BREAKING: Changed NetworkBehaviour.syncVarDirtyBits from a "get-only" property to a field
2024-02-07 18:04:36 +01:00
mischa
1bd84f06d1
perf(PredictedRigidbody): OnSerialize faster
2024-02-05 20:59:55 +01:00
mischa
8e21a2101c
fix(PredictedRigidbody): fix host mode [FakeByte]
2024-02-05 09:10:48 +01:00
mischa
0556eb2e57
fix(PredictedRigidbody): only show 'hard correcting because too old' warning if older than entire state history limit. not when starting to record only 2-3 entries yet.
2024-02-05 09:07:36 +01:00
mischa
fcea3ce9d4
Prediction: expose physics copy components to inheriting classes
2024-02-02 09:07:31 +01:00
mischa
d00af697bb
perf(PredictedRigidbody): reduce sends to 1 Hz while idle(!)
2024-02-02 09:00:55 +01:00
mischa
6b44b2a407
perf(PredictedRigidbody): only record state if changed(!)
2024-02-02 08:30:23 +01:00
MrGadget
54110660ac
fix(NetworkManager): FinishStartHost-Don't force localhost ( #3759 )
2024-02-01 18:06:28 +01:00
JesusLuvsYooh
fbd64dfb79
feat: NT-UR bit flag changed detection to lower bandwidth usage. ( #3721 )
...
* feat: NT-UR bit flag changed detection to lower bandwidth usage.
Also major credits to our Ninja.
* Tooltip updated
* fix: NT-Unreliable Quaternion Compression Fix
Credits to ninja of course :D
* NT-U new improvements
Credits to Ninja
* Nothing to see here..
* Added comment to Quat Rotation Fix
* Sensitivity check to improve value comparisons.
Without this, X 0 and X -4.955753E-07 (0) would trigger as a change of value.
Helps epsilon/floating point inaccuracies.
* Moved around checks.
rotationChanged not needed now for non-compressed bool, as we check individual rotation sensitivity changes.
We can move this inside quat compress check.
* Use Rot/All, not just RotX as a compress changed flag.
* Set Just Rot.
* Updated Reset to ResetState
* Fixing PR 3571/3572/3572 in this new bitflag branch
---------
Co-authored-by: ninjakickja <80569286+ninjakickja@users.noreply.github.com>
2024-02-01 11:04:23 -05:00
MrGadget
3e0a6ae64e
SyncDictionary: Fixed typo in comment
2024-02-01 06:32:28 -05:00
James Frowen
188a41073f
fix(NetworkClient): Call NetworkTime.SendPing from OnTransportConnected ( #3686 )
...
* fix: fixing time not being sent on connect
client does not send ping if connecting to server within 2 seconds of starting, the new PingNow function will tell client to send the message right away instead of after lastPingTime+PingInterval
* Update Assets/Mirror/Core/NetworkTime.cs
* Update Assets/Mirror/Core/NetworkTime.cs
* Update Assets/Mirror/Core/NetworkClient.cs
* Update Assets/Mirror/Core/NetworkTime.cs
---------
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2024-02-01 06:21:15 -05:00
MrGadget
fe32a0569f
NetworkTime: SendPing method added.
2024-02-01 06:14:22 -05:00
mischa
d304ada178
Prediction: warn about not readable meshes
2024-01-31 22:02:04 +01:00
MrGadget
4ca0583d2c
NetworkManager: fixed comment
2024-01-30 06:07:51 -05:00
MrGadget
72f085c9a7
fix(MultiplexTransport): Use TryGetValue for Lookups ( #3758 )
2024-01-30 04:42:44 -05:00
mischa
6b915f3517
fix typos
2024-01-30 08:48:59 +01:00
MrGadget
4ecf28d6ab
KcpTransport: fixed ToString to match other transports
2024-01-29 21:38:29 -05:00
MrGadget
3ed770ac45
fix(MultiplexTransport): Fixed log output
2024-01-29 21:34:47 -05:00
mischa
1f123b783c
ThreadLog: more obvious prefix!
2024-01-29 23:54:42 +01:00
Robin Rolf
dd7337c84f
perf(Extensions): Add shim for transform.GetPositionAndRotation ( #3755 )
...
Doesn't exist in unity versions 2021.2 or earlier
2024-01-29 12:49:31 -05:00
mischa
158c5971bb
perf(PredictedRigidbody): next round of optimizations
2024-01-29 12:05:14 +01:00
MrGadget
c5aa7d5808
fix(MultiplexTransport): Better Startup Logging
2024-01-29 04:51:28 -05:00
MrGadget
7821e24789
Merged master
2024-01-29 02:14:35 -05:00
mischa
2b92ac7674
perf(Prediction): optimize ghosts. deep profiling: 93 objects before=0.08ms after =0.03ms!
2024-01-28 12:41:13 +01:00
mischa
1899539e03
perf(Prediction): optimize LateUpdate because this shows in profiler! deep profiling: 93 objects, before=0.54ms, after=0.22ms => 2.5x faster!
2024-01-28 12:29:18 +01:00
mischa
f926514a6e
perf(Prediction): cache .transform getter because this is performance critical
2024-01-28 12:29:18 +01:00