Search Unity

  1. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice
  2. Ever participated in one our Game Jams? Want pointers on your project? Our Evangelists will be available on Friday to give feedback. Come share your games with us!
    Dismiss Notice

UI design pattern for mobile AR App

Discussion in 'Handheld AR' started by florinvladdumitru, Jun 16, 2020.

  1. florinvladdumitru

    florinvladdumitru

    Joined:
    Oct 14, 2018
    Posts:
    2
    Hi guys, I was wondering if I can get some opinions on this.
    I am currently working on an update for a mobile AR app in which the whole UI system gets revamped with new graphics.
    Since I am changing stuff, I wanted to upgrade the functionality aswell. Thus far, the UI system is implementing a variant of the
    observer pattern, but as new features and types of UI elements got added, it got really messy and hard to work with.

    Basically these are the general requirements:
    This is a general list of events that can happen (Image Found/ Lost; Button presses, Activate/Enable gameObjects etc.).
    When those happen, UI elements can get activated (Canvases, Panels, toasts.)
    The tricky part is that some of those elements are time based (meaning they get activated/deactivated at a certain time after the event was triggered).
    If another event happens, the timebased UI element can be Shown Imediately or have its timer reset.
    Also 2 Events can trigger 2 UI elements at the same time, but only 1 UI element should be shown. So some kind of priority system.
    That would be the core functionality.
    After a certain time and number of elements it gets very entangled, hard to understand and so, use.

    I was wondering what would you guys would use or are using in the context of an mobile app in AR.
    Is there a more adequate design pattern I should base this on or maybe a different framework?

    Using Unity 2019.3 but can upgrade; Unity standard UI system, URP, EasyAR.

    Thanks!
     
unityunity