Disclosure: This website contains affiliate links, which means we may receive a commission if you click a link and purchase something through our website. Purchasing assets through our links won’t cost you any extra money and will help fund the hosting and development of this site.


Arcadia Library

Introduction:

Arcadia Library is a navigation solution for custom menus using Unity3D, allowing an easy flow between panels.

- This plugin allows the management of different menus with functions, storing history to back to the previous panels and dispatching events on each menu status, as: on menu loaded, show, hide, focused and unfocused.

- Supports Show and Hide functions. Menus are separated into ‘groups’, which means that you can initialize only the desired menus instead of maintaining all of them on the scene at the same time.

- ‘Layers’ concept. Only one menu can be shown simultaneously by layer, what it means that the current active menus on the same layer will be hidden to made easy the user flow.

- Also supports controller input, storing the last selected button/selectable on menus to make easy the navigation flow between panels.

- Default show and hide animations. In addition, animations can be fully customized by the user.

Code Features:

Based on two classes:

- Menu: Each UI panel or menu inherits from this class.
- MenuManager: Manages all the menus in the game, offering methods to initialize, show and hide them.

- All the menus can be loaded during game initialization or manually by group ID.

- Menus are indexed using the type of the classes that inherit from Menu.

- Each layer has a stack that stores all the opened menus. Closing a menu of a layer will automatically open the next menu on the stack if any.

- The layer for each menu is defined on the inspector view.

- Buttons in the menus are loaded during the initialization and are disabled only during the hide animation of the menu.