Hvad er SMD-filformatet?
En .smd-fil er en Studiomdl Data-fil - et almindeligt ASCII-tekstformat, der bruges som den mellemliggende repræsentation for 3D-modeller og animationer i Valves GoldSrc- og Source-motorer (Half-Life, Counter-Strike, Team Fortress 2, Portal). Formatet har været i brug siden udviklingen af Half-Life i 1998 og er fortsat centralt for modding af Source-motoren.
En .smd indlæses aldrig direkte af motoren. Det er et mellemled i en to-trins kompileringspipeline: et .qc-script refererer til en eller flere .smd-filer (ét referencenet, én pr. animationssekvens), og studiomdl.exe kompilerer dem til den binære .mdl-fil, som motoren indlæser.
Filen begynder med den bogstavelige linje version 1 og indeholder op til fire navngivne sektioner:
nodes- hierarkiet af knogler/ledskeleton- knogletransformationer pr. frame (keyframe-animationsdata)triangles- netgeometri: materialenavn efterfulgt af vertex-tripletter, der angiver knogleindeks, XYZ-position, overfladenormal og UV-koordinatervertexanimation- valgfri flex/morph-måldata til ansigtsanimation
Da det er almindelig ASCII, kan .smd-filer redigeres i enhver teksteditor og spores i versionsstyring. Blender Source Tools-tilføjelsen eksporterer .smd direkte fra Blender, hvilket er standardarbejdsgangen for modding. DMX-formatet foretrækkes i moderne Source 2-værktøjer, men .smd er fortsat bredt understøttet.
Sikkerhed og tryghed
RISIKO: LOWSMD er almindelig ASCII-tekst uden eksekverbar kode. Sikker at åbne i enhver teksteditor. SMD-filer fra upålidelige kilder kan referere til ophavsretligt beskyttede spilaktiver - en juridisk bekymring snarere end en sikkerhedsrisiko.
Formatdetaljer
kort fortalt- Sega Genesis / Mega Drive ROM-billede (Super Magic Drive-format) - Sammenflettet ROM-dumpformat produceret af Super Magic Drive-kassettekopimaskinen; adskiller sig fra det almindelige binære .bin/.gen-format ved at have en 512-byte header og byte-swappede 16 KB-blokke. Åbnes af Kega Fusion, Genesis Plus GX, RetroArch-emulatorer.
- SubStation Alpha Undertekst-script - Nogle ældre SubStation Alpha-undertekstfiler har angiveligt brugt .smd; standardudvidelsen for SubStation Alpha er .ssa / .ass.
Programmer der åbner SMD-filer
Tekniske detaljer
dyb specifikation| Format | Almindelig ASCII-tekst (7-bit; indeholder ingen binære data) |
| Filidentifikator | Første linje skal være den bogstavelige tekst „version 1“ |
| Rolle | Kun mellemliggende format - indlæses aldrig direkte af motoren |
| Kompileringsværktøj | studiomdl.exe (Source SDK / spilspecifik SDK) kompilerer .smd plus et .qc-script til en binær .mdl-fil |
| Sektioner | nodes (knoglehierarki), skeleton (keyframe-transformationer), triangles (netgeometri), vertexanimation (morph-mål, valgfri) |
| Vertex-data | Hver vertex-linje indeholder: knogleindeks, XYZ-verdensposition, overfladenormal XYZ og UV-teksturkoordinater |
| Animationsdata | Knogletransformationer gemt pr. frame i skeleton-sektionen; én .smd-fil pr. animationssekvens |
| Materialereference | Hver trekantsgruppe i triangles-sektionen starter med en material- eller teksturnavn-streng |
| MIME-type | text/plain |
| Typisk filstørrelse | 10 KB - 10 MB; komplekse high-poly animerede modeller i den høje ende |
| Motorunderstøttelse | GoldSrc (Half-Life-serien), Source (HL2, CS:S, TF2, Portal), Source 2-værktøjer via Blender Source Tools |
| Forfatterværktøj | Blender med Blender Source Tools-tilføjelse; Crowbar-værktøj til dekompilering og rekompilering af .mdl til .smd |
| Redigerbarhed | Almindeligt tekstformat: læsbart og redigerbart i enhver teksteditor, diff-bart og sporbart i versionsstyringssystemer |
| Udgivet | 1998 (GoldSrc engine, Half-Life development) |
| Seneste version | SMD version 1 (unchanged; version 3 adds extra UV layers in Source 2 variants) |
| Åben standard | Ja · royaltyfri |
| Specifikation | developer.valvesoftware.com |
SMD-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om SMD-filer.