hello everyone:
i want to do some brdf lighting in the local coordinate system(tangent
space) of every vertex. i find that all the algorithm(for mesh not
parametric surface) are need the vertex coordinate, norma vector, and
texture coordinate. i can not understand what the texture coordinate
mean. My question is that if there is a mesh model, such as a teapot
without texture mapping, how can i compute its vertexs' tangent
space.
Thanks a lot.
|
|
0
|
|
|
|
Reply
|
hy7646 (3)
|
5/20/2007 1:48:38 AM |
|
"iShan" <hy7646@gmail.com> wrote in message
news:1179625718.839358.30520@h2g2000hsg.googlegroups.com...
> My question is that if there is a mesh model, such as a teapot
> without texture mapping, how can i compute its vertexs' tangent
> space.
Compute vertex normals, say, by computing at each vertex
an average (or weighted average) of the face normals of
all faces that share that vertex. You have a vertex V and
a vertex normal N, so the tangent space is the plane
Dot(N,X-V) = 0.
If you need specific tangent vectors, you have infinitely
many pairs of orthogonal vectors to choose from. The
challenge is to try to choose them so that the "tangent
field" is smoothly varying. You can estimate the curvature
and metric tensors at each vertex, so it is possible to
estimate the principal directions at the vertices. These
are good candidates for a smooth field, although you must
beware of "umbilic points". Surfaces with the topology of
a sphere (genus 0) are also problematic, since it is impossible
mathematically to construct a continuous tangent vector
field on a sphere where the vectors are all unit length.
--
Dave Eberly
http://www.geometrictools.com
|
|
0
|
|
|
|
Reply
|
Dave
|
5/20/2007 5:32:09 AM
|
|
On May 20, 1:32 pm, "Dave Eberly" <dNOSPAMebe...@usemydomain.com>
wrote:
> "iShan" <hy7...@gmail.com> wrote in message
>
> news:1179625718.839358.30520@h2g2000hsg.googlegroups.com...
>
> > My question is that if there is a mesh model, such as a teapot
> > without texture mapping, how can i compute its vertexs' tangent
> > space.
>
> Compute vertex normals, say, by computing at each vertex
> an average (or weighted average) of the face normals of
> all faces that share that vertex. You have a vertex V and
> a vertex normal N, so the tangent space is the plane
> Dot(N,X-V) = 0.
>
> If you need specific tangent vectors, you have infinitely
> many pairs of orthogonal vectors to choose from. The
> challenge is to try to choose them so that the "tangent
> field" is smoothly varying. You can estimate the curvature
> and metric tensors at each vertex, so it is possible to
> estimate the principal directions at the vertices. These
> are good candidates for a smooth field, although you must
> beware of "umbilic points". Surfaces with the topology of
> a sphere (genus 0) are also problematic, since it is impossible
> mathematically to construct a continuous tangent vector
> field on a sphere where the vectors are all unit length.
>
> --
> Dave Eberlyhttp://www.geometrictools.com
thanks for your reply.
do the isotropic brdf computing, the tangent plane is sufficient.
but do the anisotropic one, someone advised me to seek help from the
art designer, who can give the texture coordinate of all the vertex,
do you think this is a good method?
|
|
0
|
|
|
|
Reply
|
iShan
|
5/21/2007 2:57:43 PM
|
|
"iShan" <hy7646@gmail.com> wrote in message
news:1179759463.555899.13250@b40g2000prd.googlegroups.com...
> do the isotropic brdf computing, the tangent plane is sufficient.
> but do the anisotropic one, someone advised me to seek help from the
> art designer, who can give the texture coordinate of all the vertex,
> do you think this is a good method?
The construction that I mentioned for computing the tangent space
at a vertex uses information local to that vertex. You need to know
vertex neighbors to estimate normals and tangents (and principal
curvatures and principal directions). I also mentioned that once
you have the tangent space, you have infinitely many pairs of
tangent vectors to use for the local coordinate system at the vertex.
The assignment of texture coordinates to the vertices effectively
provides a parameterization of the surface, say, position is P(u,v) =
(x(u,v),y(u,v),z(u,v)), where u and v are the parameters. This
allows you to create specific tangent vectors. For example, you
can choose T1 = (dP/du)/|dP/du|. If N is the unit-length vertex
normal, then the other tangent is T2 = Cross(N,T1). T1 is chosen
based on how position varies with texture coordinate u. Who
better than an artist to assign the texture coordinate?
--
Dave Eberly
http://www.geometrictools.com
|
|
0
|
|
|
|
Reply
|
Dave
|
5/21/2007 3:27:13 PM
|
|
On May 21, 11:27 pm, "Dave Eberly" <dNOSPAMebe...@usemydomain.com>
wrote:
> "iShan" <hy7...@gmail.com> wrote in message
>
> news:1179759463.555899.13250@b40g2000prd.googlegroups.com...
>
> > do the isotropic brdf computing, the tangent plane is sufficient.
> > but do the anisotropic one, someone advised me to seek help from the
> > art designer, who can give the texture coordinate of all the vertex,
> > do you think this is a good method?
>
> The construction that I mentioned for computing the tangent space
> at a vertex uses information local to that vertex. You need to know
> vertex neighbors to estimate normals and tangents (and principal
> curvatures and principal directions). I also mentioned that once
> you have the tangent space, you have infinitely many pairs of
> tangent vectors to use for the local coordinate system at the vertex.
>
> The assignment of texture coordinates to the vertices effectively
> provides a parameterization of the surface, say, position is P(u,v) =
> (x(u,v),y(u,v),z(u,v)), where u and v are the parameters. This
> allows you to create specific tangent vectors. For example, you
> can choose T1 = (dP/du)/|dP/du|. If N is the unit-length vertex
> normal, then the other tangent is T2 = Cross(N,T1). T1 is chosen
> based on how position varies with texture coordinate u. Who
> better than an artist to assign the texture coordinate?
>
> --
> Dave Eberlyhttp://www.geometrictools.com
ok, i know that. thanks very much.
|
|
0
|
|
|
|
Reply
|
iShan
|
5/22/2007 8:53:29 AM
|
|
|
4 Replies
333 Views
(page loaded in 0.446 seconds)
Similiar Articles: Skeleton of a volume (triangulated) - comp.soft-sys.matlab ...Place a volume of points over my STL mesh. 2. Convert ... slices] =3D size(image3D); tStart =3D tic; % Compute ... where I wanted the > > medial surface of the void space ... How to draw conical surfaces with OpenGL? - comp.graphics.api ...... like it more correct, you have to do some math to compute the hole boundaries, and interpolate your conical mesh ... Building Solid Objects | Drawing in Space: Geometric ... Surface normals? - comp.graphics.api.opengl... 18.030 How can I make OpenGL automatically calculate ... instead of a normal vector, they carry tangent tensors). ... preserving the relative position of a single mesh ... uv coordinates??? - comp.graphics.api.opengl... working on the creation of normal maps with two mesh at ... I use Rhino and Blender but I'm not able to find the ... Screen Space UV Coordinates ... World Map Shapefile ... JPEG Resolution - comp.cad.solidworksWith regard to your question about removing tangent ... Hi, I was wondering if it were possible to calculate what ... Display resolution, structure, color space of PDF file ... Curve/Bend an Image? - comp.graphics.apps.paint-shop-pro ...But you may need some Perspective deforming and Mesh warp and ... config and includes the bend ... the Cartesian slope of the tangent line to a polar curve ... to compute ... Shading problem - comp.graphics.api.openglI compute the normal as the average of the normals of the ... as a collection of attributes, not a position in space. ... If your mesh is a real rectilinear mesh, use GL_QUADS ... Calculating folder size - comp.sys.mac.systemIn article <dorayme-A6FEFB.09102125012011@hello.network ... the GUI and its label turns blue) then press the space ... How to calculate Eb/No? - comp.dsp How to calculate ... How to rotate a point about an axis formed by 2 points - comp.soft ...... be easy, I could just determine the slope of the planes (or lines in 2-space) and find the ... the axis of the ... know that point 5 in mesh#1 merges with point 3 in mesh#2 ... Integration of a spline over ellipses - comp.soft-sys.matlab ...... to find the volume, or if you are trying to find the ... was able to parametrise this ellipses in the space. ... (the mesh). Walter Roberson <roberson@hushmail ... how to compute the tangent space of the meshhow to compute the tangent space of the mesh - Graphics . This is a discussion on how to compute the tangent space of the mesh - Graphics; hello everyone: i want to ... Computing Tangent Space Basis Vectors for an Arbitrary MeshComputing Tangent Space Basis Vectors for an Arbitrary Mesh ... tangent vectors for the triangle whose vertices are P 0, P 1, and P 2. To find the tangent vectors for a ... 7/29/2012 6:26:00 AM
|