Fusion Spawn() and RPCs acting much slower than PUN Instantiate() and RPCs
The whole answer can be found below.
Try Our
Documentation
Please check if you can find an answer in our extensive documentation on Fusion.
Join Us
on Discord
Meet and talk to our staff and the entire Photon-Community via Discord.
Read More on
Stack Overflow
Find more information on Stack Overflow (for Circle members only).
Fusion Spawn() and RPCs acting much slower than PUN Instantiate() and RPCs
squirrel
2022-02-04 00:49:59
Hello there! I am working on converting our project from PUN to Fusion.
When Spawn()
ing objects in Fusion, it's taking, on average, 3-3.5 seconds for other clients to see the new game object. By comparison, in PUN it's nearly instantaneous: It took 0.2 seconds or less each time.
Additionally, RPCs in Fusion are very slow compared to PUN. An RPC in PUN that takes 0.2 seconds or less takes, on average, 5.5 seconds in Fusion to be seen on the other client.
For the RPCs, I'm planning on moving the way they work to [Networked]
properties, but I have no idea what to do about the slow Spawn()
.
Is fusion simply slower than PUN? We rely on RPCs a lot in our code (something that I'm willing to change); is it possible that we have too many RPCs and they're making RPCs (and Spawns) slow? Is there a function I need to be calling that "pushes" these types of calls along faster?
Any thoughts on the matter would be very appreciated! Unfortunately these issues would be big enough that we'd need to rollback to PUN, if there's no solution.
P.S. It's further confusing to me because the Fusion 100 examples work very quickly! And yet I don't see any major differences in how I'm implementing Spawn()
versus the Fusion 100 scenes.
Comments
It may not be very helpful but I can say that Spawn and RPCs don't take anything like that long for me.
I realized that my Spawn()
function was wrapped in / called by an RPC call. Removing it from the RPC makes the Spawn()
much, much faster! Virtually instantaneous, much like PUN.
So that solves one of the problems. But now the question remains... why are our RPCs taking 3-6 seconds to execute on other clients?
In the meantime I plan on moving much of our RPC functionality into networked properties. I'll report with results.
Back to top