sebcrozet — discord The key is to only rely on what’s part of the IEEE 754-2008 standard. Then, all platforms that implement this standard (which includes all the modern CPUs. Compliance to IEEE 754-2008 is also part of the WASM spec) will yield the same results for float operations. This makes fixed point math unnecessary. Functions like transcendental are not part of the standard so they have to be re-implemented (otherwise relying on libm result in platform-specific results). Then you need to be a bit careful about serialization/deserialization to make sure that restarting the simulation from two different snapshots at different times will yield the same simulations. Finally, you need to make sure that all the user inputs are run in the exact same order: Croquet takes care of it.
~
Where does the data go when we drag (upload) glb or images in the scene? We see that there is a files.us.croquet.io in the network connection, how are the data managed? Can we host our own upload server?
codefrau 🦩 — discord The file is encrypted with a random key, hashed, and uploaded to our file servers. The handle (which includes the hash and password) is stored in the session model. Since session data is encrypted with the session password whenever it leaves the client this means everything is fully end-to-end encrypted. Even if someone had access to our file servers all they see is encrypted data, and even if they hack us, we don’t have the key. That being said there is a way to override our file servers but we haven’t tested that in a while. You also would have to implement your own authentication scheme. Ours is based on your API key which you can restrict to certain URLs. Also, since we use Google buckets our upload bandwidth is practically unlimited, you would have to design your servers that way. What’s your use case?
~
Some of our customers require us to store data on EU servers, others are even stricter and don't let us process the data at all.
codefrau 🦩 — discord Ah, EU law makes sense. If you contact our support we can switch an API key over to our EU servers. We just don’t have a self service UI for that yet. And if you have a client who is willing to pay for an enterprise plan we can make custom file servers work too.