First tests and a VR island
First, I wanted to see if it was even technically possible to develop VR games for my Meta Quest 2 on my Apple M1 laptop, because there were several potential single points of failures in that setup. I wanted to use 3D programs that support Apple Silicon, because game dev is resource intensive and I'm on a laptop. Apple Silicon is only supported in pre-release or beta versions of Unity and Visual Studio, and is not supported for Unreal Engine (it works under Rosetta 2 though). And the Oculus app also can't be installed on Mac. It took a few days of configuration but I finally got functioning environments, for both Unreal Engine and Unity.
I know that Blender will be useful to learn at some point to create models, but I decided to focus on learning Unity or Unreal Engine first and use pre-made assets instead of making my own, since I am more interested in game development than 3D modeling at the moment.
Then I set up Unreal Engine because unlike Unity, the starting templates already provide some basic functionality out-of-the-box, like making a first or third-person game, and a VR template as well. I played around with the VR template, made some basic shapes, basic materials, and added basic logic using Blueprints to my scenes, to for instance play a sound when I hit a djembe in VR, program some simple AI to make a character move randomly, or add the ability to jump. I tried setting up a C++ environment with VS Code but it was not working well, so I haven't tried coding in C++.
In Unreal Engine, I created an island with a simple house, a dog, a radio that plays Bob Marley songs, and djembes that play a sound when you hit them. Then, in Unity, I made a similar island that includes the hands and physics management provided by Oculus.
I wouldn't really call these functioning "games", but creating a world and walking around inside it was fascinating and exhilarating.
Time spent: 7 days
From my very little hands-on experience, I like both Unity and Unreal Engine, but I think Unity is a better choice in my current situation (to develop VR games for Quest 2, and 2D games on an M1 Mac). So I will use Unity to ramp up my game dev skills.
Game 1: Sonic-like platformer
I created a basic 2D platformer with enemies that the player can shoot, coins to collect, and an end goal. It has a parallax effect, a static UI to display the number of coins, and a start screen. The character has different sprites depending on if he is idle or jumping. The player can die by touching enemies or falling off the platforms.
Time spent: 2.5 days
Game 2: Top-down city management game
I created a static-view 3D strategy game where you have to construct buildings and manage resources such as food, people, and energy to generate money. The goal is to reach 1000 money to win as fast as possible (my record is 44 days).
Time spent: 1 day
Game 3: Tower defense
I am still working on this project and will update this section soon.
Time spent: 15 days