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.

DarkBASIC Professional Discussion / DB FVF 338 ... blasted useless help

Author
Message
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 03:40
Quote: "
This command will make a memblock from a mesh. The specified values must be integer values and the source
resource must exist or the command will fail. The mesh memblock is layed out in the following format. The first
DWORD is the FVF Format, which controls which components each vertex of your mesh will contain. The
default FVF Format is 338. The second DWORD is the FVF Size, which is the size in bytes of a single vertex
element. This size is respective of the FVF Format you specified, which has a default of 36. The third DWORD
is the number of Vertices in your mesh. The remainder of the memblock contains mesh data. The mesh data is
a sequential list of vertices, containing the component data arranged as specified by the FVF Format. The
default FVF Format would specify the following arrangement of data within the vertex element, which is
duplicated for every vertex specified in the memblock. Each grouping of three vertices makes a polygon. Given
the default FVF Format of 338, the first three FLOAT values (12 bytes) of the vertex element would be the
XYZ coordinates in model space. The second three FLOAT values (12 bytes) of the vertex element would be
the normals coordinates in model space. The next DWORD is a diffuse colour component that specifies the
colour of the vertex. The last two FLOATS are UV texture coordinates for the vertex. This adds up to 36
bytes which is the size of a single vertex. Multiply 36 by the number of vertices in the mesh and you get the
overall size of the mesh data.
"


ya know what i get from this is simple

12 byte header
- 4byte dword ... version
- 4byte dword ... size per fvf type
- 4byte dword ... number of vertex

now that is identical to DirectX

- 12byte Vec3 ... Position
- 12byte Vec3 ... Normal
- 4byte dword ... Colour
- 4byte float ... Texture U
- 4byte float ... Texture V

oki this is pretty standard FVF format right?
well within DirectX's getfacecount(pointer) ... how am i to calculate the total number of face? i've looked for the past hour and can't find ANYTHING about it anywhere

the closest i can come is that in Deep(Exploration when i load up a FVF->DirectX the Vertex:Face are 2:1(-2) ratio

... in otherwords if it has 100 Vertex, there have been so far atleast 198 faces - however i'm sure this can't be true with everything.
i wish there was better help, i know the DB help was less desciptive than that above ... however its layout made it far simpler to understand.

but i REALLY need to know howto calculate the faces from the vertex here because i need the face count from models and unless i downgrade to p3.1 currently i don't see any viable ways to achieve this.
Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?

Login to post a reply

Server time is: 2026-07-11 02:35:34
Your offset time is: 2026-07-11 02:35:34