Hi everyone, sorry for the vague title; I don't know how else to describe it better.. I'm making a boat game and I wanted to add some leaves that float in the water and the player could push around with the boat. Basically, I want the leaf to be pushed on the X/Z axis and have the Y position generated by a script. (based on the water wave's height) The way I have it now, I am spawning the leaves from a singular script (each with a sphere collider and a rigidbody with no gravity) then, from that same script (because I've read that it's faster than having individual scripts with Update functions for each leaf), I am setting their Y pos based on the wave's formula with rb.MovePosition(). Thing is, the framerate takes a massive hit from constantly moving them up/down, and it seems to be caused by the movement itself, not anything else in the code.. If I remove everything and move all the leaves up by delta time, the game still lags. (even with no rigidbody, weirdly enough). If the rb's are active, but not moved via script, they don't lag at all... So, is there a more efficient way to move the objects, or a better way of doing this altogether? Thanks!