A computer program product, tangibly embodied in non-transitory computer readable media, comprising instructions to cause one or more processors to:
- obtain first data representing a first three-dimensional virtual object,
- obtain second data representing a second three-dimensional virtual object, wherein the second three-dimensional virtual object is for overlaying the first three-dimensional virtual object,
- based on a sensor data received from a sensor, identify a physically visually-demarked region of a first surface in a first physical environment, wherein the physically visually-demarked region is smaller than the first surface,
- identify spatial characteristics of the physically visually-demarked region on the first surface within the first physical environment,
- determine, using the spatial characteristics of the physically visually-demarked region, spatial characteristics of a first virtual volume within the first physical environment;
- generate a first rendered image pair from a first perspective, including generating a depiction of (i) the first three-dimensional virtual object and (ii) the second three-dimensional virtual object overlaid on the first three-dimensional virtual object, wherein a location of the first three-dimensional virtual object in the first rendered image pair is based on the spatial characteristics of the first virtual volume, such that the first virtual object is depicted to be exclusively within the first virtual volume,
- at a first viewing surface positioned between the physically visually-demarked region and the first perspective, overlay the first rendered image pair onto a first pair of views of a first stereoscopic viewing device,
- generate a second rendered image pair from a second perspective, including generating a second perspective depiction of the first three-dimensional virtual object, wherein a location of the first three-dimensional virtual object in the second rendered image pair is based on the spatial characteristics of the virtual volume, such that the first virtual object is depicted to be exclusively within the first virtual volume,
- at a second viewing surface positioned between the physically visually-demarked region and the second perspective, overlay the second rendered image pair onto a second pair of views of a second stereoscopic viewing device,
- based on data received from a second sensor, identify a second physically visually-demarked region of a second surface within a second physical environment,
- identify spatial characteristics of the second physically visually-demarked region on the second surface within the second physical environment,
- determine, using the spatial characteristics of the second physically visually-demarked region, spatial characteristics of a second virtual volume within the second physical environment,
- generate a third rendered image pair from a third perspective, including generating a third perspective depiction of the first three-dimensional virtual object, wherein a location of the first three-dimensional virtual object in the third rendered image pair is based on the spatial characteristics of the second virtual volume, such that the first virtual object is depicted to be exclusively within the second virtual volume, and
- at a third viewing surface positioned between the second physically visually-demarked region and the third perspective, overlay the third rendered image pair onto a third pair of views of a third stereoscopic viewing device.