Monday, May 7, 2018

Unreal Engine Experiments: Prototype Menu System v2.0 Update

About three years ago, I had created a menu system with the intent of having UI elements that could be easily tacked on to all of my projects. The project was released for free on GitHub and had received a slew of updates for a while. But after shifting my focus over to creating content for the Unreal Engine Marketplace, I found myself having very little breathing area for working on side projects. And eventually, work on the menu system was abandoned, though it was still available for public use in its Unreal Engine v4.9 iteration. However, lately, I've been investing more of my spare time on some fun little side projects and to be honest, finding it quite enjoyable and refreshing. So after my recent foray into recreating the Blink ability from Dishonored, I found myself thinking about bringing the project back online and actually seeing it through to completion.

Loading up the project again in the latest version of Unreal Engine, I was surprised to find that it was quite compatible with the new version. But as I went through the code, it became glaringly obvious that most of it would have to be completely revamped. The menu system was working quite alright, but three years is a long time, and I had originally worked on it just a few months after I first started using Unreal Engine. And going through the project again, the code spoke for itself as to how cringeworthy some of the workflows were. As a result, most of the time spent working on this new update was focused on improving upon the existing codebase. In any case, the work is done and since I absolutely suck at making video demonstrations, I'll just briefly go over the various menu screens available in the v2.0 edition.


Main Menu




The main menu allows you to either start a new game, go to the options menu, or quit the game.

Options Menu




While the options menu has four different sub-options available, only the display and graphics options are functional in the current state.

Display Options Menu




Players can control the screen resolution and window mode settings through this menu.

Graphics Options Menu




As shown in the screenshot, the graphics options menu allows you to control the following settings:


  • AA Quality
  • Foliage Quality
  • Post-Processing Quality
  • Texture Quality
  • Shadow Quality
  • View Distance Quality
  • Effects Quality
  • VSync

Loading Screen



It's basically a screenshot that gets displayed for a specified period of time. A throbber is placed to indicate that the level is being loaded.

Pause Menu



The pause menu provides the options to either resume the game, exit to the main menu or to quit directly to the desktop.


Well, that covers all the major features of the Prototype Menu System in its current state. I'm planning to introduce more features over future updates in order to make it a more robust and complete system. But for now, you can grab the source code from GitHub at: https://github.com/RohitKotiveetil/UnrealEngine--PrototypeMenuSystem