Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / The welded vertices puzzlement.

Author
Message
Fallout
22
Years of Service
User Offline
Joined: 1st Sep 2002
Location: Basingstoke, England
Posted: 18th Feb 2006 00:05 Edited at: 18th Feb 2006 00:06
Anyone understand how 3D meshes work? I've been trying to work this out today while chatting to adr. My understanding of a welded vertex is a vertex that is shared by more than 1 polygon. That's fair enough, but it poses two questions to me:

(1) How can the polygons be mapped to different UV areas? Surely, the vert will then need multiple UV data (1 set for each polygon using the vertex). I've not seen this described in any FVF documentation or anything.
(2) How can you go about making a welded vertex in a memblock if you're making custom meshes?

They're definitely confusing me a bit. If you're making a custom mesh and welded vertices can potentially dramatically increase the efficiency of the model, then I want to use them.

Anyone know anything about the concept of welded verts?

ionstream
20
Years of Service
User Offline
Joined: 4th Jul 2004
Location: Overweb
Posted: 18th Feb 2006 00:10
Here's what I discovered when I made a 3D file format:

Basically, a mesh is composed of vertex points and UV points, and index data. So, the top part of a 3D file might look like

3.00000 2.00000 0.000000
0.00000 3.00000 1.000000
4.00000 1.00000 24.00000

Denoting 3 3D positions of vertices. Another part, denoting UV coordinates, would look similar.

The faces are composed of vertex and UV indices. So, a face might look like:

1 2 3 0 1

Meaning that it uses vertices with the index of 1, 2, and 3, with the UVs with indices of 1 and 2.

I hope I explained that well, cheers

Fallout
22
Years of Service
User Offline
Joined: 1st Sep 2002
Location: Basingstoke, England
Posted: 18th Feb 2006 00:30
Thanks mate. That makes perfect sense. But it also suggests that it's impossible to use welded vertices in DB when making your own custom meshes in memblocks. The make mesh from memblock command uses a specific format that can't use welded vertices, as far as I know..

Anyway, cheers for that.

Van B
Moderator
22
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 18th Feb 2006 12:31
I don't think it matters in DBPro because every polygon uses 3 vertices regardless of the model loaded. The normals take care of smoothing the model, but some systems use the UV location to weld verts too. So, if you have a cylinder in DBPro usually it'll have a seam where the UV coords don't meet, and the verts can't weld together.

In vanmesh, I use an internal format to create the memblock(s) from, but smoothing is done based on position and re-calculated normals and it can partially weld vertices by ignoring the UV data. This means that a section using a unconnected part of the UV map or even a different texture altogether can still be smoothed. Never been a fan of complicated smoothing groups that you see in 3DS max etc, so I'm doing it my own way, every vert will hold it's own tolerances.

That's assuming TGC don't add a FVF format that shares vertices, in which case it'd probably make things a lot more complicated. I'm sure DBC and the expansion pack supported shared vertices.


Van-B

Put away, those fiery biscuits!
Fallout
22
Years of Service
User Offline
Joined: 1st Sep 2002
Location: Basingstoke, England
Posted: 18th Feb 2006 13:20
Interesting stuff. So do you think just making 3 unique verts for each polygon isn't really an overhead, as all polys have 3 unique verts internally anyway? What I have noticed though is if I manipulate a vertex from a custom mesh (say a flat landscape mesh) made in a memblock, it only affects one polygon, as expected. If I do the same using an imported mesh model that has welded vertices, it affects all the attached polygons. That's not what I would expect if the were using unique vertices internally.

re faze
20
Years of Service
User Offline
Joined: 24th Sep 2004
Location: The shores of hell.
Posted: 18th Feb 2006 15:02
Quote: "
That's assuming TGC don't add a FVF format that shares vertices, in which case it'd probably make things a lot more complicated. I'm sure DBC and the expansion pack supported shared vertices."

they most definitely did.

Login to post a reply

Server time is: 2024-11-16 13:36:29
Your offset time is: 2024-11-16 13:36:29