IP Library Granted Patent US 12,585,325
Granted Patent B2
US 12,585,325 · App. 18/645,841 · Granted Mar 24, 2026

Tracking user focus

Inventors: Yuriy Shtybel (London, GB); Marian Faryna (London, GB); Ihor Solomakin (London, GB); Vitaliy Kravchenko (London, GB); David Parker (London, GB)
Assignee: Sphere Research Ltd
G06F3/011G06T19/00G06T2210/36
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,585,325
App. No.
18/645,841
Granted
Mar 24, 2026
Kind
B2
Abstract

A data processing system for tracking user focus in a digital environment includes communication means arranged to receive, from each of a plurality of user devices, input data indicating one or more user actions performed via the user device while the user device renders, from a perspective of a virtual camera controlled by said one or more user actions, a three-dimensional model commonly provided to the plurality of user devices. The received input data further indicates, for each user action, a focal position on the three-dimensional model relating to a position and/or orientation of the virtual camera relative to the three-dimensional model following the user action. The data processing system further comprises processing means arranged to determine, using the received input data, a spatial distribution of user focus on the three-dimensional model, in dependence on the indicated focal positions for the respective user actions.

Claims (56)

1 . A data processing system for tracking user focus in a digital environment, comprising:

a network interface configured to receive, from each of a plurality of user devices, input data indicating one or more user actions performed via the user device while the user device renders, from a perspective of a virtual camera controlled by said one or more user actions, a three-dimensional model commonly provided to the plurality of user devices,

wherein the received input data further indicates, for each user action, a focal position on the three-dimensional model relating to a position and/or orientation of the virtual camera relative to the three-dimensional model following the user action; and

one or more processors configured to determine, based at least in part on the received input data, a spatial distribution of user focus on the three-dimensional model, in dependence on the indicated focal positions for the respective user actions, wherein:

a plurality of objects is positioned on the three-dimensional model when the three-dimensional model is rendered by the plurality of user devices;

the one or more processors are further configured to determine, based at least in part on the received input data, impression data indicating a number of impressions of a first object of the plurality of objects, based at least in part on the indicated focal positions for the respective user actions; and

determining the impression data comprises incrementing an impression count upon determining, based at least in part on the indicated focal positions for the respective user actions, that a predetermined set of viewability characteristics are satisfied for one of the plurality of user devices.

2 . The data processing system of claim 1 , wherein:

the network interface are further configured to receive viewport data indicating viewport dimensions of each of the plurality of user devices; and

the one or more processors are configured to determine said spatial distribution of user focus in dependence on the indicated viewport dimensions of each of the plurality of user devices.

3 . The data processing system of claim 1 , wherein:

for at least one user device, the input data comprises data indicative of time periods between successive user actions; and

the one or more processors are configured to determine said spatial distribution of user focus in dependence on said time periods between successive user actions.

4 . The data processing system of claim 1 , wherein:

for at least one user device, the input data comprises data indicative of a zoom level following the performance of a given user action; and

the one or more processors are configured to determine said spatial distribution of user focus in dependence on the indicated zoom level following the performance of the given user action.

5 . The data processing system of claim 1 wherein:

the three-dimensional model has a concave interior surface; and

the indicated focal position is a point on the concave interior surface.

6 . The data processing system of claim 1 , wherein the indicated focal position for a given user action is an intersection between a surface of the three-dimensional model and an axis of the virtual camera.

7 . The data processing system of claim 1 , wherein the plurality of user actions include at least one of:

a zoom action in which a field of view and/or distance of the virtual camera from the three-dimensional model is adjusted; and

a move action in which a position and/or orientation of the virtual camera relative to the three-dimensional model is adjusted.

8 . The data processing system of claim 1 , wherein:

a plurality of objects is positioned on the three-dimensional model in an initial configuration when the three-dimensional model is rendered by the plurality of user devices; and

the one or more processors are further configured to:

determine a modified configuration of the plurality of objects on the three-dimensional model based at least in part on the determined spatial distribution of user focus on the three-dimensional model; and

transmit, via the network interface, data to one or more of the plurality of user devices indicating the updated configuration of the plurality of objects for rendering on said one or more of the plurality of input devices.

9 . The data processing system of claim 1 , wherein the one or more processors are configured to:

determine a plurality of spatial distributions of user focus on the three-dimensional model over respective different periods of time; and

aggregate the plurality of spatial distributions over the respective periods of time to generate one or more time-aggregated spatial distributions of user focus on the three-dimensional model.

10 . The data processing system of claim 1 , wherein the one or more processors are further configured to delete the input data after determining the spatial distribution of user focus on the three-dimensional model.

11 . The data processing system of claim 1 , configured to transmit the three-dimensional model to each of the plurality of user devices via the network interface.

12 . The data processing system of claim 1 , wherein:

a plurality of objects is positioned on the three-dimensional model when the three-dimensional model is rendered by the plurality of user devices; and

the one or more processors are further configured to determine respective attention values for objects of the plurality of objects based on the determined spatial distribution of user focus on the three-dimensional model.

13 . The data processing system of claim 12 , wherein:

