Pause Menu, Main Menu, and Bug Fixes: Kelvin Roman


This week in our development journey, I've been hard at work on several important tasks. To start with, I've been shaping up our menus, both the Title Menu and the Pause Menu, making sure they run smoothly and look great.

On the technical side, I've been exploring different ways to load levels, and I've settled on using the Assimp library for this purpose. Currently, I've got all the necessary data like vertices and indices loaded into memory, although they're not yet visible on the screen. The good news is that we're on the verge of completing the level loading process, and I'm confident it'll be wrapped up by tomorrow.

Looking forward, my next goals include implementing character movement, fine-tuning the way objects interact in the game world, and introducing a timer to keep players informed about their in-game progress.

As for our main menu and pause menu, I faced a noteworthy challenge related to button collision detection. The method I initially intended to use for collision detection within DWrite didn't quite work as expected. To overcome this, I took a hands-on approach and created custom collision code. Essentially, this involved tracking the mouse's position and checking if it fell within the bounds of the text displayed on the screen. Once this part was sorted, implementing the desired button functionality became much simpler. For instance, clicking "exit" on the main menu gracefully closes the application, while choosing "play" initiates the loading of the necessary models. Once loaded, the game proceeds as intended. During gameplay, pressing 'p' activates the pause menu, where players can opt to continue the game or return to the main menu. This setup is crucial as it lays the groundwork for the game's overall flow and functionality.

Throughout the week, I also dedicated some time to fixing a few bugs and bringing back features that had undergone code refactoring. A significant achievement was restoring full-screen functionality, so now the application starts in full-screen mode. Importantly, I've made sure that the button press for switching between full-screen and regular mode only registers one change at a time, ensuring a smooth user experience.

I must admit that progress has been a bit slow, mainly because I'm the sole contributor tackling the various challenges in game development. However, once the level loading is completed more noticeable changes will be shown and progress will start to speed up. 

I'm eager to share more with you in our next post and want to express my sincere gratitude for your ongoing interest and support in this journey. Thank you for being a part of it so far!

Leave a comment

Log in with itch.io to leave a comment.