Skip to main navigation Skip to search Skip to main content

BackTracer: Improving ray-casting 3D target acquisition by backtracking the interaction history

Kaiqi Chen, Huagen Wan*, Shengdong Zhao, Xutao Liu

*Corresponding author for this work

Research output: Journal Publications and ReviewsRGC 21 - Publication in refereed journalpeer-review

Abstract

Ray-casting is a fundamental 3D target acquisition technique in virtual environments. With ray-casting, users emit a ray to highlight a desired target before pressing a button to select it; however, due to hand tremor, tracker jitter, and the Heisenberg effect, the ray direction can be shifted during the button pressing process, causing wrong selections. To improve selection accuracy, instead of selecting an object at a button press, we backtrack the interaction history to the time when the desired target is highlighted and select that instead. Inspired by Kopper et al.’s predictive model of distal pointing, we hypothesized that the optimal backtrack time depends on the object's angular size. We validated our hypothesis through an experiment and implemented BackTracer based on the results. Moreover, BackTracer was evaluated against basic ray-casting, state-of-the-art history-based ray-casting, and state-of-the-art progressive refinement ray-casting, and results indicated that BackTracer significantly improved the accuracy and selection efficiency, making it a promising technique for 3D target acquisition. © 2023 3 Published by Elsevier Ltd.
Original languageEnglish
Article number103045
JournalInternational Journal of Human-Computer Studies
Volume176
Online published12 Apr 2023
DOIs
Publication statusPublished - Aug 2023
Externally publishedYes

Research Keywords

  • 3D selection
  • Backtracking time interval
  • Interaction history
  • Ray-casting
  • Target acquisition

Fingerprint

Dive into the research topics of 'BackTracer: Improving ray-casting 3D target acquisition by backtracking the interaction history'. Together they form a unique fingerprint.

Cite this