the three-dimensional model comprises a plurality of levels of detail associated with respective different fields of view of the virtual camera; and

the one or more processors are further configured to determine the respective attention values in dependence on levels of detail rendered by the respective user devices following the indicated user actions.

14 . A computer-implemented method of tracking user focus in a digital environment, comprising:

receiving, from each of a plurality of user devices, input data indicating one or more user actions performed via the user device while the user device renders, from a perspective of a virtual camera controlled by said one or more user actions, a three-dimensional model commonly provided to the plurality of user devices, wherein the received input data further indicates, for each user action, a focal position on the three-dimensional model relating to a position and/or orientation of the virtual camera relative to the three-dimensional model following the user action; and

determining, based at least in part on the received input data, a spatial distribution of user focus on the three-dimensional model, in dependence on the indicated focal positions associated with the respective user actions, wherein:

a plurality of objects is positioned on the three-dimensional model when the three-dimensional model is rendered by the plurality of user devices;

the method further comprises determining, based at least in part on the received input data, impression data indicating a number of impressions of a first object of the plurality of objects, based at least in part on the indicated focal positions for the respective user actions; and

determining the impression data comprises incrementing an impression count upon determining, based at least in part on the indicated focal positions for the respective user actions, that a predetermined set of viewability characteristics are satisfied for one of the plurality of user devices.

15 . The computer-implemented method of claim 14 , wherein:

a plurality of objects is positioned on the three-dimensional model when the three-dimensional model is rendered by the plurality of user devices; and

the method comprises determining, based at least in part on the received input data, impression data indicating a number of impressions of a first object of the plurality of objects, in dependence on the indicated focal positions for the respective user actions.

16 . The computer-implemented method of claim 15 , wherein determining the impression data comprises incrementing an impression count upon determining, based at least in part on the indicated focal positions for the respective user actions, that a predetermined set of viewability characteristics are satisfied for one of the plurality of user devices.

17 . A non-transitory storage medium comprising instructions which, when executed by a computer, cause the computer to carry out operations comprising:

receiving, from each of a plurality of user devices, input data indicating one or more user actions performed via the user device while the user device renders, from a perspective of a virtual camera controlled by said one or more user actions, a three-dimensional model commonly provided to the plurality of user devices, wherein:

a plurality of objects is positioned on the three-dimensional model when the three-dimensional model is rendered by the plurality of user devices; and

the input data further indicates, for each user action, a focal position on the three-dimensional model relating to a position and/or orientation of the virtual camera relative to the three-dimensional model following the user action; and

determining, based at least in part on the received input data, impression data indicating a number of impressions of a first object of the plurality of objects, in dependence on the indicated focal positions for the respective user actions,

wherein determining the impression data comprises incrementing an impression count upon determining, based at least in part on the indicated focal positions for the respective user actions, that a predetermined set of viewability characteristics are satisfied for one of the plurality of user devices.

18 . The non-transitory storage medium of claim 17 , wherein the operations further comprise determining, based at least in part on the received input data, a spatial distribution of user focus on the three-dimensional model, in dependence on the indicated focal positions associated with the respective user actions.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2026
From: PARKER, DAVID
To: SPHERE RESEARCH LIMITED
Reel/Frame 073888/0510 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2026
From: SHTYBEL, YURIY; FARYNA, MARIAN; SOLOMAKIN, IHOR; KRAVCHENKO, VITALIY
To: SPHERE RESEARCH LTD.
Reel/Frame 073888/0531 →
Priority Claims (1)
GB 2115507 · Oct 28, 2021 · national
Continuity (2)
Continuation PCTGB2022052747 · Oct 28, 2022
Related Publication 20240272706A1 · Aug 15, 2024
References Cited (18)
US 9674590B2 · Park · 2017 [cited by examiner]
US 10614616B1 · Tedesco et al. · 2020 [cited by applicant]
US 11769496B1 · Prasad · 2023 [cited by examiner]
US 20120166833A1 · Iwai · 2012 [cited by examiner]
US 20150062020A1 · Pourbigharaz · 2015 [cited by examiner]
US 20150193032A1 · Saxena · 2015 [cited by examiner]
US 20150277539A1 · Chueh · 2015 [cited by examiner]
US 20180276894A1 · Chang et al. · 2018 [cited by applicant]
US 20200104030A1 · Dedual · 2020 [cited by examiner]
US 20200272324A1 · Chanda · 2020 [cited by examiner]
US 20200402094A9 · LaMontagne · 2020 [cited by examiner]
US 20220172442A1 · Ruokonen · 2022 [cited by examiner]
US 20230099605A1 · Georgis · 2023 [cited by examiner]
WO 2011151367A1 · 2011 [cited by applicant]
WO 2020208302A1 · 2020 [cited by applicant]
WO 2022003066A1 · 2022 [cited by applicant]
International Search Report and Written Opinion dated Dec. 14, 2022 for PCT Application No. PCT/GB2022/052747. [cited by applicant]
GB Search Report dated Jun. 16, 2022 for GB Application No. GB2115507.2. [cited by applicant]