For our third game project at Futuregames, our first made in Unreal Engine, we set out to make a chill game where you just walk around taking photos, which you then sell in order to get money to be able to upgrade your gear. Quite a simple game in idea, very complex in programming.
First thing I worked on and spent most of my time on in this game was getting the photo system to work. We needed to be able to:
As our primary interface in this game revolved around an in-game laptop, I made some functions that made it easier for our designer to implement the laptop. This was stuff like showing the photos in the gallery, being able to set a wallpaper (something we got applause for at the presentations), and so on.
Our designer made a compass at the top of the screen, similar to the one in Skyrim. It shows directions of where things are. I implemented it and created a system for "points of interests", that automatically get added to it when discovered.
As our game lacked a clear "finish line", I added achievements into it so the player has something to work towards. I call these achievements "read only", as they work by only reading the save files. What achievements you have unlocked never get written/stored anywhere. I made it like this because it was a very last minute addition and I didn't want to mess with the save files.
As Unreal 5.2 was very new when we started our project, Nvidia and AMD had not updated their DLSS/FSR libraries so we had to wait for them to do that. Eventually they did though and I added the options to our game (along with all our other graphics settings). I'm a big fan of upscaling techniques so I wanted to dive into it and see how you implement it. I think most, if not all, games going forward will incorporate either DLSS or FSR so I felt this was something that was very good to learn.