Co to jest format pliku B3D?
Plik .b3d to binarny, oparty na blokach (chunks) format modeli 3D opracowany przez Blitz Research Ltd dla pakietu SDK gier Blitz3D (wydanego w 2001 roku). Przechowuje on kompletny graf sceny w jednym pliku: geometrię siatki, współrzędne UV, odniesienia do materiałów i tekstur, wagi kości szkieletowych oraz sekwencje animacji klatek kluczowych.
Format wykorzystuje hierarchiczną strukturę bloków. Każdy blok zaczyna się od 4-znakowego znacznika ASCII i 4-bajtowej długości danych w formacie little-endian. Obowiązkowy blok główny BB3D zawiera bloki TEXS (lista nazw plików tekstur), BRUS (definicje pędzli i materiałów) oraz NODE. Bloki NODE są rekurencyjne, tworząc drzewo sceny typu rodzic-dziecko. Węzeł MESH zawiera VRTX (bufor wierzchołków z pozycjami, normalnymi, UV i kolorami wierzchołków) oraz TRIS (tablice indeksów trójkątów z przypisanymi materiałami). Bloki KEYS i ANIM definiują nazwane sekwencje animacji z klatkami kluczowymi pozycji, obrotu i skali dla każdej klatki.
Firma Blitz Research udostępniła Blitz3D jako open-source w 2013 roku. Format zyskał „drugie życie” jako podstawowy format modeli 3D dla Luanti (dawniej Minetest), otwartoźródłowego silnika gier voxelowych, co zapewniło aktywne wsparcie narzędzi społecznościowych długo po wygaśnięciu oryginalnego SDK. Silnik Irrlicht 3D również natywnie wczytuje pliki .b3d. Blender może importować .b3d za pomocą wtyczki społecznościowej.
W nowoczesnych procesach produkcyjnych preferowane są formaty glTF lub FBX; .b3d pozostaje jednak szeroko stosowany w społecznościach moderskich Luanti.
Bezpieczeństwo
RYZYKO: LOWBinarny plik modelu 3D; brak kodu wykonywalnego. Brak znanych podatności CVE dla parserów B3D. Należy zachować standardową ostrożność przy otwieraniu plików z nieznanych źródeł w silnikach gier.
Szczegóły formatu
w pigułce- BodyPaint 3D (MAXON) - Aplikacja BodyPaint 3D firmy MAXON była kojarzona z rozszerzeniem .b3d przez niektóre bazy danych, ale jej natywnym formatem jest .c4d; .b3d nie jest udokumentowanym formatem BodyPaint.
Programy otwierające pliki B3D
Szczegóły techniczne
specyfikacja| Magiczne bajty | 42 42 33 44 („BB3D” w ASCII) na offsecie 0 - obowiązkowy znacznik bloku głównego |
| Kolejność bajtów | Little-endian w całym pliku |
| Struktura bloków | 4-znakowy znacznik ASCII + 4-bajtowa długość danych little-endian poprzedza każdy blok; bloki mogą być zagnieżdżane na dowolną głębokość |
| Blok główny | `BB3D` - zawiera liczbę całkowitą wersji (major×100 + minor) i obejmuje wszystkie bloki zawartości |
| Blok tekstur | `TEXS` - uporządkowana lista ścieżek do plików tekstur, do których odwołują się indeksy materiałów |
| Blok materiałów | `BRUS` - definicje pędzli z kolorem, połyskiem, trybem mieszania i odniesieniami do indeksów tekstur |
| Bloki geometrii | `MESH` → `VRTX` (pozycje wierzchołków, normalne, UV, kolory wierzchołków) + `TRIS` (tablice indeksów trójkątów z przypisaniem materiału do każdego trójkąta) |
| Bloki animacji | `BONE` (wagi wierzchołków dla kości), `KEYS` (klatki kluczowe pozycji/obrotu/skali dla węzła), `ANIM` (nazwana sekwencja z zakresem klatek start/koniec) |
| Graf sceny | Bloki `NODE` są rekurencyjne, wspierając hierarchiczne punkty obrotu i relacje transformacji rodzic-dziecko |
| Typowy rozmiar | 10 KB - 20 MB (od prostego statycznego rekwizytu do złożonej postaci z riggingiem i sekwencjami animacji) |
| Kompresja | Brak - wszystkie dane przechowywane jako nieskompresowane dane binarne |
| Główne aktywne zastosowanie | Otwartoźródłowy silnik voxelowy Luanti (dawniej Minetest) - `.b3d` jest zalecanym formatem dla modeli jednostek i NPC w modach Luanti |
| Wsparcie silników | Silnik Irrlicht 3D (natywne); Blitz3D open-source (oryginalny host); Blender (społecznościowa wtyczka importu) |
| Historia open-source | Blitz3D udostępniony na GitHubie (blitz-research/blitz3d) przez Marka Sibly'ego w 2013 roku; specyfikacja formatu udokumentowana przez społeczność Luanti |
| Wydano | 2001 (Blitz3D 1.0) |
| Najnowsza wersja | No versioning after Blitz3D open-sourced; format spec frozen |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | docs.luanti.org |
Konwersje B3D
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki B3D.