Delta update support for byte[]
This is currently the only thing preventing me from ditching Photon/Fusion right now and I'm desperate :isabellelol:
Byte arrays can be super useful for sending things like face-tracking or hand-tracking efficiently, sending only the changed bytes. Or for more generic models where the data can be serialized into a byte[], which is useful for cases where the primitive types or lengths aren't known before hand.
In cases like these, changing a single byte in a 256-byte array would require the entire array to be transmitted across the network. Without support for delta updates it's practically impossible to send these kinds of data efficiently.
Please? :pleading:
5 Replies
Do get delta update support for byte[] in Photon? we were under the impression they also send the full array.
I believe so!
I should have specified that Photon uses their own NetworkArray<T> which is used in place of a native
byte[]
.
Support confirms here that only changed elements of a NetworkArray<T>
are included in updates to peers: https://forum.photonengine.com/discussion/19818/is-networkarray-optimized-to-only-send-the-changed-elementsisn't that the same as a realtime collection with a byte in each entry?
ahh, this is going to work similarly to RealtimeArray with a model for each byte. I bet we can add a collection type that works this way. it just adds a decent amount of CPU overhead to consistently scan the array contents and compare every network frame
@plonuu will you add a Linear task to write up a feature doc for this?
I feel like we could get something done fairly quickly
Super exciting!
Really appreciate you guys taking suggestions like this 💜