Wat is het SMD-bestandsformaat?
Een .smd-bestand is een Studiomdl Data-bestand - een plat ASCII-tekstformaat dat wordt gebruikt als de tussenliggende representatie voor 3D-modellen en animaties in Valve's GoldSrc- en Source-engines (Half-Life, Counter-Strike, Team Fortress 2, Portal). Het formaat is in gebruik sinds de ontwikkeling van Half-Life in 1998 en blijft centraal staan bij het modden van de Source-engine.
Een .smd wordt nooit rechtstreeks door de engine geladen. Het is een tussenproduct in een compilatieproces van twee stappen: een .qc-script verwijst naar een of meer .smd-bestanden (één referentie-mesh, één per animatiereeks), en studiomdl.exe compileert deze naar het binaire .mdl-bestand dat de engine laadt.
Het bestand begint met de letterlijke regel version 1 en bevat maximaal vier benoemde secties:
nodes- de bot/gewricht-hiërarchieskeleton- bot-transformaties per frame (keyframe-animatiegegevens)triangles- mesh-geometrie: materiaalnaam gevolgd door vertex-triplets met bot-index, XYZ-positie, oppervlaktenormaal en UV-coördinatenvertexanimation- optionele flex/morph target-gegevens voor gezichtsanimatie
Omdat het platte ASCII is, kunnen .smd-bestanden in elke tekstverwerker worden bewerkt en worden bijgehouden in versiebeheer. De Blender Source Tools-addon exporteert .smd rechtstreeks vanuit Blender, wat de standaard modding-workflow is. Het DMX-formaat heeft de voorkeur in moderne Source 2-tools, maar .smd blijft breed ondersteund.
Beveiliging & veiligheid
RISICO: LOWSMD is platte ASCII-tekst zonder uitvoerbare code. Veilig te openen in elke tekstverwerker. SMD-bestanden van niet-vertrouwde bronnen kunnen verwijzen naar auteursrechtelijk beschermde spelonderdelen - eerder een juridisch punt dan een beveiligingsrisico.
Formaatdetails
in een notendop- Sega Genesis / Mega Drive ROM Image (Super Magic Drive-formaat) - Interleaved ROM-dumpformaat geproduceerd door de Super Magic Drive-cartridgekopieerder; verschilt van het gewone binaire .bin/.gen-formaat door een header van 512 bytes en byte-swapped blokken van 16 KB. Geopend door Kega Fusion, Genesis Plus GX, RetroArch emulators.
- SubStation Alpha Ondertitelscript - Sommige oudere SubStation Alpha-ondertitelbestanden gebruikten naar verluidt .smd; de standaardextensie voor SubStation Alpha is .ssa / .ass.
Programma's die SMD-bestanden openen
Technische details
diepe specificaties| Formaat | Platte ASCII-tekst (7-bit; bevat geen binaire gegevens) |
| Bestandsidentificatie | De eerste regel moet de letterlijke tekst „version 1” zijn |
| Rol | Alleen tussenformaat - wordt nooit rechtstreeks door de engine geladen |
| Compilatie-tool | studiomdl.exe (Source SDK / spelspecifieke SDK) compileert .smd plus een .qc-script naar een binair .mdl-bestand |
| Secties | nodes (bot-hiërarchie), skeleton (keyframe-transformaties), triangles (mesh-geometrie), vertexanimation (morph-targets, optioneel) |
| Vertex-gegevens | Elke vertex-regel bevat: bot-index, XYZ-wereldpositie, oppervlaktenormaal XYZ en UV-textuurcoördinaten |
| Animatiegegevens | Bot-transformaties opgeslagen per frame in de skeleton-sectie; één .smd-bestand per animatiereeks |
| Materiaalreferentie | Elke driehoeksgroep in de triangles-sectie begint met een materiaal- of textuurnaamstring |
| MIME-type | text/plain |
| Typische bestandsgrootte | 10 KB - 10 MB; complexe high-poly geanimeerde modellen aan de hoge kant |
| Engine-ondersteuning | GoldSrc (Half-Life-serie), Source (HL2, CS:S, TF2, Portal), Source 2-tools via Blender Source Tools |
| Auteur-tool | Blender met Blender Source Tools-addon; Crowbar-tool voor het decompileren en hercompileren van .mdl naar .smd |
| Bewerkbaarheid | Plat tekstformaat: leesbaar en bewerkbaar in elke tekstverwerker, diffbaar en traceerbaar in versiebeheersystemen |
| Uitgebracht | 1998 (GoldSrc engine, Half-Life development) |
| Laatste versie | SMD version 1 (unchanged; version 3 adds extra UV layers in Source 2 variants) |
| Open standaard | Ja · royaltyvrij |
| Specificatie | developer.valvesoftware.com |
SMD conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over SMD-bestanden.