The project I am currently working on is a 2d Metroidvania platformer. We are using scene changers with scene additive to load new scene once we reach a certain point of the game. We want the scenes to be loaded additive so they are not all spawned at the start of the game. Problem is we don't want the player to move when a scene is loaded additive. At the moment you have only the choices of spawning at a spawn id, specific position, saved scene position, or a variable. We could mark every single scene changer by a position and go room by room making the position of the spawn point to change, but this won't guarantee small position changes for the player. If a player is jumping while going through a door and we have a set position this will snap the character to a spot making it look glitching. So is there a way to use scene changers and not move the player from where they are.

also is there any scene changers or events that could be used to despawn rooms. We were going to make it where if you get too far from rooms we despawn them to save memory and performance.
  • Try setting the Spawn ID to -1 to prevent spawning the player at a spawn point. There shouldn't be a problem with a missing player, since your player's game object should still be alive.

    As for despawning rooms, there's no feature for that built-in. Either use a 3rd party tool for this or manually unload it via Unity's functionality (see the API here, should theoretically also be possible via Call Function nodes in events).
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on!
Sign In or Register to comment.