Vad är filformatet B3D?
En .b3d-fil är ett binärt chunk-baserat 3D-modellformat utvecklat av Blitz Research Ltd för Blitz3D-spel-SDK (släppt 2001). Den lagrar en komplett scengraf i en enda fil: mesh-geometri, UV-koordinater, material- och texturreferenser, skelettbensvikter och sekvenser för keyframe-animationer.
Formatet använder en hierarkisk chunk-struktur. Varje chunk inleds med en 4-teckens ASCII-tagg och en 4-byte little-endian datalängd. Den obligatoriska rot-chunken BB3D omsluter TEXS (lista över texturfilnamn), BRUS (brush- och materialdefinitioner) och NODE-chunks. NODE-chunks är rekursiva och bildar ett förälder-barn-scenträd. En MESH-nod innehåller VRTX (vertex-buffer med positioner, normaler, UV:er och vertex-färger) och TRIS (triangelindex-arrayer med materialtilldelningar). KEYS- och ANIM-chunks definierar namngivna animationssekvenser med keyframes för position, rotation och skala per bildruta.
Blitz Research släppte Blitz3D som öppen källkod 2013. Formatet fick ett framträdande andra liv som det primära 3D-modellformatet för Luanti (tidigare Minetest), den voxel-spelmotor med öppen källkod, vilket säkerställer aktiva community-verktyg långt efter det ursprungliga SDK:et. 3D-motorn Irrlicht laddar också .b3d-filer nativt. Blender kan importera .b3d via ett community-insticksprogram.
För moderna produktionsflöden föredras glTF eller FBX; .b3d förblir dock flitigt använt inom Luanti-modding-communities.
Säkerhet & trygghet
RISK: LOWBinär 3D-modellfil; ingen exekverbar kod. Inga kända CVE:er för B3D-tolkar. Normal försiktighet vid öppning av filer från okända källor i spelmotorer.
Formatdetaljer
i ett nötskal- BodyPaint 3D (MAXON) - MAXONs BodyPaint 3D-målningsprogram har associerats med .b3d av vissa databaser, men dess faktiska nativa format är .c4d; .b3d är inte ett dokumenterat BodyPaint-format.
Program som öppnar B3D-filer
Tekniska detaljer
djup specifikation| Magic bytes | 42 42 33 44 («BB3D» ASCII) vid offset 0 - obligatorisk rot-chunk-tagg |
| Byteordning | Little-endian genomgående |
| Chunk-struktur | 4-teckens ASCII-tagg + 4-byte little-endian datalängd föregår varje chunk-payload; chunks kan nästlas till godtyckligt djup |
| Rot-chunk | `BB3D` - innehåller ett versionsheltal (major×100 + minor) och omsluter alla innehålls-chunks |
| Textur-chunk | `TEXS` - ordnad lista över sökvägar till texturfiler som refereras av materialindex |
| Material-chunk | `BRUS` - brush-definitioner med färg, glans, blandningsläge och texturindexreferenser |
| Geometri-chunks | `MESH` → `VRTX` (vertex-positioner, normaler, UV:er, vertex-färger) + `TRIS` (triangelindex-arrayer med materialtilldelning per triangel) |
| Animations-chunks | `BONE` (vertex-vikter per ben), `KEYS` (keyframes för position/rotation/skala per nod), `ANIM` (namngiven sekvens med start/slut-bildruteintervall) |
| Scengraf | `NODE`-chunks är rekursiva och stöder hierarkiska pivot- och förälder-barn-transformationsrelationer |
| Typisk storlek | 10 KB - 20 MB (från enkel statisk rekvisita till komplex riggad karaktär med animationssekvenser) |
| Komprimering | Ingen - all data lagras som okomprimerad binärdata |
| Primär aktiv användning | Luanti (tidigare Minetest) voxel-motor med öppen källkod - `.b3d` är det rekommenderade formatet för entitets- och NPC-modeller i Luanti-mods |
| Motorstöd | Irrlicht 3D-motor (nativt); Blitz3D öppen källkod (ursprunglig värd); Blender (community-insticksprogram för import) |
| Historia som öppen källkod | Blitz3D släpptes som öppen källkod på GitHub (blitz-research/blitz3d) av Mark Sibly 2013; formatspecifikationen dokumenterad av Luanti-communityt |
| Släppt | 2001 (Blitz3D 1.0) |
| Senaste version | No versioning after Blitz3D open-sourced; format spec frozen |
| Öppen standard | Ja · royaltyfri |
| Specifikation | docs.luanti.org |
B3D-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om B3D-filer.