Its my first game and ive a few problems i dont understand

the background fish pass over stuff despite setting the order in layer to 1, and the weeds are set to 2 but I need the fish to stay behind! my other issue is I put a square just outside of the main camera with a box collider with trigger checked to delete everything that touches it with a simple script for performance clean-up but things just pass right through. I really appreciate any help
Screenshot 2024-08-03 104629

This is one of those things that stumbled me back when I was first learning Unity. “Trigger” doesn’t mean “this collider will do something when another object touches it”. It means “this collider allows other objects to pass through it”. It also enables the OnTrigger methods for scripts. The purpose of them is to trigger events (eg entering the middle of a room and having a door slam shut behind you).

Oh… reading those that makes a lot of sense, so i set it is trigger and I think even static so if I remove them the code should detect the objects and destroy them? Could you give any input on my render issues? And sincere thanks for replying

sorting order is overridden by sorting layers

so either make sure all the sprites are on the same sorting layer (usually the Default) or if you have different sorting layers check the order they are placed on. You can have for example Foreground, Gameplay, Background. You place the hero and the NPCs on the Gameplay layer and obviously place the backgrounds and the foreground object on their own layers