Mercury: A Messaging Framework for Modular UI Components
Mercury: A Messaging Framework for Modular UI Components
复制标题
DOI:
10.1145/3173574.3174162
复制
发表时间:
2018-04
期刊:
影响因子:
--
通讯作者:
Carmine Elvezio;Mengu Sukan;Steven K. Feiner
中科院分区:
文献类型:
--
作者:
Carmine Elvezio;Mengu Sukan;Steven K. Feiner
In recent years, the entity--component--system pattern has become a fundamental feature of the software architectures of game-development environments such as Unity and Unreal, which are used extensively in developing 3D user interfaces. In these systems, UI components typically respond to events, requiring programmers to write application-specific callback functions. In some cases, components are organized in a hierarchy that is used to propagate events among vertically connected components. When components need to communicate horizontally, programmers must connect those components manually and register/unregister events as needed. Moreover, events and callback signatures may be incompatible, making modular UIs cumbersome to build and share within or across applications. To address these problems, we introduce a messaging framework, Mercury, to facilitate communication among components. We provide an overview of Mercury, outline its underlying protocol and how it propagates messages to responders using relay nodes, describe a reference implementation in Unity, and present example systems built using Mercury to explain its advantages.