Commit ea4f91f
committed
feat: NetworkTransform synchronization mode is configured on NetworkConfig
The project wide setting reached NetworkConfig through an IProcessSceneWithReport, which cannot reach
a scene placed NetworkManager in play mode. NetworkManager.OnEnable moves itself into the
DontDestroyOnLoad scene, and it does so before the callback runs, so the scene the callback is handed
no longer contains the object it is looking for. It applied to zero NetworkManagers every time and
nothing reported that, because the setting it read was correct and only the write was missing. A
build was unaffected, since there the callback runs at build time against the authored scene. Its
sibling SetInScenePlaced survives the same callback only because NetworkObject sets InScenePlaced at
runtime as a fallback, which is why this is the first place the callback's limit was visible.
TransformSyncMode is now public on NetworkConfig and authored per NetworkManager under "Transform
Synchronization" in the inspector. It is serialized by the same mechanism as every other NetworkConfig
value, so scenes, prefabs and builds all carry it with no build pipeline involvement. That also
removes the prefab processor, which ran on import and therefore baked whatever the setting happened to
be the last time a prefab was imported.
Being public also lets a project offer the mode as a pre session choice instead of an editor round
trip. NetworkManager captures the value into ActiveTransformSyncMode when it starts and everything on
the send and receive paths reads that, so a write during a session cannot leave already spawned
instances registered under one mode while new ones use the other, and cannot move the connection
configuration hash out from under a client that is still joining.
NetworkTransform's inspector no longer hides UseUnreliableDeltas under the batched mode. The mode
belongs to the NetworkManager that will run the instance, which a prefab cannot know, and the runtime
already ignores the value while batching.
NetworkTransformSyncModeConfigurationTests covers the delivery that nothing covered before: every
other fixture reaches the mode through the same assignment the integration test harness makes, so a
delivery path that never ran left them all green.1 parent c884fed commit ea4f91f
12 files changed
Lines changed: 219 additions & 145 deletions
File tree
- com.unity.netcode.gameobjects
- Editor
- Configuration
- Runtime
- Components
- Configuration
- Core
- Tests/Runtime/NetworkTransform
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
| 14 | + | |
13 | 15 | | |
14 | 16 | | |
15 | 17 | | |
| |||
Lines changed: 0 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | 40 | | |
51 | 41 | | |
52 | 42 | | |
| |||
Lines changed: 0 additions & 23 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
4 | 3 | | |
5 | 4 | | |
6 | 5 | | |
| |||
133 | 132 | | |
134 | 133 | | |
135 | 134 | | |
136 | | - | |
137 | 135 | | |
138 | 136 | | |
139 | 137 | | |
| |||
194 | 192 | | |
195 | 193 | | |
196 | 194 | | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
212 | | - | |
213 | | - | |
214 | | - | |
215 | | - | |
216 | | - | |
217 | 195 | | |
218 | 196 | | |
219 | 197 | | |
| |||
224 | 202 | | |
225 | 203 | | |
226 | 204 | | |
227 | | - | |
228 | 205 | | |
229 | 206 | | |
230 | 207 | | |
| |||
Lines changed: 0 additions & 65 deletions
This file was deleted.
Lines changed: 0 additions & 2 deletions
This file was deleted.
Lines changed: 15 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
51 | 52 | | |
52 | 53 | | |
53 | 54 | | |
| 55 | + | |
54 | 56 | | |
55 | 57 | | |
56 | 58 | | |
| |||
138 | 140 | | |
139 | 141 | | |
140 | 142 | | |
| 143 | + | |
141 | 144 | | |
142 | 145 | | |
143 | 146 | | |
| |||
183 | 186 | | |
184 | 187 | | |
185 | 188 | | |
| 189 | + | |
186 | 190 | | |
187 | 191 | | |
188 | 192 | | |
| |||
319 | 323 | | |
320 | 324 | | |
321 | 325 | | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
322 | 337 | | |
323 | 338 | | |
324 | 339 | | |
| |||
Lines changed: 25 additions & 33 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
4 | 3 | | |
5 | 4 | | |
6 | 5 | | |
| |||
220 | 219 | | |
221 | 220 | | |
222 | 221 | | |
223 | | - | |
224 | | - | |
225 | | - | |
226 | | - | |
227 | | - | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
228 | 229 | | |
229 | | - | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | | - | |
234 | | - | |
235 | | - | |
236 | | - | |
237 | | - | |
238 | | - | |
239 | | - | |
240 | | - | |
241 | | - | |
242 | | - | |
243 | | - | |
244 | | - | |
245 | | - | |
246 | | - | |
247 | | - | |
248 | | - | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
249 | 243 | | |
250 | 244 | | |
| 245 | + | |
| 246 | + | |
251 | 247 | | |
252 | 248 | | |
253 | 249 | | |
254 | 250 | | |
255 | | - | |
256 | | - | |
257 | | - | |
| 251 | + | |
| 252 | + | |
258 | 253 | | |
259 | 254 | | |
260 | 255 | | |
| |||
269 | 264 | | |
270 | 265 | | |
271 | 266 | | |
272 | | - | |
273 | | - | |
274 | | - | |
275 | | - | |
| 267 | + | |
276 | 268 | | |
277 | 269 | | |
278 | 270 | | |
| |||
Lines changed: 5 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1971 | 1971 | | |
1972 | 1972 | | |
1973 | 1973 | | |
1974 | | - | |
| 1974 | + | |
1975 | 1975 | | |
1976 | 1976 | | |
1977 | 1977 | | |
| |||
2403 | 2403 | | |
2404 | 2404 | | |
2405 | 2405 | | |
2406 | | - | |
| 2406 | + | |
2407 | 2407 | | |
2408 | 2408 | | |
2409 | 2409 | | |
| |||
3883 | 3883 | | |
3884 | 3884 | | |
3885 | 3885 | | |
3886 | | - | |
| 3886 | + | |
3887 | 3887 | | |
3888 | 3888 | | |
3889 | 3889 | | |
| |||
3916 | 3916 | | |
3917 | 3917 | | |
3918 | 3918 | | |
3919 | | - | |
| 3919 | + | |
3920 | 3920 | | |
3921 | 3921 | | |
3922 | 3922 | | |
| |||
5163 | 5163 | | |
5164 | 5164 | | |
5165 | 5165 | | |
5166 | | - | |
| 5166 | + | |
5167 | 5167 | | |
5168 | 5168 | | |
5169 | 5169 | | |
| |||
0 commit comments