Co to jest format pliku MESH?
.mesh to format pliku powiązany z binarnym kontenerem SDKMESH z pakietu DirectX SDK. Każdy plik .mesh zawiera model geometryczny 3D używany do renderowania obiektów w przykładowych aplikacjach DirectX, samouczkach i grach obsługujących technologię DirectX.
SDKMESH przechowuje bufory wierzchołków (vertex), bufory indeksów, podzbiory siatek, hierarchię ramek (kości) dla animacji szkieletowej oraz definicje materiałów zawierające ścieżki do plików tekstur. Format występuje w dwóch wersjach: v1 wykorzystuje tradycyjne materiały diffuse/specular (przykłady z ery DirectX 9, 10 i 11), natomiast v2 dodaje obsługę materiałów PBR (Physically Based Rendering) dla DirectX 11 i 12.
DirectX to technologia firmy Microsoft do tworzenia aplikacji na systemy Windows i konsole Xbox. Jej głównym celem jest renderowanie grafiki w grach i oprogramowaniu. DirectX 12 jest obecną wersją. SDKMESH został wprowadzony około 2008 roku jako następca starszego formatu .x dla kodu przykładowego SDK i pozostaje w użyciu w samouczkach DirectX 12.
SDKMESH jest narzędziem deweloperskim i demonstracyjnym - nie jest przeznaczony do dystrybucji gotowych gier. Nowoczesne projekty używają glTF lub FBX do wymiany zasobów; narzędzie ContentExporter konwertuje FBX na SDKMESH na potrzeby przykładów SDK. Należy zauważyć, że rozszerzenie .mesh jest również używane przez niepowiązane silniki, takie jak Ogre3D i Godot, o całkowicie innych strukturach binarnych.
Bezpieczeństwo
RYZYKO: LOWPliki SDKMESH to czyste dane 3D bez zawartości wykonywalnej. Ryzyko jest bardzo niskie. Ponieważ rozszerzenie (.mesh) jest współdzielone przez wiele różnych programów, przed otwarciem nieznanych plików .mesh w narzędziach silników gier należy zweryfikować ich źródło.
Szczegóły formatu
w pigułce- Plik siatki Ogre3D - Silnik gry Ogre3D używa .mesh dla własnego binarnego formatu siatki 3D (bajty magiczne: nagłówek „MESH” lub nagłówek serializatora Ogre); niepowiązany z DirectX SDK.
- Zasób siatki Godot (starszy) - Starsze wersje Godot Engine używały .mesh dla binarnych zasobów siatek; obecny Godot używa .res/.tres.
- Ogólna siatka 3D (wiele narzędzi) - Wiele narzędzi 3D (niestandardowe eksportery, silniki gier) używa .mesh jako ogólnego rozszerzenia dla binarnych lub XML-owych danych siatek bez wspólnego standardu.
Programy otwierające pliki MESH
Szczegóły techniczne
specyfikacja| Pełna nazwa formatu | SDKMESH - binarny format siatki przykładowej DirectX SDK |
| Pole wersji w nagłówku | Pole Version typu `uint32_t`: `101` = SDKMESH v1 (tradycyjne materiały); `200` = SDKMESH v2 (materiały PBR) |
| Kolejność bajtów | Little-endian (flaga IsBigEndian obecna w nagłówku dla jawnej deklaracji) |
| Struktura kontenera | Dwuczęściowy układ binarny: (1) sekcja danych statycznych - nagłówek, deskryptory buforów wierzchołków/indeksów, rekordy siatek, materiały; (2) sekcja danych bufora - surowe tablice wierzchołków i indeksów |
| Typy danych indeksów | 16-bitowe lub 32-bitowe liczby całkowite bez znaku (zgodnie z deklaracją bufora indeksów) |
| Model materiałów v1 | Tradycyjne diffuse/specular - używane w przykładach SDK DirectX 9, 10 i 11 |
| Model materiałów v2 | PBR (Physically Based Rendering) - mapy albedo, chropowatości (roughness), metaliczności; używane w przykładach DirectX 11/12 Tool Kit |
| Obsługa hierarchii kości | Rekordy ramek z relacjami rodzic/dziecko dla animacji szkieletowej |
| Typowy rozmiar | 50 KB - 50 MB w zależności od liczby wielokątów i odniesień do tekstur |
| Powiązany system operacyjny | Windows, Xbox (konsole oparte na DirectX) |
| Narzędzie tworzące | `ContentExporter` (microsoft/content-exporter na GitHub) - konwertuje FBX na SDKMESH |
| Interfejsy API ładowania | Loader DXUT `CDXUTSDKMesh`; klasa `Model` w DirectX Tool Kit (`DirectXTK`) |
| Kolizja rozszerzeń | Rozszerzenie `.mesh` jest również używane przez Ogre3D, Godot i inne silniki o całkowicie innych formatach binarnych |
| Wydano | circa 2008 (Direct3D 10 SDK samples; replacement for legacy .x format) |
| Najnowsza wersja | SDKMESH v2 (introduced with DirectX Tool Kit DX11/DX12 for PBR materials) |
| Specyfikacja | github.com |
Konwersje MESH
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki MESH.