Visibility calculations for 3d computer graphics
AssigneeFuzzysharp Technologies, Inc.
InventorHong Lip Lim
Life of this patent
Estimating the term…
Abstract
Disclosed is a method of reducing the complexity of hidden surface removal in 3D graphics systems. A fuzzy projection (FF) of a surface (SU) as seen from a number of viewpoints (VP) in a bounding box (BB) is stored in a buffer (FA) having elements (FE). A combination of all the patches (PT) of the surface (SU) viewed form a fuzzy region (FR) where surfaces can be either visible, hidden, or unable to be determined with certainty as to whether or not visible/hidden. A non-fuzzy region (NF) describes those patches (PT) that are always visible.
Claims68
A method of reducing the visibility related computations in 3-D computer graphics, the visibility related computations being performed on 3-D surfaces or their sub-elements, or a selected set of both, the method comprising:
- identifying grid cells which arc under or related to the projections or extents of projections associated with at least one of said 3-D surfaces or their sub-elements;
- comparing data associated with said at least one of 3-D surfaces or their sub-elements with stored data associated with the grid cells;
- determining which of said at least one of 3-D surfaces or their sub-elements is always invisible or always visible to a viewpoint or a group of viewpoints by projection based computations prior to a visibility computation;
- and
- ignoring said determined at least one of the 3-D surfaces or their sub-elements during said visibility computation.
A method of reducing a step of visibility computations in 3-D computer graphics from a perspective of a viewpoint, the method comprising:
- computing, before said step and from said perspective, the visibility of at least one entity selected from 3-D surfaces and sub-elements of said 3-D surfaces, wherein said computing step comprises at least a comparison between a pair of depth-related numbers to determine which of the surfaces or the sub-elements of the surfaces associated with said numbers is closer to said viewpoint and said 3-D surfaces are arranged in a hierarchy represented by patches in varying levels of details;
- and
- skipping, at said step, at least an occlusion relationship calculation for at least one entity that has been determined to be invisible in said computing step.
A method of reducing a step of visibility computations in 3-D computer graphics from a perspective of a viewpoint, the method comprising:
- computing, before said step and from said perspective, the visibility of at least one entity selected from 3-D surfaces and sub-elements of said 3-D surfaces, wherein said computing step comprises:
- employing at least one projection plane for generating projections with said selected set of 3-D surfaces and said sub-elements with respect to said perspective;
- identifying regions on said at least one projection plane, wherein said regions are related to the projections associated with said selected 3-D surfaces, said sub-elements, or bounding volumes of said 3-D surfaces or said sub-elements;
- updating data related to said regions in computer storage;
- and
- deriving the visibility of at least one of said 3-D surfaces or said sub-elements from the stored data in said computer storage;
- and
- skipping, at said step of visibility computations, at least an occlusion relationship calculation for at least one entity that has been determined to be invisible in said computing step.
A method of reducing visibility computations in 3-D computer graphics, the method comprising:
- computing the visibility of a set of entities selected from 3-D surfaces and sub-elements of said 3-D surfaces from the perspective of a group of a plurality of viewpoints, wherein said computing step comprises at least a comparison between a pair of depth-related numbers to determine which of the surfaces or the sub-elements of the surfaces associated with said numbers is closer to said group of a plurality of viewpoints and said 3-D surfaces are arranged in a hierarchy represented by patches in varying levels of details;
- and
- skipping at least an occlusion relationship calculation at subsequent steps of visibility computations for at least one entity Eat has been determined to be invisible in said computing step, wherein said visibility computations in each step is from the perspective of each viewpoint from said group, or from the perspective of each subset of viewpoints from said group.
A method of reducing visibility computations in 3-D computer graphics, the method comprising:
- computing the visibility of a set of entities selected from 3-D surfaces and sub elements of said 3-D surfaces from the perspective of a group of a plurality of viewpoints, wherein said computing step comprises:
- employing at least one projection plane for generating projections with said selected set of 3-D surfaces and said sub-elements with respect to the perspective of a group of a plurality of viewpoints;
- identifying regions on said at least one projection plane, wherein said regions are related to the projections associated with said selected 3-D surfaces, said sub-elements, or bounding volumes of said selected 3-D surfaces or said sub-elements from said perspective;
- updating data related to said regions in computer storage;
- and
- deriving the visibility of at least one of said 3-D surfaces or said sub-elements from the stored data in said computer storage;
- and
- skipping at least an occlusion relationship calculation at subsequent steps of visibility computations for at least one entity that has been determined to be invisible in said computing step, wherein said visibility computations in each step is from the perspective of each viewpoint from said group, or from the perspective of each subset of viewpoints from said group.
A method of reducing visibility computations in 3-D computer graphics, the method comprising:
- computing the visibility of a set of entities selected from 3-D surfaces and sub-elements of said 3-D surfaces from the perspective of a group of at least one viewpoint, wherein said computing step comprises at least a comparison between a pair of depth-related numbers to determine which of the surfaces or the sub-elements of the surfaces associated with said numbers is closer to said group of at least one viewpoint and said 3-D surfaces are arranged in a hierarchy represented by patches in varying levels of details;
- and
- skipping at least an occlusion relationship calculation at each of subsequent step or steps of visibility computations, wherein said visibility computations in each of said step or steps is from the perspective of each viewpoint from said group, or from the perspective of a subset of viewpoints from said group, for at least one entity that has been determined to be visible in said computing step.
A method of reducing visibility computations in 3-D computer graphics, the method comprising:
- computing the visibility of a set of entities selected from 3-D surfaces and sub-elements of said 3-D surfaces from the perspective of a group of at least one viewpoint, wherein said computing step comprises:
- employing at least one projection plane for generating projections with said selected set of 3-D surfaces and said sub-elements with respect to said perspective of a group of at least one viewpoint;
- identifying regions on said at least one projection plane;
- wherein said regions are related to the projections associated with said 3-D surfaces, said sub-elements, or bounding volumes of said 3-D surfaces or said sub-elements from said perspective;
- updating the data related to said regions in computer storage;
- and
- deriving the visibility of at least one of said 3-D surfaces or said sub-elements from the data stored in said computer storage, and
- skipping at least an occlusion relationship calculation at each of subsequent step or steps of visibility computations, wherein said visibility computations in each of said step or steps is from the perspective of each viewpoint from said group, or from the perspective of a subset of viewpoints from said group, for at least one entity that has been determined to be visible in said computing step.
A method of reducing visibility computations in 3-D computer graphics with respect to a viewpoint, the method comprising:
- employing at least one projection plane for generating projections with respect to a perspective of said viewpoint;
- dividing said at least one projection plane into at least one grid, wherein said at least one grid is irregular;
- identifying, from said perspective, grid cells which are related to the projections or extents of the projections, said projections are related to 3-D surfaces, sub-elements of said 3-D surfaces, bounding volumes of said 3-D surfaces, or bounding volumes of said sub-elements, wherein said identified grid cells are represented by a data structure based on a quadtree;
- computing visibility of at least one of said surfaces or said sub-elements from said perspective, based on information derived from the identified grid cells;
- and
- ignoring, in a subsequent step of visibility computations, at least one of said 3-D surfaces or said sub-elements that has been determined to be invisible in said computing step, wherein said step is with respect to said perspective.
A method of reducing visibility computations in 3-D computer graphics with respect to a viewpoint, the method comprising:
- employing at least one projection plane for generating projections with respect to a perspective of said viewpoint;
- dividing said at least one projection plane into at least one grid;
- wherein said at least one grid is regular;
- identifying, from said perspective, grid cells which are related to the projections or extents of the projections;
- said projections are related to 3-D surfaces, sub-elements of said 3-D surfaces, bounding volumes of said 3-D surfaces, or bounding volumes of said sub-elements, wherein said identified grid cells are represented by a data structure based on a z-buffer;
- computing visibility of at least one of said surfaces or said sub-elements from said perspective, based on information derived from the identified grid cells;
- and
- ignoring, in a subsequent step of visibility computations, at least one of said 3-D surfaces or said sub-elements that has been determined to be invisible in said computing step;
- wherein said step is with respect to said perspective.
A method of reducing the visibility related computations in 3-D computer graphics, said visibility related computations being performed on 3-D surfaces or their sub-elements, or a selected set of both, said visibility related computations is from the perspective of a viewpoint, the method comprising:
- prior to a visibility computation, identifying grid cells which are under or related to at least one projection or at least one extent of projection that is associated with at least one of said 3-D surfaces or their sub-elements, said at least one projection or at least one extent of projection is from the perspective of said viewpoint;
- comparing the data associated with at least one of said 3-D surfaces, their sub-elements, bounding volumes of said 3-D surfaces, or bounding volumes of said sub-elements with the stored data associated with the grid cells;
- determining which of said at least one of said 3-D surfaces, or sub-elements is invisible to said viewpoint;
- and
- if said at last one of said 3-D surfaces or sub-elements is determined to be invisible to said viewpoint, ignoring the entity or entities during said visibility computation.
A method in 3-D computer graphics for processing the visibility of 3-D surfaces before a subsequent step of visibility computations, said method comprising:
- for each selected 3-D surface or sub-element of a 3-D surface, identifying grid cells on a projection plane which are under or related to a projection associated with said selected 3-D surface or sub-element, said projection and said subsequent step of visibility computations are from the perspective of a same viewpoint;
- for each of said grid cells, accessing the corresponding z-buffer element;
- and
- computing the visibility of the part of said selected 3-D surface or sub-element that projects onto said each of said grid cells by comparing the depth-related data stored in said corresponding z-buffer element with the depth-related value associated with said part.
A method in 3-D computer graphics for processing the visibility of 3-D surfaces before a subsequent step of visibility computations, said method comprising:
- for each selected 3-D surface or sub-element of a 3-D surface, identifying grid cells on a projection plane which are under or related to a projection associated with the bounding volume of said selected 3-D surface or sub-element, said projection and said subsequent step of visibility computations are from the perspective of a same viewpoint;
- for each of said grid cells, accessing the corresponding z-buffer element;
- and
- computing the visibility of the part of the bounding volume that projects onto said each of said grid cells by comparing the depth-related data stored in said corresponding z-buffer element with the depth-related value associated with said part.
Dependencies are inferred from the claim text.