Hi! This game was build from the ground up to work with vrchat. Since vrchat is a 3D game I had to implement 2D elements into the 3D space. All the 2D elements are on the same scene (3D) but far away from the player spawn and put into a screen with a camera following the character. Most of Unity´s 2D components work very well on vrchat (2D colliders, 2D physics, ,2D effectors....) but the 2D Layer-based-collision cant be modified on vrchat .. (sadly) The levels were made using tile maps on a grid, and obstacles were made into prefabs for easily drag and drop anywhere I need them. I got inspired from the level design tools from Mario Maker. For input, it uses the Udon input events, so it will work with any controller the player uses.