Abstract:
A method of generating a ray tracing acceleration structure includes transformatively mapping locations of object primitives in a three dimensional first space into Morton codes indicating respective locations of the primitives along a meandering linear path through the first space; determining a Morton distance indicating a difference between a first Morton code corresponding with a first primitive and a second Morton code corresponding with a second primitive; generating an acceleration structure to include nodes representing portions of the first space and adaptively adjusting a reference level of the acceleration structure, based on the Morton distance between primitives; and dividing the first space using a first division method when a level of a first node of the acceleration structure which corresponds to the first space is lower than the reference level, and dividing the first space using a second division method when the level of the first node exceeds the reference level.
Abstract:
A ray tracing method of traversing a tree, includes, based on a determination of whether a plurality of child nodes of a parent node of the tree are valid traversal targets for a first ray, determining any one of the plurality of child nodes to be a target node, and storing information regarding a remaining child node, of the plurality of child nodes, that is not the target node in a memory by using a path code of the remaining child node as a key value.
Abstract:
A rendering system includes: a ray generator configured to generate a ray; a memory chip configured to store information about objects in three-dimensional (3D) space; an intersection tester embedded in the memory chip and configured to perform an intersection test between the ray and the objects by using the information about the objects and information about the ray; and a shader configured to perform pixel shading based on a result of the intersection test.
Abstract:
A ray tracing apparatus includes a ray generator configured to generate a ray, and a traverser configured to perform a ray-node intersection test for the ray on a first node included in an acceleration structure, and perform the ray-node intersection test for the ray on a second node that is a child node of the first node using values obtained by calculation during the ray-node intersection test on the first node. A first minimum value representing the first node on a first coordinate axis is equal to a second minimum value representing the second node on the first coordinate axis, or a first maximum value representing the first node on the first coordinate axis is equal to a second maximum value representing the second node on the first coordinate axis.
Abstract:
A rendering apparatus includes a tile binning unit configured to determine a plurality of tiles including at least one primitive, and configured to generate tile data associated with the plurality of tiles. The rendering apparatus includes a visibility test unit configured to perform a visibility test on the at least one primitive included in the plurality of tiles, based on the tile data. The rendering apparatus further includes a rendering unit configured to perform rendering on a visible primitive among the at least one primitive as a result of the visibility test.
Abstract:
Provided are a method and apparatus for representing coordinate values of a bounding box of an object. The apparatus and corresponding method receive a minimum value and a maximum value of coordinate values of a bounding box as floating point values. A difference value is determined between the minimum and maximum values, and the difference value is converted to an exponent and a mantissa.
Abstract:
A method of performing path rendering includes selecting a tile including a path from tiles in a frame based on tile bin data, splitting the selected tile into a plurality of first sub-tiles, selecting a first sub-tile that does not include the path from the plurality of first sub-tiles, and updating an initial winding number of the selected first sub-tile. The tile bin data includes an initial winding number of each of the tiles in the frame.
Abstract:
According to a method of processing an image, respective sampling rates of each tile included in a second frame is determined based on a corresponding rendering result of a first frame, and a pixel rendering process to implement rendering of pixels included in the second frame is selected by using geometric information of reference pixels of the second frame. The reference pixels of the second frame may be selected based on the respectively determined sampling rates.
Abstract:
Methods and apparatus for ray tracing, and methods and apparatus for generating acceleration structure or traversing acceleration structure are provided. A method of generating an acceleration structure includes assigning objects into bounding boxes, generating an acceleration structure comprising nodes and indicating inclusion relationships between the bounding boxes, and marking overlapping nodes among the nodes.
Abstract:
A rendering method includes determining frames. The rendering method further includes successively rendering same regions of the frames. In another general aspect, rendering device includes an inter-frame determining unit configured to determine frames. The rendering device further includes a rendering unit configured to successively render same regions of the frames.