3D Selection Vault

Bubble Raycasting

Also known as BubbleRay, BubbleRay-A, BubbleRay-E

Ray-casting with a bubble: when the controller ray misses, the object closest to it is selected anyway, shown by a disc tangent to that object and a curved line to it, so the user never has to hit the target exactly.

How it works

If the ray passes through objects, the first one is selected. Otherwise the object nearest to the ray is selected, measured either as the 3D distance from the ray to the object's surface (BubbleRay-E) or as the angle between them seen from the hand (BubbleRay-A). A semi-transparent disc, drawn on a sphere around the user's eyes so it slides smoothly between targets, is tangent to the chosen object, and a Bézier curve from the controller points to it; the trigger confirms. The angular version worked better, especially for partly hidden targets, because the empty space around them still counts. Experiment 1 (12 participants, HTC Vive, ten spheres at near, middle and far depths): BubbleRay-A 20.9 s per scene, BubbleRay-E 23.1 s, Heuristic Ray 26.2 s, 3D Bubble Cursor 27.4 s, Quad Cone 30.9 s, Naive Ray 46.2 s and Go-Go 56.2 s; error rates 1.8%, 2.7%, 4.4%, 1.0%, 0.4%, 23.5% and 15.0%. Experiment 2 (12 participants, dense, occluded and dense-plus-occluded layouts): the bubble rays were fast but error-prone in dense scenes, while Quad Cone was slowest with the fewest errors.

Papers