Patents by Inventor Sean Matthew Gies

Sean Matthew Gies has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9940687
    Abstract: Aspects can be for ray tracing of 3-D scenes, and include dynamically controlling a population of rays being stored in a memory, to keep the population within a target, a memory footprint or other resource usage specification. An example includes controlling the population by examining indicia associated with rays returning from intersection testing, to be shaded, the indicia correlated with behavior of shaders to be run for those rays, such that population control selects, or reorders rays for shading, to prioritize shading of rays whose shaders are expected to produce fewer rays.
    Type: Grant
    Filed: May 12, 2015
    Date of Patent: April 10, 2018
    Assignee: Imagination Technologies Limited
    Inventors: Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies, Steven John Clohset
  • Patent number: 9881411
    Abstract: A profiler for a ray tracing renderer interfaces with the renderer to collect rendering information, such as ray definition information, a pixel origin, objects hit, shader invocation, and related rays. In an interface, an artist views a simplified 3-D scene model and a rendered 2-D image. A pixel in the 2-D image is selectable; the profiler responds by populating the simplified 3-D scene with rays that contributed to that pixel. Rays can be displayed in the simplified 3-D scene to visually convey information about characteristics of each ray, such as whether the ray intersected an object, portions of the scene where it is occluded, and a direction. Statistics can be produced by the profiler that convey information such as relative computational complexity to render particular pixels. The profiler can step through multiple passes (e.g., multiple frames and passes of a multipass rendering), and the UI can allow pausing and stepping.
    Type: Grant
    Filed: September 14, 2015
    Date of Patent: January 30, 2018
    Assignee: Imagination Technologies Limited
    Inventors: Nur Monson, James Alexander McCombe, Sean Matthew Gies
  • Patent number: 9792720
    Abstract: A synthetic acceleration shape bound primitives composing a 3-D scene, and is defined using a group of fundamental shapes arranged to bound the primitives, and for which intersection results for group members yield an ultimate intersection testing result for the synthetic shape, using a logical operator. For example, two or more spheres are used to bound an object so that each of the spheres is larger than a minimum necessary to bound the object, and a volume defined by an intersection between the shapes defines a smaller volume in which the object is bounded. A ray is found to potentially intersect the object only if it intersects both spheres. In another example, an element may be defined by a volumetric union of component elements. Indicators can determine how groups of shapes should be interpreted. Synthetic shapes can be treated as a single element in a graph or hierarchical arrangement of acceleration elements.
    Type: Grant
    Filed: March 15, 2016
    Date of Patent: October 17, 2017
    Assignee: Imagination Technologies Limited
    Inventors: Sean Matthew Gies, James A. McCombe, Luke T. Peterson
  • Patent number: 9460547
    Abstract: Aspects include API interfaces for interfacing shaders with other components and/or code modules that provide ray tracing functionality. For example, API calls may allow direct contribution of light energy to a buffer for an identified pixel, and allow emission of new rays for intersection testing alone or in bundles. The API also can provide a mechanism for associating arbitrary data with ray definition data defining a ray to be tested through a shader using the emit ray call. The arbitrary data is provided to a shader associated with an object that is identified subsequently as having been intersected by the ray. The data can include code, or a pointer to code, that can be used by or run after the shader. The data also can be propagated through a series of shaders, and associated with rays instantiated in each shader. Recursive shaders can be recompiled as non-recursive shaders interfacing with API semantics according to the description.
    Type: Grant
    Filed: November 22, 2013
    Date of Patent: October 4, 2016
    Assignee: Imagination Technologies Limited
    Inventors: James Alexander McCombe, Luke T Peterson, Ryan R. Salsbury, Sean Matthew Gies
  • Publication number: 20160196684
    Abstract: A synthetic acceleration shape bound primitives composing a 3-D scene, and is defined using a group of fundamental shapes arranged to bound the primitives, and for which intersection results for group members yield an ultimate intersection testing result for the synthetic shape, using a logical operator. For example, two or more spheres are used to bound an object so that each of the spheres is larger than a minimum necessary to bound the object, and a volume defined by an intersection between the shapes defines a smaller volume in which the object is bounded. A ray is found to potentially intersect the object only if it intersects both spheres. In another example, an element may be defined by a volumetric union of component elements. Indicators can determine how groups of shapes should be interpreted. Synthetic shapes can be treated as a single element in a graph or hierarchical arrangement of acceleration elements.
    Type: Application
    Filed: March 15, 2016
    Publication date: July 7, 2016
    Inventors: Sean Matthew Gies, James A. McCombe, Luke T. Peterson
  • Patent number: 9305393
    Abstract: A synthetic acceleration shape bound primitives composing a 3-D scene, and is defined using a group of fundamental shapes arranged to bound the primitives, and for which intersection results for group members yield an ultimate intersection testing result for the synthetic shape, using a logical operator. For example, two or more spheres are used to bound an object so that each of the spheres is larger than a minimum necessary to bound the object, and a volume defined by an intersection between the shapes defines a smaller volume in which the object is bounded. A ray is found to potentially intersect the object only if it intersects both spheres. In another example, an element may be defined by a volumetric union of component elements. Indicators can determine how groups of shapes should be interpreted. Synthetic shapes can be treated as a single element in a graph or hierarchical arrangement of acceleration elements.
    Type: Grant
    Filed: April 29, 2014
    Date of Patent: April 5, 2016
    Assignee: Imagination Technologies Limited
    Inventors: Sean Matthew Gies, James A. McCombe, Luke T Peterson
  • Patent number: 9235921
    Abstract: A profiler for a ray tracing renderer interfaces with the renderer to collect rendering information, such as ray definition information, a pixel origin, objects hit, shader invocation, and related rays. In an interface, an artist views a simplified 3-D scene model and a rendered 2-D image. A pixel in the 2-D image is selectable; the profiler responds by populating the simplified 3-D scene with rays that contributed to that pixel. Rays can be displayed in the simplified 3-D scene to visually convey information about characteristics of each ray, such as whether the ray intersected an object, portions of the scene where it is occluded, and a direction. Statistics can be produced by the profiler that convey information such as relative computational complexity to render particular pixels. The profiler can step through multiple passes (e.g., multiple frames and passes of a multipass rendering), and the UI can allow pausing and stepping.
    Type: Grant
    Filed: November 6, 2012
    Date of Patent: January 12, 2016
    Assignee: Imagination Technologies Limited
    Inventors: Nur Monson, James Alexander McCombe, Sean Matthew Gies
  • Publication number: 20150379757
    Abstract: A profiler for a ray tracing renderer interfaces with the renderer to collect rendering information, such as ray definition information, a pixel origin, objects hit, shader invocation, and related rays. In an interface, an artist views a simplified 3-D scene model and a rendered 2-D image. A pixel in the 2-D image is selectable; the profiler responds by populating the simplified 3-D scene with rays that contributed to that pixel. Rays can be displayed in the simplified 3-D scene to visually convey information about characteristics of each ray, such as whether the ray intersected an object, portions of the scene where it is occluded, and a direction. Statistics can be produced by the profiler that convey information such as relative computational complexity to render particular pixels. The profiler can step through multiple passes (e.g., multiple frames and passes of a multipass rendering), and the UI can allow pausing and stepping.
    Type: Application
    Filed: September 14, 2015
    Publication date: December 31, 2015
    Inventors: Nur Monson, James Alexander McCombe, Sean Matthew Gies
  • Publication number: 20150242990
    Abstract: Aspects can be for ray tracing of 3-D scenes, and include dynamically controlling a population of rays being stored in a memory, to keep the population within a target, a memory footprint or other resource usage specification. An example includes controlling the population by examining indicia associated with rays returning from intersection testing, to be shaded, the indicia correlated with behavior of shaders to be run for those rays, such that population control selects, or reorders rays for shading, to prioritize shading of rays whose shaders are expected to produce fewer rays.
    Type: Application
    Filed: May 12, 2015
    Publication date: August 27, 2015
    Inventors: Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies, Steven John Clohset
  • Patent number: 9030476
    Abstract: Aspects can be for ray tracing of 3-D scenes, and include dynamically controlling a population of rays being stored in a memory, to keep the population within a target, a memory footprint or other resource usage specification. An example includes controlling the population by examining indicia associated with rays returning from intersection testing, to be shaded, the indicia correlated with behavior of shaders to be run for those rays, such that population control selects, or reorders rays for shading, to prioritize shading of rays whose shaders are expected to produce fewer rays.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 12, 2015
    Assignee: Imagination Technologies, Limited
    Inventors: Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies, Steven John Clohset
  • Publication number: 20140333622
    Abstract: A synthetic acceleration shape bound primitives composing a 3-D scene, and is defined using a group of fundamental shapes arranged to bound the primitives, and for which intersection results for group members yield an ultimate intersection testing result for the synthetic shape, using a logical operator. For example, two or more spheres are used to bound an object so that each of the spheres is larger than a minimum necessary to bound the object, and a volume defined by an intersection between the shapes defines a smaller volume in which the object is bounded. A ray is found to potentially intersect the object only if it intersects both spheres. In another example, an element may be defined by a volumetric union of component elements. Indicators can determine how groups of shapes should be interpreted. Synthetic shapes can be treated as a single element in a graph or hierarchical arrangement of acceleration elements.
    Type: Application
    Filed: April 29, 2014
    Publication date: November 13, 2014
    Applicant: Imagination Technologies Limited
    Inventors: Sean Matthew Gies, James A. McCombe, Luke T. Peterson
  • Patent number: 8749552
    Abstract: A synthetic acceleration shape bound primitives composing a 3-D scene, and is defined using a group of fundamental shapes arranged to bound the primitives, and for which intersection results for group members yield an ultimate intersection testing result for the synthetic shape, using a logical operator. For example, two or more spheres are used to bound an object so that each of the spheres is larger than a minimum necessary to bound the object, and a volume defined by an intersection between the shapes defines a smaller volume in which the object is bounded. A ray is found to potentially intersect the object only if it intersects both spheres. In another example, an element may be defined by a volumetric union of component elements. Indicators can determine how groups of shapes should be interpreted. Synthetic shapes can be treated as a single element in a graph or hierarchical arrangement of acceleration elements.
    Type: Grant
    Filed: October 1, 2009
    Date of Patent: June 10, 2014
    Assignee: Imagination Technologies Limited
    Inventors: Sean Matthew Gies, James Alexander McCombe, Luke Tilman Peterson
  • Publication number: 20140078145
    Abstract: Aspects include API interfaces for interfacing shaders with other components and/or code modules that provide ray tracing functionality. For example, API calls may allow direct contribution of light energy to a buffer for an identified pixel, and allow emission of new rays for intersection testing alone or in bundles. The API also can provide a mechanism for associating arbitrary data with ray definition data defining a ray to be tested through a shader using the emit ray call. The arbitrary data is provided to a shader associated with an object that is identified subsequently as having been intersected by the ray. The data can include code, or a pointer to code, that can be used by or run after the shader. The data also can be propagated through a series of shaders, and associated with rays instantiated in each shader. Recursive shaders can be recompiled as non-recursive shaders interfacing with API semantics according to the description.
    Type: Application
    Filed: November 22, 2013
    Publication date: March 20, 2014
    Applicant: CAUSTIC GRAPHICS, INC.
    Inventors: James Alexander McCombe, Luke T. Peterson, Ryan R. Salsbury, Sean Matthew Gies
  • Patent number: 8674987
    Abstract: Aspects can be for ray tracing of 3-D scenes, and include dynamically controlling a population of rays being stored in a memory, to keep the population within a target, a memory footprint or other resource usage specification. An example includes controlling the population by examining indicia associated with rays returning from intersection testing, to be shaded, the indicia correlated with behavior of shaders to be run for those rays, such that population control selects, or reorders rays for shading, to prioritize shading of rays whose shaders are expected to produce fewer rays. The indicia can include a respective weight for each ray. In an example, analyzer modules examine hints associated with shaders bound to intersected primitives. Population control aspects can influence ray diversity in memory, including encouraging a varying diversity pattern as rendering of a given scene or frame progresses, based on system resource indicia, rendering metrics and so on.
    Type: Grant
    Filed: April 30, 2010
    Date of Patent: March 18, 2014
    Assignee: Caustic Graphics, Inc.
    Inventors: Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies, Steven John Clohset
  • Patent number: 8593458
    Abstract: Aspects include API interfaces for interfacing shaders with other components and/or code modules that provide ray tracing functionality. For example, API calls may allow direct contribution of light energy to a buffer for an identified pixel, and allow emission of new rays for intersection testing alone or in bundles. The API also can provide a mechanism for associating arbitrary data with ray definition data defining a ray to be tested through a shader using the emit ray call. The arbitrary data is provided to a shader associated with an object that is identified subsequently as having been intersected by the ray. The data can include code, or a pointer to code, that can be used by or run after the shader. The data also can be propagated through a series of shaders, and associated with rays instantiated in each shader. Recursive shaders can be recompiled as non-recursive shaders interfacing with API semantics according to the description.
    Type: Grant
    Filed: September 21, 2009
    Date of Patent: November 26, 2013
    Assignee: Caustic Graphics, Inc.
    Inventors: James Alexander McCombe, Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies
  • Patent number: 8482561
    Abstract: Aspects include API interfaces for interfacing shaders with other components and/or code modules that provide ray tracing functionality. For example, API calls may allow direct contribution of light energy to a buffer for an identified pixel, and allow emission of new rays for intersection testing alone or in bundles. The API also can provide a mechanism for associating arbitrary data with ray definition data defining a ray to be tested through a shader using the emit ray call. The arbitrary data is provided to a shader associated with an object that is identified subsequently as having been intersected by the ray. The data can include code, or a pointer to code, that can be used by or run after the shader. The data also can be propagated through a series of shaders, and associated with rays instantiated in each shader.
    Type: Grant
    Filed: September 21, 2009
    Date of Patent: July 9, 2013
    Assignee: Caustic Graphics, Inc.
    Inventors: James Alexander McCombe, Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies
  • Patent number: 8217935
    Abstract: Systems and methods include high throughput and/or parallelized ray/geometric shape intersection testing using intersection testing resources accepting and operating with block floating point data. Block floating point data sacrifices precision of scene location in ways that maintain precision where more beneficial, and allow reduced precision where beneficial. In particular, rays, acceleration structures, and primitives can be represented in a variety of block floating point formats, such that storage requirements for storing such data can be reduced. Hardware accelerated intersection testing can be provided with reduced sized math units, with reduced routing requirements. A driver for hardware accelerators can maintain full-precision versions of rays and primitives to allow reduced communication requirements for high throughput intersection testing in loosely coupled systems. Embodiments also can include using BFP formatted data in programmable test cells or more general purpose processing elements.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: July 10, 2012
    Assignee: Caustic Graphics, Inc.
    Inventors: Stephen Purcell, Ryan R. Salsbury, James Alexander McCombe, Sean Matthew Gies
  • Publication number: 20110032257
    Abstract: Aspects can be for ray tracing of 3-D scenes, and include dynamically controlling a population of rays being stored in a memory, to keep the population within a target, a memory footprint or other resource usage specification. An example includes controlling the population by examining indicia associated with rays returning from intersection testing, to be shaded, the indicia correlated with behavior of shaders to be run for those rays, such that population control selects, or reorders rays for shading, to prioritize shading of rays whose shaders are expected to produce fewer rays. The indicia can include a respective weight for each ray. In an example, analyzer modules examine hints associated with shaders bound to intersected primitives. Population control aspects can influence ray diversity in memory, including encouraging a varying diversity pattern as rendering of a given scene or frame progresses, based on system resource indicia, rendering metrics and so on.
    Type: Application
    Filed: April 30, 2010
    Publication date: February 10, 2011
    Applicant: Caustic Graphics, Inc.
    Inventors: Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies, Steven John Clohset
  • Publication number: 20100097372
    Abstract: A synthetic acceleration shape bound primitives composing a 3-D scene, and is defined using a group of fundamental shapes arranged to bound the primitives, and for which intersection results for group members yield an ultimate intersection testing result for the synthetic shape, using a logical operator. For example, two or more spheres are used to bound an object so that each of the spheres is larger than a minimum necessary to bound the object, and a volume defined by an intersection between the shapes defines a smaller volume in which the object is bounded. A ray is found to potentially intersect the object only if it intersects both spheres. In another example, an element may be defined by a volumetric union of component elements. Indicators can determine how groups of shapes should be interpreted. Synthetic shapes can be treated as a single element in a graph or hierarchical arrangement of acceleration elements.
    Type: Application
    Filed: October 1, 2009
    Publication date: April 22, 2010
    Applicant: Caustic Graphics, Inc.
    Inventors: Sean Matthew Gies, James Alexander McCombe, Luke Tilman Peterson
  • Publication number: 20100073370
    Abstract: Aspects include API interfaces for interfacing shaders with other components and/or code modules that provide ray tracing functionality. For example, API calls may allow direct contribution of light energy to a buffer for an identified pixel, and allow emission of new rays for intersection testing alone or in bundles. The API also can provide a mechanism for associating arbitrary data with ray definition data defining a ray to be tested through a shader using the emit ray call. The arbitrary data is provided to a shader associated with an object that is identified subsequently as having been intersected by the ray. The data can include code, or a pointer to code, that can be used by or run after the shader. The data also can be propagated through a series of shaders, and associated with rays instantiated in each shader. Recursive shaders can be recompiled as non-recursive shaders interfacing with API semantics according to the description.
    Type: Application
    Filed: September 21, 2009
    Publication date: March 25, 2010
    Applicant: Caustic Graphics, Inc.
    Inventors: James Alexander McCombe, Luke Tilman Peterson, Ryan R. Salsbury, Sean Matthew Gies