Apparatus and methods for wrapping texture onto the surface of a virtual object
First Claim
1. A method for mapping a location on a surface of a three-dimensional virtual object to a corresponding location on a two-dimensional texture, the method comprising the steps of:
- (a) selecting a region on a surface of a three-dimensional virtual object;
(b) creating a first mesh comprising points corresponding to points within the selected region;
(c) creating a second mesh comprising points corresponding to points of the first mesh;
(d) adjusting the second mesh to improve a quality metric associated with an arrangement of points of the second mesh;
(e) relating the adjusted second mesh to a two-dimensional texture; and
(f) mapping a location in the selected region to a corresponding location in the texture.
5 Assignments
0 Petitions
Accused Products
Abstract
The invention provides techniques for wrapping a two-dimensional texture conformally onto a surface of a three dimensional virtual object within an arbitrarily-shaped, user-defined region. The techniques provide minimum distortion and allow interactive manipulation of the mapped texture. The techniques feature an energy minimization scheme in which distances between points on the surface of the three-dimensional virtual object serve as set lengths for springs connecting points of a planar mesh. The planar mesh is adjusted to minimize spring energy, and then used to define a patch upon which a two-dimensional texture is superimposed. Points on the surface of the virtual object are then mapped to corresponding points of the texture. The invention also features a haptic/graphical user interface element that allows a user to interactively and intuitively adjust texture mapped within the arbitrary, user-defined region.
201 Citations
64 Claims
-
1. A method for mapping a location on a surface of a three-dimensional virtual object to a corresponding location on a two-dimensional texture, the method comprising the steps of:
-
(a) selecting a region on a surface of a three-dimensional virtual object;
(b) creating a first mesh comprising points corresponding to points within the selected region;
(c) creating a second mesh comprising points corresponding to points of the first mesh;
(d) adjusting the second mesh to improve a quality metric associated with an arrangement of points of the second mesh;
(e) relating the adjusted second mesh to a two-dimensional texture; and
(f) mapping a location in the selected region to a corresponding location in the texture. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A method for mapping a location on a surface of a virtual object to a corresponding location on a texture, the method comprising the steps of:
-
(a) selecting a region on a surface of a virtual object represented in a first coordinate space;
(b) defining a first patch corresponding to the selected region;
(c) tessellating the first patch to create a first mesh;
(d) creating a second mesh comprising points corresponding to points of the first mesh;
(e) adjusting the second mesh to improve a quality metric associated with an arrangement of points of the second mesh;
(f) defining a second patch using the second mesh;
(g) superimposing a texture onto the second patch, wherein the texture is represented in a second coordinate space; and
(h) mapping a location on the surface of the virtual object to a corresponding location on the texture. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55)
-
-
56. A method for wrapping a texture onto a surface of a three-dimensional virtual object, the method comprising the steps of:
-
(a) selecting an arbitrarily-shaped user-defined region of a surface of a three-dimensional virtual object; and
(b) for each of a plurality of locations in the region;
(i) mapping the location in the selected region to a corresponding location in a texture; and
(ii) assigning to the location in the selected region a graphical value associated with the location in the texture. - View Dependent Claims (57, 58, 59, 60, 61, 62, 63, 64)
-
Specification