Move camera and player OR move objects?

Let’s say you’re making a top-down arcade game, would you move the objects from top to down or move the actual player and camera with it? which way is better in performance?

This is not a technical question, and as a general direction in game mechanic decision, there is no true or best answer.

I’m the sole programmer of Neon Town and it is a top down 2D action game. What I do is moving player and other characters and moving camera with them whenever necessary, including zoom-in/zoom-out to keep them in screen.

  • For a game like Mario, moving camera with player might be considered best option.
  • Nuclear Throne / Enter Gungeon type of 2D top down action games usually move camera with the player.
  • As I said I use incorporation of both.

To iterate technically, your Camera will be rendering objects in the screen per-frame. Moving camera will not change that fact. Moving other objects won’t change that fact.

There is no better performance with them. Performance is affected by how many objects you have, how many components those objects have, and how many different material/mesh/sprite are you drawing to screen.

I can provide best performance in all scenarios, and I can provide laggy bad implementations for all scenarios.

The decision lies with your game mechanic decision. Unity will behave almost the same.