Hvad er NIF-filformatet?
En .nif-fil er en proprietær binær 3D-scenefil, der bruges af NetImmerse- og Gamebryo-motorerne, bedst kendt som det primære 3D-aktivformat for Bethesda Game Studios-titler fra *The Elder Scrolls III: Morrowind* (2002) til *Starfield* (2023).
Filen begynder med en læsbar ASCII-header-streng: versioner op til 10.0.1.0 starter med NetImmerse File Format, Version X.X.X.X, mens versioner 10.1.0.0 og højere bruger Gamebryo File Format, Version X.X.X.X. Efter headeren er resten binær, organiseret som en typet blokliste, der danner en scenegraf. Blokke repræsenterer mesh-geometri (NiTriShape), skeletnoder (NiNode), Havok-kollisionslegemer (bhkRigidBody), shader-egenskaber (BSLightingShaderProperty) og morph-targets, alle forbundet via heltalsindekser.
Teksturer gemmes separat som .dds-filer; skeletanimationer findes ofte i ledsagende .kf-keyframe-filer. Spilaktiver er typisk pakket i .bsa- eller .ba2-arkiver til distribution.
Slutbrugere støder primært på .nif-filer i forbindelse med modding af Bethesda-spil. Det fællesskabsdrevne niftools/nifxml-projekt har reverse-engineered formatet og driver værktøjer som NifSkope og Blender Niftools Add-on. Den mest udbredte version er 20.2.0.7, som bruges af Skyrim Special Edition og Fallout 4; Starfield introducerede en opdateret variant med nye bloktyper.
Sikkerhed og tryghed
RISIKO: LOWNIF-filer er statiske 3D-aktivdata og kan ikke eksekvere kode. De er sikre at åbne i NifSkope eller Blender. Den praktiske risiko ved anskaffelse af NIF-filer er kilden: mods distribueret som arkiver på sider som Nexus Mods er generelt kontrolleret, men tilfældige downloads kan indeholde urelateret malware i samme arkiv. Hent altid mods fra anerkendte kilder (Nexus Mods, Bethesda.net) og scan arkiver før udpakning.
Formatdetaljer
kort fortaltProgrammer der åbner NIF-filer
Tekniske detaljer
dyb specifikation| Header-format | ASCII-streng 'NetImmerse File Format, Version X.X.X.X' (versioner ≤10.0.1.0) eller 'Gamebryo File Format, Version X.X.X.X' (≥10.1.0.0), afsluttet med 0x0A; resten af filen er binær |
| Byte-rækkefølge | Little-endian på standard PC-builds; visse ældre konsol-builds bruger big-endian |
| Kropsstruktur | Typet blokliste, der danner en scenegraf; hver blok er et navngivet typet objekt forbundet til andre via heltalsindeks-referencer |
| Vigtige bloktyper | NiNode (skelet/transformation), NiTriShape (mesh-geometri), BSLightingShaderProperty (shader), bhkRigidBody (Havok-kollision) |
| Versionsområde | v3.03 (tidlig NetImmerse, ~1997) til v20.2.0.7 (Skyrim SE / Fallout 4); Starfield bruger en udvidet opdateret variant |
| Teksturlagring | Teksturer er ikke indlejret; der refereres til eksterne .dds-filer via sti |
| Animationslagring | Skeletanimationer gemmes i ledsagende .kf-keyframe-filer, separat fra mesh-filen .nif |
| Kollisionssystem | Havok-fysik via bhk*-bloktyper (bhkRigidBody, bhkConvexVerticesShape, bhkMoppBvTreeShape, osv.) |
| Typisk filstørrelse | 10 KB-50 MB (simple genstande ~10-200 KB; komplekse karakter-meshes 1-10 MB; fulde indendørsscener op til 50 MB) |
| Komprimering | Ingen på filniveau; .bsa / .ba2 spilarkiver kan anvende LZ4-komprimering, når de pakker .nif-filer |
| MIME-type | application/octet-stream (ingen registreret MIME-type for NIF-formatet) |
| Formatspecifikation | Fællesskabsdrevet niftools/nifxml XML-skema på github.com/niftools/nifxml; ingen officiel offentlig specifikation fra Bethesda |
| Primære tilknyttede titler | Morrowind, Oblivion, Fallout 3/NV, Skyrim LE/SE, Fallout 4, Starfield (alle Bethesda Game Studios) |
| Udgivet | 1997 (NetImmerse engine); Gamebryo rebranding 2003; format used through 2023 in Bethesda Starfield |
| Seneste version | NIF version 20.2.0.7 (Bethesda Skyrim Special Edition / Fallout 4 era); Starfield uses an updated variant |
| Specifikation | github.com |
NIF-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om NIF-filer.