Hva er MESH-filformatet?
.mesh er et filformat assosiert med DirectX SDK sin SDKMESH binære beholder. Hver .mesh-fil inneholder en 3D-geometrisk modell som brukes til å rendre objekter i DirectX-eksempelapplikasjoner, veiledninger og spill som støtter DirectX-teknologi.
SDKMESH lagrer verteksbuffere, indeksbuffere, mesh-delsett, et ramme- (bein) hierarki for skjelettanimasjon, og materialdefinisjoner som inkluderer filbaner for teksturer. Formatet finnes i to versjoner: v1 bruker tradisjonelle diffuse/spekulære materialer (DirectX 9, 10 og 11-æraen), mens v2 legger til støtte for PBR (Physically Based Rendering) materialer for DirectX 11 og 12.
DirectX er Microsoft sin teknologi for å utvikle applikasjoner på Windows-systemer og Xbox-spillkonsoller. Hovedformålet er rendring av grafikk i spill og programvare. DirectX 12 er den nåværende versjonen. SDKMESH ble introdusert rundt 2008 som en etterfølger til det eldre .x-formatet for SDK-eksempelkode, og er fortsatt i bruk i DirectX 12-veiledninger.
SDKMESH er et verktøy for utviklere og eksempler - ikke beregnet for utsending av ferdige spill. Moderne prosjekter bruker glTF eller FBX for utveksling av ressurser; verktøyet ContentExporter konverterer FBX til SDKMESH for bruk i SDK-eksempler. Merk at filendelsen .mesh også brukes av urelaterte motorer som Ogre3D og Godot med helt andre binære strukturer.
Sikkerhet og trygghet
RISIKO: LOWSDKMESH-filer er rene 3D-data uten eksekverbart innhold. Risikoen er svært lav. Som med alle filer der filendelsen (.mesh) deles av mange forskjellige programmer, bør du verifisere kilden før du åpner ukjente .mesh-filer i spillmotorverktøy.
Formatdetaljer
i et nøtteskall- Ogre3D Mesh-fil - Spillmotoren Ogre3D bruker .mesh for sitt eget binære 3D-mesh-format (magic bytes: header «MESH» eller Ogre serializer-header); urelatert til DirectX SDK.
- Godot Mesh-ressurs (eldre) - Eldre versjoner av Godot Engine brukte .mesh for binære mesh-ressurser; nåværende Godot bruker .res/.tres.
- Generisk 3D-mesh (flere verktøy) - Mange 3D-verktøy (egne eksportere, spillmotorer) bruker .mesh som en generisk filendelse for binære eller XML-mesh-data uten en felles standard.
Programmer som åpner MESH-filer
Tekniske detaljer
dyp spesifikasjon| Fullt formatnavn | SDKMESH - DirectX SDK Sample Mesh binært format |
| Header-versjonsfelt | `uint32_t` versjonsfelt: `101` = SDKMESH v1 (eldre materialer); `200` = SDKMESH v2 (PBR-materialer) |
| Byterekkefølge | Little-endian (IsBigEndian-flagg finnes i headeren for eksplisitt deklarasjon) |
| Beholderstruktur | Binært oppsett i to deler: (1) statisk dataseksjon - header, verteks/indeksbuffer-deskriptorer, mesh-oppføringer, materialer; (2) bufferdataseksjon - rå verteks- og indeksmatriser |
| Indeksdatatyper | 16-bit eller 32-bit usignerte heltall (per indeksbuffer-deklarasjon) |
| v1 materialmodell | Tradisjonell diffus/spekulær - brukt i DirectX 9, 10 og 11 SDK-eksempler |
| v2 materialmodell | PBR (Physically Based Rendering) - albedo, ruhet, metalliske kart; brukt i DirectX 11/12 Tool Kit-eksempler |
| Støtte for beinhierarki | Rammeoppføringer med foreldre/barn-relasjoner for skjelettanimasjon |
| Typisk størrelse | 50 KB - 50 MB avhengig av polygonantall og teksturreferanser |
| Assosiert OS | Windows, Xbox (DirectX-baserte konsoller) |
| Opprettingsverktøy | `ContentExporter` (microsoft/content-exporter på GitHub) - konverterer FBX til SDKMESH |
| Lastings-API-er | DXUT `CDXUTSDKMesh`-laster; DirectX Tool Kit (`DirectXTK`) `Model`-klasse |
| Filendelseskollisjon | `.mesh` brukes også av Ogre3D, Godot og andre motorer med helt forskjellige binærformater |
| Utgitt | circa 2008 (Direct3D 10 SDK samples; replacement for legacy .x format) |
| Siste versjon | SDKMESH v2 (introduced with DirectX Tool Kit DX11/DX12 for PBR materials) |
| Spesifikasjon | github.com |
MESH-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om MESH-filer.