TY - GEN
T1 - FlowMatic
T2 - 33rd Annual ACM Symposium on User Interface Software and Technology, UIST 2020
AU - Zhang, Lei
AU - Oney, Steve
N1 - Publisher Copyright:
© 2020 ACM.
PY - 2020/10/20
Y1 - 2020/10/20
N2 - Immersive authoring is a paradigm that makes Virtual Reality (VR) application development easier by allowing programmers to create VR content while immersed in the virtual environment. In this paradigm, programmers manipulate programming primitives through direct manipulation and get immediate feedback on their program's state and output. However, existing immersive authoring tools have a low ceiling; their programming primitives are intuitive but can only express a limited set of static relationships between elements in a scene. In this paper, we introduce FlowMatic, an immersive authoring tool that raises the ceiling of expressiveness by allowing programmers to specify reactive behaviors - -behaviors that react to discrete events such as user actions, system timers, or collisions. FlowMatic also introduces primitives for programmatically creating and destroying new objects, for abstracting and re-using functionality, and for importing 3D models. Importantly, FlowMatic uses novel visual representations to allow these primitives to be represented directly in VR. We also describe the results of a user study that illustrates the usability advantages of FlowMatic relative to a 2D authoring tool and we demonstrate its expressiveness through several example applications that would be impossible to implement with existing immersive authoring tools. By combining a visual program representation with expressive programming primitives and a natural User Interface (UI) for authoring programs, FlowMatic shows how programmers can build fully interactive virtual experiences with immersive authoring.
AB - Immersive authoring is a paradigm that makes Virtual Reality (VR) application development easier by allowing programmers to create VR content while immersed in the virtual environment. In this paradigm, programmers manipulate programming primitives through direct manipulation and get immediate feedback on their program's state and output. However, existing immersive authoring tools have a low ceiling; their programming primitives are intuitive but can only express a limited set of static relationships between elements in a scene. In this paper, we introduce FlowMatic, an immersive authoring tool that raises the ceiling of expressiveness by allowing programmers to specify reactive behaviors - -behaviors that react to discrete events such as user actions, system timers, or collisions. FlowMatic also introduces primitives for programmatically creating and destroying new objects, for abstracting and re-using functionality, and for importing 3D models. Importantly, FlowMatic uses novel visual representations to allow these primitives to be represented directly in VR. We also describe the results of a user study that illustrates the usability advantages of FlowMatic relative to a 2D authoring tool and we demonstrate its expressiveness through several example applications that would be impossible to implement with existing immersive authoring tools. By combining a visual program representation with expressive programming primitives and a natural User Interface (UI) for authoring programs, FlowMatic shows how programmers can build fully interactive virtual experiences with immersive authoring.
KW - Immersive authoring
KW - Virtual reality
KW - Visual programming
UR - https://www.scopus.com/pages/publications/85096991893
UR - https://www.scopus.com/pages/publications/85096991893#tab=citedBy
U2 - 10.1145/3379337.3415824
DO - 10.1145/3379337.3415824
M3 - Conference contribution
AN - SCOPUS:85096991893
T3 - UIST 2020 - Proceedings of the 33rd Annual ACM Symposium on User Interface Software and Technology
SP - 342
EP - 353
BT - UIST 2020 - Proceedings of the 33rd Annual ACM Symposium on User Interface Software and Technology
PB - Association for Computing Machinery, Inc
Y2 - 20 October 2020 through 23 October 2020
ER -