Patents by Inventor Simon Fenney

Simon Fenney 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: 11983811
    Abstract: Intersection testing is performed for a ray with respect to a plurality of convex polygons, each of which is defined by an ordered set of vertices, wherein a shared vertex is used to define at least two of the convex polygons. The vertices of the convex polygons are projected onto a pair of axes orthogonal to the ray direction. A vertex ordering scheme defines an ordering of the projected vertices which is independent of the ordering of the vertices in the ordered sets. For each of the convex polygons, for each edge of the convex polygon defined by two of the projected vertices, a parameter indicative of which side of the edge the ray passes on is determined, wherein if the ray is determined to intersect a point on the edge then the parameter is determined based upon whether the ordering of the projected vertices defining the edge matches the ordering of the vertices in the ordered set of vertices defining the convex polygon.
    Type: Grant
    Filed: February 8, 2023
    Date of Patent: May 14, 2024
    Assignee: Imagination Technologies Limited
    Inventors: Peter Smith-Lacey, Rostam King, Gregory Clark, Simon Fenney
  • Publication number: 20240137044
    Abstract: A data compression method comprises encoding groups of data items by generating, for each group, header data comprising h-bits and a plurality of body portions each comprising b-bits and each body portion corresponding to a data item in the group. The value of h may be fixed for all groups and the value of b is fixed within a group, wherein the header data for a group comprises an indication of b for the body portions of that group. In various examples, b=0 and so there are no body portions. In examples where b is not equal to zero, a body data field is generated for each group by interleaving bits from the body portions corresponding to data items in the group. The resultant encoded data block, comprising the header data and, where present, the body data field can be written to memory.
    Type: Application
    Filed: December 31, 2023
    Publication date: April 25, 2024
    Inventors: Simon Fenney, Greg Clark, Alan Vines
  • Publication number: 20240135648
    Abstract: A tessellation method uses tessellation factors defined for each vertex of a patch which may be a quad, a triangle or an isoline. The method is implemented in a computer graphics system and involves comparing the vertex tessellation factors to a threshold. If the vertex tessellation factors for either a left vertex or a right vertex, which define an edge of an initial patch, exceed the threshold, the edge is sub-divided by the addition of a new vertex which divides the edge into two parts and two new patches are formed. New vertex tessellation factors are calculated for each vertex in each of the newly formed patches, both of which include the newly added vertex. The method is then repeated for each of the newly formed patches until none of the vertex tessellation factors exceed the threshold.
    Type: Application
    Filed: November 27, 2023
    Publication date: April 25, 2024
    Inventors: Peter Malcolm Lacey, Simon Fenney
  • Publication number: 20240137046
    Abstract: A method of compressing data is described in which the compressed data is generated by either or both of a primary compression unit or a reserve compression unit in order that a target compression threshold is satisfied. If a compressed data block generated by the primary compression unit satisfies the compression threshold, that block is output. However, if the compressed data block generated by the primary compression unit is too large, such that the compression threshold is not satisfied, a compressed data block generated by the reserve compression unit using a lossy compression technique, is output.
    Type: Application
    Filed: December 26, 2023
    Publication date: April 25, 2024
    Inventor: Simon Fenney
  • Publication number: 20240127485
    Abstract: A method and a compression unit are provided for compressing, into a block of compressed data, a block of sub-primitive presence indications for use in a rendering system. The block of sub-primitive presence indications is subdivided into a plurality of parent regions, each of the parent regions being subdivided into a plurality of child regions. A presence state is identified for each of the child regions based on the sub-primitive presence indications in the block of sub-primitive presence indications. A hierarchical representation of the block of sub-primitive presence indications is stored in the block of compressed data. For each of one or more parent regions whose child regions all have the same identified presence state, parent-level data is included in the hierarchical representation to represent the presence state of the parent region without child-level data for the child regions within the parent region being included in the hierarchical representation.
    Type: Application
    Filed: May 29, 2023
    Publication date: April 18, 2024
    Inventors: Alper Ozkan, Simon Fenney
  • Publication number: 20240127527
    Abstract: A computer-implemented method of performing intersection testing in a ray tracing system performs intersection testing for each of a plurality of rays against nodes of a hierarchical acceleration structure. The intersection testing for each of the rays comprises, in response to identifying, in a memory, an indication of a re-entry point associated with a ray identifier that is associated with the ray, fetching from the memory the indication of the re-entry point that is associated with the ray identifier, the re-entry point being a node of the hierarchical acceleration structure for which an intersection has been identified for a previously tested ray associated with the ray identifier. The intersection testing for each of the rays further comprises performing intersection testing of the ray against a set of nodes of the hierarchical acceleration structure starting from the re-entry point.
    Type: Application
    Filed: September 26, 2023
    Publication date: April 18, 2024
    Inventors: Peter Smith-Lacey, Simon Fenney
  • Publication number: 20240119640
    Abstract: Compressed data is decompressed to determine sub-primitive presence indications in a rendering system. A received compressed block of sub-primitive presence indications is subdivided into a plurality of parent regions, each subdivided into a plurality of child regions. A hierarchical representation of the block of sub-primitive presence indications is provided, wherein: (i) for each parent region whose child regions all have the same presence state, parent-level data is included to represent the presence state of the parent region without child-level data for the child regions within the parent region being included in the hierarchical representation, and (ii) for each parent region whose child regions do not all have the same presence state, child-level data for the child regions within the parent region is included in the hierarchical representation to represent the presence states for the child regions within the parent region.
    Type: Application
    Filed: May 29, 2023
    Publication date: April 11, 2024
    Inventors: Alper Ozkan, Simon Fenney
  • Publication number: 20240119634
    Abstract: A method and a compression unit are provided for compressing, into a block of compressed data, a block of sub-primitive presence indications for use in intersection testing in a rendering system. An ordered set of patches is obtained which represents the presence indications in the block of sub-primitive presence indications. At least two of the patches in the set of patches partially overlap with each other. Data defining the patches of the set of patches is stored in the block of compressed data. The data defining each of the patches defines a presence state of the patch and a position of the patch within the block of sub-primitive presence indications.
    Type: Application
    Filed: May 30, 2023
    Publication date: April 11, 2024
    Inventors: Simon Fenney, Alper Ozkan
  • Publication number: 20240119635
    Abstract: A method and a decompression unit are provided for decompressing compressed data to determine a sub-primitive presence indication for use in intersection testing in a rendering system. A block of compressed data for a block of sub-primitive presence indications is received. An indication of a sample position within the block of sub-primitive presence indications for which a presence indication is to be determined is received. Data defining an ordered set of patches which represents the presence indications in the block of sub-primitive presence indications is read from the block of compressed data. The data defining each of the patches defines a presence state of the patch and a position of the patch within the block of sub-primitive presence indications. At least two of the patches in the set of patches partially overlap with each other. For one or more of the patches, it is determined whether the sample position is within that patch.
    Type: Application
    Filed: May 30, 2023
    Publication date: April 11, 2024
    Inventors: Simon Fenney, Alper Ozkan
  • Publication number: 20240106458
    Abstract: A method of converting 10-bit pixel data (e.g. 10:10:10:2 data) into 8-bit pixel data involves converting the 10-bit values to 8-bits using a technique that is selected dependent upon the values of the MSBs of the 10-bit values and setting the value of an HDR flag dependent upon the values of the MSBs. The HDR flag is appended to the 3-bit channel.
    Type: Application
    Filed: November 27, 2023
    Publication date: March 28, 2024
    Inventors: Simon Fenney, Linling Zhang
  • Publication number: 20240087209
    Abstract: A method of rendering geometry of a 3D scene for display on a non-standard projection display projects geometry of the 3D scene into a 2D projection plane, wherein image regions are defined in the projection plane, maps the geometry from the projection plane into an image space using transformations, wherein a respective transformation is defined for each image region, and renders the geometry in the image space to determine image values of an image to be displayed on the non-standard projection display. The transformations are configured for mapping the geometry into the image space so as to counteract distortion introduced by an optical arrangement of the non-standard projection display.
    Type: Application
    Filed: November 20, 2023
    Publication date: March 14, 2024
    Inventor: Simon Fenney
  • Publication number: 20240078740
    Abstract: Ray tracing systems process rays through a 3D scene to determine intersections between rays and geometry in the scene, for rendering an image of the scene. Ray direction data for a ray can be compressed, e.g. into an octahedral vector format. The compressed ray direction data for a ray may be represented by two parameters (u,v) which indicate a point on the surface of an octahedron. In order to perform intersection testing on the ray, the ray direction data for the ray is unpacked to determine x, y and z components of a vector to a point on the surface of the octahedron. The unpacked ray direction vector is an unnormalised ray direction vector. Rather than normalising the ray direction vector, the intersection testing is performed on the unnormalised ray direction vector. This avoids the processing steps involved in normalising the ray direction vector.
    Type: Application
    Filed: November 13, 2023
    Publication date: March 7, 2024
    Inventors: Luke T. Peterson, Simon Fenney
  • Publication number: 20240080039
    Abstract: Lossy methods and hardware for compressing data and the corresponding decompression methods and hardware are described. The lossy compression method comprises dividing a block of pixels into a number of sub-blocks and then analysing, for each sub-block, and selecting one of a candidate set of lossy compression modes. The analysis may, for example, be based on the alpha values for the pixels in the sub-block. In various examples, the candidate set of lossy compression modes comprises at least one mode that uses a fixed alpha channel value for all pixels in the sub-block and one or more modes that encode a variable alpha channel value.
    Type: Application
    Filed: November 13, 2023
    Publication date: March 7, 2024
    Inventors: Simon Fenney, Linling Zhang
  • Patent number: 11900543
    Abstract: A tessellation method uses both vertex tessellation factors and displacement factors defined for each vertex of a patch, which may be a quad, a triangle or an isoline. The method is implemented in a computer graphics system and involves calculating a vertex tessellation factor for each corner vertex in one or more input patches. Tessellation is then performed on the plurality of input patches using the vertex tessellation factors. The tessellation operation involves adding one or more new vertices and calculating a displacement factor for each newly added vertex. A world space parameter for each vertex is subsequently determined by calculating a target world space parameter for each vertex and then modifying the target world space parameter for a vertex using the displacement factor for that vertex.
    Type: Grant
    Filed: October 19, 2022
    Date of Patent: February 13, 2024
    Assignee: Imagination Technologies Limited
    Inventors: Peter Malcolm Lacey, Simon Fenney
  • Patent number: 11887212
    Abstract: A graphics processing system includes a tiling unit configured to tile a scene into a plurality of tiles. A processing unit identifies tiles of the plurality of tiles that are each associated with at least a predetermined number of primitives. A memory management unit allocates a portion of memory to each of the identified tiles and does not allocate a portion of memory for each of the plurality of tiles that are not identified by the processing unit. A rendering unit renders each of the identified tiles and does not render tiles that are not identified by the processing unit.
    Type: Grant
    Filed: November 18, 2022
    Date of Patent: January 30, 2024
    Assignee: Imagination Technologies Limited
    Inventors: Michael Worcester, Stuart Smith, Simon Fenney
  • Publication number: 20240029309
    Abstract: A block of sub-primitive presence indications for use in intersection testing in a rendering system is compressed into a block of compressed data. Spatial decorrelation is performed on the sub-primitive presence indications to determine spatially decorrelated presence indications by, for one or more of the presence indications in the line: (i) determining a predicted value for the presence indication based on one or more other presence indications in the line, and (ii) replacing the presence indication with a value of a difference between the presence indication and the determined predicted value for the presence indication.
    Type: Application
    Filed: May 30, 2023
    Publication date: January 25, 2024
    Inventor: Simon Fenney
  • Publication number: 20240029310
    Abstract: Compressed data is decompressed to determine sub-primitive presence indications for intersection testing in a rendering system. Entropy encoded data is read from a block of compressed sub-primitive presence indications data and entropy decoding determines a block of entropy decoded data values. Spatial recorrelation on the block of entropy decoded values determines sub-primitive presence indications. For each line of entropy decoded values in a first dimension: for the entropy decoded values in the line: (i) a predicted value is determined for the entropy decoded value based on other entropy decoded values in the line, and (ii) the entropy decoded value is replaced with a value of a sum of the entropy decoded value and the determined predicted value for the entropy decoded value.
    Type: Application
    Filed: May 30, 2023
    Publication date: January 25, 2024
    Inventor: Simon Fenney
  • Publication number: 20240029314
    Abstract: A method and a compression unit are provided for compressing, into a block of compressed data, a block of sub-primitive presence indications for use in a rendering system. The block of sub-primitive presence indications comprises a plurality of sub-blocks of sub-primitive presence indications. A plurality of candidates for combinations of presence indications are identified. For each of the sub-blocks in the block of sub-primitive presence indications: one of the candidates to be used to represent the sub-block is selected, and an index to indicate the selected candidate is stored in the block of compressed data.
    Type: Application
    Filed: May 29, 2023
    Publication date: January 25, 2024
    Inventor: Simon Fenney
  • Publication number: 20240029315
    Abstract: A method and a decompression unit are provided for decompressing compressed data to determine one or more sub-primitive presence indications for use in a rendering system. A block of compressed data for a block of sub-primitive presence indications is received. The block of sub-primitive presence indications comprises a plurality of sub-blocks of sub-primitive presence indications. The block of compressed data comprises, for each of the sub-blocks in the block of sub-primitive presence indications, an index to indicate one of a plurality of candidates for combinations of presence indications. An index is read from the block of compressed data for one of the sub-blocks in the block of sub-primitive presence indications. Candidate data is obtained representing at least a portion of the candidate indicated by the read index. The obtained candidate data is used to determine one or more of the presence indications in the sub-block.
    Type: Application
    Filed: May 29, 2023
    Publication date: January 25, 2024
    Inventor: Simon Fenney
  • Patent number: 11863208
    Abstract: A data compression method comprises encoding groups of data items by generating, for each group, header data comprising h-bits and a plurality of body portions each comprising b-bits and each body portion corresponding to a data item in the group. The value of h may be fixed for all groups and the value of b is fixed within a group, wherein the header data for a group comprises an indication of b for the body portions of that group. In various examples, b=0 and so there are no body portions. In examples where b is not equal to zero, a body data field is generated for each group by interleaving bits from the body portions corresponding to data items in the group. The resultant encoded data block, comprising the header data and, where present, the body data field can be written to memory.
    Type: Grant
    Filed: March 10, 2021
    Date of Patent: January 2, 2024
    Assignee: Imagination Technologies Limited
    Inventors: Simon Fenney, Greg Clark, Alan Vines