|
GDF 26.1a
Game Development Framework - https://gdf.acits.nl
|
Maakt een 3D-model (.mdl) uit eenvoudige basisvormen, zonder Blender. Meer...
Public Typen | |
| enum | Quality { Low , Normal , High } |
| Hoe fijn ronde vormen worden opgebouwd. Meer... | |
| enum | OriginMode { AsGiven , Bottom , Center } |
| Waar het middelpunt (draaipunt) van het model komt te liggen. Meer... | |
Public Members | |
| MdlGenerator (string name) | |
| MdlMaterial | AddMaterial (string name, Color color) |
| Voeg een materiaal met een kleur toe. | |
| MdlMaterial | AddTextureMaterial (string name, string texture) |
| Voeg een materiaal met een afbeelding uit Data/Textures toe, bijvoorbeeld AddTextureMaterial("steen", "stones1.jpg"). | |
| MdlMaterial | AddMaterialFile (string name, string file) |
| Gebruik een bestaand Urho-materiaal, bijvoorbeeld AddMaterialFile("water", "Materials/Water.xml"). | |
| MdlVariant | AddVariant (string name) |
| Voeg een variant toe: hetzelfde model met andere kleuren. | |
| MdlShape | AddShape (MdlShape.Type type, Vector3 position, Vector3 size, string material) |
| Voeg een vorm toe. Materiaal: de naam van een materiaal (zie AddMaterial). | |
| MdlShape | AddShape (MdlShape.Type type, Vector3 position, Vector3 size, Color color) |
| Voeg een vorm met een kleur toe (er wordt vanzelf een materiaal voor gemaakt). | |
| MdlShape | AddBox (Vector3 position, Vector3 size, Color color) |
| Blok. | |
| MdlShape | AddBox (Vector3 position, Vector3 size, string material) |
| Blok. | |
| MdlShape | AddSphere (Vector3 position, Vector3 size, Color color) |
| Bol (met lengte- en breedtegraden). | |
| MdlShape | AddSphere (Vector3 position, Vector3 size, string material) |
| Bol (met lengte- en breedtegraden). | |
| MdlShape | AddIcoSphere (Vector3 position, Vector3 size, Color color) |
| Bol uit gelijke driehoeken; mooi voor stenen en boomkruinen (samen met SetJitter). | |
| MdlShape | AddIcoSphere (Vector3 position, Vector3 size, string material) |
| Bol uit gelijke driehoeken; mooi voor stenen en boomkruinen (samen met SetJitter). | |
| MdlShape | AddHalfSphere (Vector3 position, Vector3 size, Color color) |
| Halve bol (koepel), platte kant onder. | |
| MdlShape | AddHalfSphere (Vector3 position, Vector3 size, string material) |
| Halve bol (koepel), platte kant onder. | |
| MdlShape | AddCylinder (Vector3 position, Vector3 size, Color color) |
| Cilinder (staand). Met SetTop smaller maken aan de bovenkant. | |
| MdlShape | AddCylinder (Vector3 position, Vector3 size, string material) |
| Cilinder (staand). Met SetTop smaller maken aan de bovenkant. | |
| MdlShape | AddCone (Vector3 position, Vector3 size, Color color) |
| Kegel, punt naar boven. | |
| MdlShape | AddCone (Vector3 position, Vector3 size, string material) |
| Kegel, punt naar boven. | |
| MdlShape | AddPyramid (Vector3 position, Vector3 size, Color color) |
| Piramide met een vierkante grondvlak, punt naar boven. | |
| MdlShape | AddPyramid (Vector3 position, Vector3 size, string material) |
| Piramide met een vierkante grondvlak, punt naar boven. | |
| MdlShape | AddWedge (Vector3 position, Vector3 size, Color color) |
| Wig (helling): laag aan de voorkant (-Z), hoog aan de achterkant (+Z). Ook handig als dak. | |
| MdlShape | AddWedge (Vector3 position, Vector3 size, string material) |
| Wig (helling): laag aan de voorkant (-Z), hoog aan de achterkant (+Z). Ook handig als dak. | |
| MdlShape | AddPrism (Vector3 position, Vector3 size, Color color) |
| Driehoekig prisma: punt naar voren (+Z), brede kant achter (-Z). Mooi voor vleugels en vinnen. | |
| MdlShape | AddPrism (Vector3 position, Vector3 size, string material) |
| Driehoekig prisma: punt naar voren (+Z), brede kant achter (-Z). Mooi voor vleugels en vinnen. | |
| MdlShape | AddCapsule (Vector3 position, Vector3 size, Color color) |
| Capsule (staande pil); de ronde uiteinden worden niet uitgerekt. | |
| MdlShape | AddCapsule (Vector3 position, Vector3 size, string material) |
| Capsule (staande pil); de ronde uiteinden worden niet uitgerekt. | |
| MdlShape | AddTorus (Vector3 position, Vector3 size, Color color) |
| Donut, plat liggend. Size.X en Size.Z zijn de buitenmaat; de dikte van de ring is SetThickness × Size. | |
| MdlShape | AddTorus (Vector3 position, Vector3 size, string material) |
| Donut, plat liggend. Size.X en Size.Z zijn de buitenmaat; de dikte van de ring is SetThickness × Size. | |
| MdlShape | AddPlane (Vector3 position, Vector3 size, Color color) |
| Plat vlak (liggend, zichtbaar van boven). Met SetTwoSided van beide kanten zichtbaar, bijvoorbeeld voor bladeren. | |
| MdlShape | AddPlane (Vector3 position, Vector3 size, string material) |
| Plat vlak (liggend, zichtbaar van boven). Met SetTwoSided van beide kanten zichtbaar, bijvoorbeeld voor bladeren. | |
| MdlShape | AddTerrain (Vector3 position, Vector3 size, string heightmap, string material) |
| Een landschap uit een hoogtekaart (PNG: zwart is laag, wit is hoog; de bovenkant van de afbeelding is +Z). | |
| int | Save (string dataFolder="Data") |
| Schrijf het model weg: dataFolder/Models/Naam.mdl, dataFolder/Models/Naam.txt (materialenlijst) en dataFolder/Materials/Naam_*.xml. | |
| MdlMesh | Build () |
| Bouw de driehoeken van het model. | |
Static Public Members | |
| static MdlGenerator | GenerateFromFile (string shapesFile) |
| Lees een .shapes-bestand en schrijf het model weg in de map Data waar het bestand in staat (Data/Models/Boom.shapes wordt Data/Models/Boom.mdl). | |
| static string | FindDataFolder (string file) |
| De map Data waar dit bestand in staat (zoekt omhoog naar een map die Data heet). | |
| static MdlGenerator | FromFile (string shapesFile) |
| Lees een .shapes-bestand. | |
| static MdlGenerator | FromText (string text, string name) |
| Lees een model uit tekst. | |
Public Attributen | |
| string | Name |
| Naam van het model; wordt de bestandsnaam (Naam.mdl, Naam.txt en Naam_*.xml). | |
| Quality | DefaultQuality = Quality.Low |
| Standaardkwaliteit voor alle ronde vormen (per vorm aan te passen met SetQuality of SetSegments). | |
| OriginMode | Origin = OriginMode.AsGiven |
| Waar het middelpunt van het model komt (standaard: zoals opgegeven). | |
| string | BaseFolder = "" |
| Map waar bestanden van vormen (zoals de hoogtekaart van terrain) worden gezocht; FromFile zet hier de map van het .shapes-bestand in. | |
Properties | |
| IReadOnlyList< MdlVariant > | Variants [get] |
| De varianten van dit model (zie AddVariant). | |
| IReadOnlyList< MdlShape > | Shapes [get] |
| De vormen van dit model, in de volgorde waarin ze zijn toegevoegd. | |
| IReadOnlyList< MdlMaterial > | Materials [get] |
| De materialen die met AddMaterial (en varianten) zijn toegevoegd. | |
| int | MaterialCount [get] |
| Het aantal materialen van het gemaakte model; geef dit mee aan Model.SetMdl. | |
Maakt een 3D-model (.mdl) uit eenvoudige basisvormen, zonder Blender.
Elke vorm vult het blok van Position - Size/2 tot Position + Size/2 (Y is omhoog). Het resultaat laad je daarna op de gewone manier:
In code:
Of als tekstbestand (bijvoorbeeld Data/Models/Boom.shapes), met MdlGenerator.GenerateFromFile("Data/Models/Boom.shapes") of met tools/maak-model.ps1:
Zie de beschrijving van FromText voor alle mogelijkheden van het tekstformaat.
| GDF.MdlGenerator.MdlGenerator | ( | string | name | ) |
| MdlShape GDF.MdlGenerator.AddBox | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Blok.
| MdlShape GDF.MdlGenerator.AddBox | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Blok.
| MdlShape GDF.MdlGenerator.AddCapsule | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Capsule (staande pil); de ronde uiteinden worden niet uitgerekt.
| MdlShape GDF.MdlGenerator.AddCapsule | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Capsule (staande pil); de ronde uiteinden worden niet uitgerekt.
| MdlShape GDF.MdlGenerator.AddCone | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Kegel, punt naar boven.
| MdlShape GDF.MdlGenerator.AddCone | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Kegel, punt naar boven.
| MdlShape GDF.MdlGenerator.AddCylinder | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Cilinder (staand). Met SetTop smaller maken aan de bovenkant.
| MdlShape GDF.MdlGenerator.AddCylinder | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Cilinder (staand). Met SetTop smaller maken aan de bovenkant.
| MdlShape GDF.MdlGenerator.AddHalfSphere | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Halve bol (koepel), platte kant onder.
| MdlShape GDF.MdlGenerator.AddHalfSphere | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Halve bol (koepel), platte kant onder.
| MdlShape GDF.MdlGenerator.AddIcoSphere | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Bol uit gelijke driehoeken; mooi voor stenen en boomkruinen (samen met SetJitter).
| MdlShape GDF.MdlGenerator.AddIcoSphere | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Bol uit gelijke driehoeken; mooi voor stenen en boomkruinen (samen met SetJitter).
| MdlMaterial GDF.MdlGenerator.AddMaterial | ( | string | name, |
| Color | color ) |
Voeg een materiaal met een kleur toe.
Een vorm gebruikt het met material: "naam". Is de kleur doorzichtig (alfa kleiner dan 1), dan wordt het materiaal doorzichtig.
| MdlMaterial GDF.MdlGenerator.AddMaterialFile | ( | string | name, |
| string | file ) |
Gebruik een bestaand Urho-materiaal, bijvoorbeeld AddMaterialFile("water", "Materials/Water.xml").
Het pad is relatief aan de map Data.
| MdlShape GDF.MdlGenerator.AddPlane | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Plat vlak (liggend, zichtbaar van boven). Met SetTwoSided van beide kanten zichtbaar, bijvoorbeeld voor bladeren.
| MdlShape GDF.MdlGenerator.AddPlane | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Plat vlak (liggend, zichtbaar van boven). Met SetTwoSided van beide kanten zichtbaar, bijvoorbeeld voor bladeren.
| MdlShape GDF.MdlGenerator.AddPrism | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Driehoekig prisma: punt naar voren (+Z), brede kant achter (-Z). Mooi voor vleugels en vinnen.
| MdlShape GDF.MdlGenerator.AddPrism | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Driehoekig prisma: punt naar voren (+Z), brede kant achter (-Z). Mooi voor vleugels en vinnen.
| MdlShape GDF.MdlGenerator.AddPyramid | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Piramide met een vierkante grondvlak, punt naar boven.
| MdlShape GDF.MdlGenerator.AddPyramid | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Piramide met een vierkante grondvlak, punt naar boven.
| MdlShape GDF.MdlGenerator.AddShape | ( | MdlShape.Type | type, |
| Vector3 | position, | ||
| Vector3 | size, | ||
| Color | color ) |
Voeg een vorm met een kleur toe (er wordt vanzelf een materiaal voor gemaakt).
| MdlShape GDF.MdlGenerator.AddShape | ( | MdlShape.Type | type, |
| Vector3 | position, | ||
| Vector3 | size, | ||
| string | material ) |
Voeg een vorm toe. Materiaal: de naam van een materiaal (zie AddMaterial).
| MdlShape GDF.MdlGenerator.AddSphere | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Bol (met lengte- en breedtegraden).
| MdlShape GDF.MdlGenerator.AddSphere | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Bol (met lengte- en breedtegraden).
| MdlShape GDF.MdlGenerator.AddTerrain | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | heightmap, | ||
| string | material ) |
Een landschap uit een hoogtekaart (PNG: zwart is laag, wit is hoog; de bovenkant van de afbeelding is +Z).
Het landschap vult het blok position ± size/2: zwart ligt op de onderkant, wit op de bovenkant. Steile en lage stukken kunnen een ander materiaal krijgen met SetSteep en SetLow.
| MdlMaterial GDF.MdlGenerator.AddTextureMaterial | ( | string | name, |
| string | texture ) |
Voeg een materiaal met een afbeelding uit Data/Textures toe, bijvoorbeeld AddTextureMaterial("steen", "stones1.jpg").
| MdlShape GDF.MdlGenerator.AddTorus | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Donut, plat liggend. Size.X en Size.Z zijn de buitenmaat; de dikte van de ring is SetThickness × Size.
| MdlShape GDF.MdlGenerator.AddTorus | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Donut, plat liggend. Size.X en Size.Z zijn de buitenmaat; de dikte van de ring is SetThickness × Size.
| MdlVariant GDF.MdlGenerator.AddVariant | ( | string | name | ) |
Voeg een variant toe: hetzelfde model met andere kleuren.
Save schrijft daarvoor een extra materialenlijst Naam_variant.txt, bijvoorbeeld:
| MdlShape GDF.MdlGenerator.AddWedge | ( | Vector3 | position, |
| Vector3 | size, | ||
| Color | color ) |
Wig (helling): laag aan de voorkant (-Z), hoog aan de achterkant (+Z). Ook handig als dak.
| MdlShape GDF.MdlGenerator.AddWedge | ( | Vector3 | position, |
| Vector3 | size, | ||
| string | material ) |
Wig (helling): laag aan de voorkant (-Z), hoog aan de achterkant (+Z). Ook handig als dak.
| MdlMesh GDF.MdlGenerator.Build | ( | ) |
Bouw de driehoeken van het model.
Wordt gebruikt door Save en door de voorvertoning in tools/maak-model.ps1.
|
static |
De map Data waar dit bestand in staat (zoekt omhoog naar een map die Data heet).
Staat het er niet in, dan de map boven de map van het bestand.
|
static |
Lees een .shapes-bestand.
De naam van het model wordt de bestandsnaam (zonder extensie).
|
static |
Lees een model uit tekst.
Eén opdracht per regel; # of // begint commentaar.
|
static |
Lees een .shapes-bestand en schrijf het model weg in de map Data waar het bestand in staat (Data/Models/Boom.shapes wordt Data/Models/Boom.mdl).
Geeft de generator terug.
| int GDF.MdlGenerator.Save | ( | string | dataFolder = "Data" | ) |
Schrijf het model weg: dataFolder/Models/Naam.mdl, dataFolder/Models/Naam.txt (materialenlijst) en dataFolder/Materials/Naam_*.xml.
Geeft het aantal materialen terug (voor Model.SetMdl). Let op: tijdens het spel is "Data" de map naast het .exe-bestand, niet de map van je project.
| string GDF.MdlGenerator.BaseFolder = "" |
Map waar bestanden van vormen (zoals de hoogtekaart van terrain) worden gezocht; FromFile zet hier de map van het .shapes-bestand in.
Leeg: de huidige map.
| Quality GDF.MdlGenerator.DefaultQuality = Quality.Low |
Standaardkwaliteit voor alle ronde vormen (per vorm aan te passen met SetQuality of SetSegments).
| string GDF.MdlGenerator.Name |
Naam van het model; wordt de bestandsnaam (Naam.mdl, Naam.txt en Naam_*.xml).
| OriginMode GDF.MdlGenerator.Origin = OriginMode.AsGiven |
Waar het middelpunt van het model komt (standaard: zoals opgegeven).
|
get |
Het aantal materialen van het gemaakte model; geef dit mee aan Model.SetMdl.
|
get |
De materialen die met AddMaterial (en varianten) zijn toegevoegd.
|
get |
De vormen van dit model, in de volgorde waarin ze zijn toegevoegd.
|
get |
De varianten van dit model (zie AddVariant).