Commit Graph

66 Commits

Author SHA1 Message Date
Wojtek Figat
3e906686db Improve #1119 to use a bit flag for object sync 2023-05-28 13:30:14 +02:00
Wiktor Kocielski
a21abaac84 Implement INetworkObject::OnNetworkSync and make INetworkObject just virtual 2023-05-27 04:12:46 +03:00
Wojtek Figat
90d633fb2d Minor improvements to new replication hierarchy 2023-05-24 22:59:22 +02:00
Wojtek Figat
2c1f6e561a Fix replication regression from eb2fc0f02f 2023-05-24 11:52:32 +02:00
Wojtek Figat
c4f57d19db Fix network replicator incorrect error message filter 2023-05-24 10:52:59 +02:00
Wojtek Figat
eb2fc0f02f Add **Network Replication Hierarchy** for robust control over replication in multiplayer games 2023-05-24 09:46:38 +02:00
Wojtek Figat
4879b9bd90 Add CPU profiler events to various networking functions 2023-05-23 16:11:34 +02:00
Wojtek Figat
1b8b585367 Optimize network replication when no client can receive object 2023-05-21 22:38:48 +02:00
Wiktor Kocielski
f0564e0b06 Fix NetworkReplicator::SetObjectOwnership not considering spawn queue for hierarchical asignment 2023-05-17 03:34:03 +03:00
Wojtek Figat
70593177c7 Add NetworkReplicator::HasObject 2023-05-16 14:58:47 +02:00
Wojtek Figat
953ae3e9bb Fix hierarchical network ownership propagation to sub-objects
#1066
2023-05-16 14:58:16 +02:00
Wojtek Figat
64f3f1e9bc Add network error log for missing network object when accessing ownership
#1066
2023-05-16 13:08:25 +02:00
Wojtek Figat
0a5d37fd9b Add support for spawning multiple objects over network within a single group that is not from Prefabs
#1066
2023-05-07 19:40:31 +02:00
Wojtek Figat
531d005169 Fix accessing object ownership info locally before object gets fully spawned
#1066
2023-05-07 19:39:57 +02:00
Wojtek Figat
f5c9dce34a Fix network RPC object id mapping back to server id when sent from client 2023-04-16 18:55:31 +02:00
Wojtek Figat
e4804db160 Add NetworkRpcParams for sending RPC to specific set of clients or to read sender id 2023-04-15 12:04:40 +02:00
Wojtek Figat
62fdfe2519 Add NetworkStream::SenderId to detect message sender during object replication or RPC code 2023-04-14 14:25:18 +02:00
Wojtek Figat
4bdeb26e74 Add NetworkReplicator::EnableLog to optionally enable verbose logging of networking 2023-04-13 13:06:39 +02:00
Wojtek Figat
9429be0830 Fix compilation warnings 2023-02-19 14:35:47 +01:00
Wojtek Figat
7fe7742430 Various improvements 2023-02-11 12:55:02 +01:00
Wojtek Figat
9b6ba67186 Fix playing self-hosted game to properly receive RPCs 2023-02-10 15:06:37 +01:00
Wojtek Figat
a099bd25f6 Various minor fixes to networking 2023-02-10 12:00:04 +01:00
Wojciech Figat
c1c1f5d60e Fix sending client RPC to all clients (including the owner) 2023-01-19 14:47:29 +01:00
Wojciech Figat
689a042e88 Fix sending client RPC from host that is both server and client 2023-01-18 13:39:51 +01:00
Wojciech Figat
04727cf2bc Add error log if the RPC is invoked on non-networked object 2023-01-18 13:38:18 +01:00
Wojciech Figat
5dd91d0cdc Adjustments for high-level networking usage #878 2023-01-16 12:04:00 +01:00
Wojciech Figat
a7e428a21c Merge branch 'master' into 1.5
# Conflicts:
#	Content/Shaders/GI/DDGI.flax
#	Content/Shaders/GI/GlobalSurfaceAtlas.flax
#	Content/Shaders/TAA.flax
#	Content/Shaders/VolumetricFog.flax
#	Source/Editor/CustomEditors/Editors/ActorTagEditor.cs
#	Source/Engine/Core/Config/GraphicsSettings.cpp
#	Source/Engine/Engine/PostProcessEffect.cs
#	Source/Engine/Graphics/GPUResourcesCollection.cpp
#	Source/Engine/Graphics/GPUResourcesCollection.h
#	Source/Engine/Graphics/PostProcessBase.h
#	Source/FlaxEngine.Gen.cs
2023-01-10 15:37:55 +01:00
Wojciech Figat
c6bbfdc7f0 Fixes for networking change in 762f460e23 2022-12-29 23:05:52 +01:00
Wojciech Figat
6458d7e0db Add support for sending replicated object data in parts 2022-12-02 12:18:08 +01:00
Wojciech Figat
f61100deca Cleanup for networking impl 2022-12-02 10:55:12 +01:00
Wojciech Figat
a819d657db Refactor network object spawnign to batch all subobjects with a single spawn message to reduce invalid objects linkage on different clients 2022-11-30 12:30:49 +01:00
Wojciech Figat
96742404fd Various improvements for network objects despawning 2022-11-30 12:30:48 +01:00
Wojciech Figat
b4fdb0cc26 Improvements and fixes for multiplayer networking 2022-11-25 16:50:44 +01:00
Wojciech Figat
efb48697fa Add network RPCs 2022-11-16 17:31:28 +01:00
Wojciech Figat
e38ab163c4 Add support for hierarchical objects ownership 2022-11-03 14:34:35 +01:00
Wojciech Figat
b816e2b3a9 Add INetworkObject and implement various networking features 2022-11-03 08:53:09 +01:00
Wojciech Figat
70cfbada04 Add support for spawning network object on custom set of clients 2022-11-03 08:53:07 +01:00
Wojciech Figat
01a7ae8bd4 Add NetworkTransform component 2022-10-31 16:31:06 +01:00
Wojciech Figat
5e81d83648 Fix 2022-10-31 13:36:13 +01:00
Wojciech Figat
2475b46375 Fix INetworkSerializable if class has vtable offset 2022-10-31 13:25:29 +01:00
Wojciech Figat
a90de82e45 Add network objects dirtying api 2022-10-31 12:21:04 +01:00
Wojciech Figat
ecfcc88dda Add network serializer callback for type without it but with valid base type serializer 2022-10-31 12:21:03 +01:00
Wojciech Figat
00c5f7d5d4 Add prefabs spawning over network 2022-10-31 12:21:02 +01:00
Wojciech Figat
4123e4cf69 Improve network replication debug log usage 2022-10-28 13:19:26 +02:00
Wojciech Figat
2c2071285a Add proper networked objects destruction upon despawn or shutdown 2022-10-28 11:12:39 +02:00
Wojciech Figat
28dda32f0e Fix when spawning already spawned object 2022-10-27 14:41:03 +02:00
Wojciech Figat
bff93de116 Various improvements for networking 2022-10-27 14:18:53 +02:00
Wojciech Figat
5e60085371 Add automatic parenting for scene objects spawned over the network 2022-10-27 13:30:22 +02:00
Wojciech Figat
8a76d32ded Various improvements 2022-10-24 15:29:30 +02:00
Wojciech Figat
30fdde614d Add network objects ownership changing with network sync 2022-10-24 15:02:11 +02:00