| CPC H04L 67/131 (2022.05) [G02B 27/017 (2013.01); G06T 19/006 (2013.01); H04L 63/10 (2013.01); H04L 67/51 (2022.05); H04L 67/75 (2022.05); H04W 4/021 (2013.01)] |

| AS A RESULT OF REEXAMINATION, IT HAS BEEN DETERMINED THAT: |
| Claims 8, 20 and 32 are cancelled. |
| Claims 1-2, 7, 13-14, 19, 25-26 and 31 are determined to be patentable as amended. |
| Claims 3-6, 9-12, 15-18, 21-24, 27-30 and 33-36, dependent on an amended claim, are determined to be patentable. |
| New claims 37-51 are added and determined to be patentable. |
|
1. A method comprising:
at a host device having a first processor, executing a first application via the first processor;
determining a first state of the first application;
[ determining a first state of a second application executing on the first processor;
at the host device, ] generating a first scenegraph corresponding to the first state of the first application [ , wherein the first scenegraph represents a hierarchical relationship among a plurality of objects, and wherein the first scenegraph comprises a first plurality of nodes, each node of the first plurality of nodes associated with an object of the plurality of objects] ;
rendering to a first display a first view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] ; and
presenting, to a first remote device having a second display and a second processor distinct from the first processor, the first scenegraph,
wherein:
the first remote device is configured to, in response to receiving the first scenegraph, render to the second display a second view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph,
the first scenegraph further corresponds to the first state of the second application,
rendering the second view to the second display does not comprise executing the second application via the second processor, ] and
rendering the second view to the second display does not comprise executing the first application via the second processor.
|
|
2. The method of claim 1, further comprising:
at the host device, receiving input from the first remote device;
determining, based on the input, a second state of the first application, the second state different than the first state;
generating a second scenegraph corresponding to the second state, the second scenegraph different than the first scenegraph [ , wherein the second scenegraph comprises a second plurality of nodes, each node of the second plurality of nodes associated with an object of the plurality of objects] ;
presenting, to the first remote device, the second scenegraph, wherein:
the first remote device is configured to, in response to receiving the second scenegraph, render to the second display a third view corresponding to the second scenegraph without executing the first application [ , said rendering comprising traversing the second scenegraph] , and
rendering the third view to the second display does not comprise executing the first application via the second processor.
|
|
7. The method of claim 1, further comprising presenting, to a second remote device having a third display and a third processor, the first scenegraph,
wherein:
the second remote device is configured to, in response to receiving the first scenegraph, render to the third display a third view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] , and
rendering the third view to the third display does not comprise executing the first application via the third processor.
|
|
13. A non-transitory machine readable medium storing instructions, which when executed by a first device having one or more processors including a first processor, cause the first device to perform a method comprising:
executing a first application via the first processor;
determining a first state of the first application;
[ determining a first state of a second application executing on the first processor;]
generating [ , at the first device, ] a first scenegraph corresponding to the first state of the first application [ , wherein the first scenegraph represents a hierarchical relationship among a plurality of objects, and wherein the first scenegraph comprises a first plurality of nodes, each node of the first plurality of nodes associated with an object of the plurality of objects] ;
rendering to a first display a first view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] ; and
presenting, to a second device having a second display and a second processor distinct from the first processor, the first scenegraph,
wherein:
the second device is remote to the first device,
[ the first scenegraph further corresponds to the first state of the second application,] the second device is configured to, in response to receiving the first scenegraph, render to the second display a second view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] ,
[ rendering the second view to the second display does not comprise executing the second application via the second processor, ] and
rendering the second view to the second display does not comprise executing the first application via the second processor.
|
|
14. The non-transitory machine readable medium of claim 13, wherein the method further comprises:
at the first device, receiving input from the second device;
determining, based on the input, a second state of the first application, the second state different than the first state;
generating a second scenegraph corresponding to the second state, the second scenegraph different than the first scenegraph [ , wherein the second scenegraph comprises a second plurality of nodes, each node of the second plurality of nodes associated with an object of the plurality of objects] ;
presenting, to the second device, the second scenegraph,
wherein:
the second device is configured to, in response to receiving the second scenegraph, render to the second display a third view corresponding to the second scenegraph without executing the first application [ , said rendering comprising traversing the second scenegraph] , and
rendering the third view to the second display does not comprise executing the first application via the second processor.
|
|
19. The non-transitory machine readable medium of claim 13, wherein the method further comprises presenting, to a second remote device having a third display and a third processor, the first scenegraph, and
wherein:
the second remote device is configured to, in response to receiving the first scenegraph, render to the third display a third view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] , and
rendering the third view to the third display does not comprise executing the first application via the third processor.
|
|
25. A first device having one or more processors including a first processor, the first device capable of performing a method comprising:
executing a first application via the first processor;
determining a first state of the first application;
[ determining a first state of a second application executing on the first processor;]
generating [ , at the first device, ] a first scenegraph corresponding to the first state of the first application [ , wherein the first scenegraph represents a hierarchical relationship among a plurality of objects, and wherein the first scenegraph comprises a first plurality of nodes, each node of the first plurality of nodes associated with an object of the first plurality of objects] ;
rendering to a first display a first view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] ; and
presenting, to a second device having a second display and a second processor distinct from the first processor, the first scenegraph,
wherein:
the second device is remote to the first device,
[ the first scenegraph further corresponds to the first state of the second application,]
the second device is configured to, in response to receiving the first scenegraph, render to the second display a second view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph,
rendering the second view to the second display does not comprise executing the second application via the second processor, ] and
rendering the second view to the second display does not comprise executing the first application via the second processor.
|
|
26. The device of claim 25, wherein the method further comprises:
at the first device, receiving input from the second device;
determining, based on the input, a second state of the first application, the second state different than the first state;
generating a second scenegraph corresponding to the second state, the second scenegraph different than the first scenegraph [ , wherein the second scenegraph comprises a second plurality of nodes, each node of the second plurality of nodes associated with an object of the plurality of objects] ;
presenting, to the second device, the second scenegraph,
wherein:
the second device is configured to, in response to receiving the second scenegraph, render to the second display a third view corresponding to the second scenegraph without executing the first application [ , said rendering comprising traversing the second scenegraph] , and
rendering the third view to the second display does not comprise executing the first application via the second processor.
|
|
31. The device of claim 25, wherein the method further comprises presenting, to a second remote device having a third display and a third processor, the first scenegraph, and wherein:
the second remote device is configured to, in response to receiving the first scenegraph, render to the third display a third view corresponding to the first scenegraph [ , said rendering comprising traversing the first scenegraph] , and
rendering the third view to the third display does not comprise executing the first application via the third processor.
|
|
[ 37. The method of claim 1, wherein the first plurality of nodes represents a logical relationship among the plurality of objects.]
|
|
[ 38. The method of claim 1, wherein the first plurality of nodes represents a spatial relationship among the plurality of objects.]
|
|
[ 39. The method of claim 1, wherein the plurality of objects comprises a plurality of 2D or 3D geometric primitives.]
|
|
[ 40. The method of claim 39, further comprising:
identifying one or more orphaned nodes in the first scenegraph; and
deleting the one or more orphaned nodes in the first scenegraph.]
|
|
[ 41. The method of claim 40, further comprising unloading object assets corresponding to the one or more orphaned nodes.]
|
|
[ 42. The non-transitory machine readable medium of claim 13, wherein the first plurality of nodes represents a logical relationship among the plurality of objects.]
|
|
[ 43. The non-transitory machine readable medium of claim 13, wherein the first plurality of nodes represents a spatial relationship among the plurality of objects.]
|
|
[ 44. The non-transitory machine readable medium of claim 13, wherein the plurality of objects comprises a plurality of 2D or 3D geometric primitives.]
|
|
[ 45. The non-transitory machine readable medium of claim 44, wherein the method further comprises:
identifying one or more orphaned nodes in the first scenegraph; and
deleting the one or more orphaned nodes in the first scenegraph.]
|
|
[ 46. The non-transitory machine readable medium of claim 45, wherein the method further comprises unloading object assets corresponding to the one or more orphaned nodes.]
|
|
[ 47. The device of claim 25, wherein the first plurality of nodes represents a logical relationship among the plurality of objects.]
|
|
[ 48. The device of claim 25, wherein the first plurality of nodes represents a spatial relationship among the plurality of objects.]
|
|
[ 49. The device of claim 25, wherein the plurality of objects comprises a plurality of 2D or 3D geometric primitives.]
|
|
[ 50. The device of claim 49, wherein the method further comprises:
identifying one or more orphaned nodes in the first scenegraph; and
deleting the one or more orphaned nodes in the first scenegraph.]
|
|
[ 51. The device of claim 50, wherein the method further comprises unloading object assets corresponding to the one or more orphaned nodes.]
|