Device and method for intraoperative reconstruction of bone 3d models
US-2024394982-A1 · Nov 28, 2024 · US
US2020051312A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2020051312-A1 |
| Application number | US-201816101066-A |
| Country | US |
| Kind code | A1 |
| Filing date | Aug 10, 2018 |
| Priority date | Aug 10, 2018 |
| Publication date | Feb 13, 2020 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A hardware-based traversal coprocessor provides acceleration of tree traversal operations searching for intersections between primitives represented in a tree data structure and a ray. The primitives may include opaque and alpha triangles used in generating a virtual scene. The hardware-based traversal coprocessor is configured to determine primitives intersected by the ray, and return intersection information to a streaming multiprocessor for further processing. The hardware-based traversal coprocessor is configured to omit reporting of one or more primitives the ray is determined to intersect. The omitted primitives include primitives which are provably capable of being omitted without a functional impact on visualizing the virtual scene.
Opening claim text (preview).
1 . A system that develops visualization of a virtual scene, comprising: memory configured to store at least a portion of an acceleration data structure, wherein the acceleration data structure includes a plurality of hierarchical nodes, wherein at least one of said hierarchical nodes identifies a plurality of primitives of the virtual scene; and circuitry operatively coupled to the memory configured to: receive information about a ray; and in response to receiving the ray information, traverse the acceleration data structure; determine a plurality of intersected primitives, wherein each intersected primitive is a primitive in the plurality of primitives that is intersected by a ray; determine at least one primitive among the plurality of intersected primitives that will not affect visualization of the virtual scene; and report two or more of the intersected primitives while omitting to report the at least one primitive that is determined will not affect visualization of the virtual scene. 2 . The system of claim 1 , wherein the circuitry comprises a coprocessor. 3 . The system of claim 1 , wherein the plurality of intersected primitives include one or more alpha primitives and one or more opaque primitives, and the at least one primitive that is determined will not affect visualization of the virtual scene includes an alpha primitive and an opaque primitive. 4 . The system of claim 1 , wherein the at least one primitive that is determined will not affect visualization of the virtual scene includes a primitive that is parametrically further away from an origin of the ray than another primitive in the plurality of intersected primitives. 5 . The system of claim 1 , wherein the plurality of primitives include opaque primitives and alpha primitives, and the circuitry is configured to, upon determining that the ray intersects an alpha primitive, identify the intersected alpha primitive to a processor for further processing. 6 . The system of claim 1 , wherein the plurality of primitives include opaque primitives and alpha primitives, and the circuitry is configured to: upon determining that the ray intersects an opaque primitive, store intersection information for the opaque primitive in a result queue; and upon determining that the ray intersects an alpha primitive and the result queue includes the intersection information for the opaque primitive, transmit the stored intersection information for the opaque primitive to a processor before transmitting intersection information for the intersected alpha primitive to the processor. 7 . The system of claim 1 , wherein the plurality of primitives include opaque primitives and alpha primitives, and the circuitry is configured to: upon determining that the ray intersects an opaque primitive, store intersection information for the opaque primitive in a result queue; and upon determining that the ray intersects an alpha primitive and the result queue includes the intersection information for the opaque primitive, transmit the stored intersection information for the opaque primitive to a processor and traversal stack information including state information for continuing traversal of the opaque and alpha primitives after performing, by the processor, processing related to the opaque primitive. 8 . The system of claim 1 , wherein the plurality of primitives include opaque primitives and alpha primitives, and determining the plurality of intersected primitives includes determining each alpha primitive, in the plurality of primitives, that is intersected by the ray and wherein each of the intersected alpha primitive is reported. 9 . The system of claim 1 , wherein the plurality of primitives include a range of primitives encoded within a contiguous group of blocks; and the circuitry includes a ray-triangle test and transform unit and an intersection management unit, the ray-triangle test and transform unit includes processing logic configured to transform the ray from world space to object space of the range of primitives and determine primitives in the range of primitives which are intersected by the ray in the object space, and the intersection management unit includes a result queue and is configured to determine which of the intersected primitives will not affect the visualization of the virtual scene. 10 . A method implemented by a hardware-based traversal coprocessor coupled to a multiprocessor, the method comprising: storing, in memory, at least a portion of an acceleration data structure, wherein the acceleration data structure includes a plurality of hierarchical nodes, at least one of said plurality of hierarchical nodes identifies a plurality of primitives of a virtual scene; receive information about a ray; and in response to receiving the ray information, determining a plurality of intersected primitives, wherein each intersected primitive is a primitive in the plurality of primitives that is intersected by a ray; determine at least one primitive among the plurality of intersected primitives that will not affect visualization of the virtual scene; and report two or more of the intersected primitives while omitting to report the at least one primitive that is determined will not affect visualization of the virtual scene. 11 . The method of claim 10 , wherein the intersected primitives include one or more alpha primitives and one or more opaque primitives, and the at least one primitive that is determined will not affect visualization of the virtual scene include an alpha primitive and an opaque primitive. 12 . The method of claim 10 , wherein the at least one primitive that is determined will not affect visualization of the virtual scene is parametrically further away from an origin of the ray than another primitive of the plurality of intersected primitives. 13 . The method of claim 10 , wherein the plurality of primitives include opaque primitives and alpha primitives, and the method further includes, upon determining that the ray intersects an alpha primitive, identify the intersected alpha primitive to the multiprocessor for further processing. 14 . The method of claim 10 , wherein the plurality of primitives include opaque primitives and alpha primitives, and the method further includes: upon determining that the ray intersects an opaque primitive, store intersection information for the opaque primitive in a result queue; and upon determining that the ray intersects an alpha primitive and the result queue includes the intersection information for the opaque primitive, transmit the stored intersection information for the opaque primitive to the multiprocessor before transmitting intersection information for the intersected alpha primitive to the multiprocessor. 15 . The method of claim 10 , wherein the plurality of primitives include opaque primitives and alpha primitives, and the method further includes: upon determining that the ray intersects an opaque primitive, store intersection information for the opaque primitive in a result queue; and upon determining that the ray intersects an alpha primitive and the result queue includes the intersection information for the opaque primitive, transmit the stored intersection information for the opaque primitive to the multiprocessor and traversal stack information including state information for continuing traversal of the opaque and alpha primitives after performing, by the multiprocessor, processing related to the opaque primitive. 16 . The method of claim 10 , wherein the plurality of primitives include opaque primitives and alpha primitives, and determining t
Ray-tracing · CPC title
General purpose rendering architectures · CPC title
Tree description, e.g. octree, quadtree · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.