|
GDF 26.1a
Game Development Framework - https://gdf.acits.nl
|
Een hoogtekaart van één of meer voorwerpen (bijvoorbeeld een berglandschap, een brug of een trap). Meer...
Public Members | |
| TerrainMap (params Instance[] instances) | |
| Gebruik liever Methods.GetTerrainMap(...). | |
| float | GetHeight (float x, float z) |
| De hoogte (Y) van de grond op deze plek: de hoogste bovenkant van de kaart. | |
| float | GetHeight (float x, float z, float below) |
| De hoogte van de grond op deze plek, maar alleen grond die niet hoger ligt dan 'below'. | |
| bool | Contains (float x, float z) |
| Ligt er op deze plek grond (van de kaart)? | |
| bool | Contains (float x, float z, float below) |
| Ligt er op deze plek grond die niet hoger is dan 'below'? | |
| Vector3 | GetNormal (float x, float z) |
| De richting loodrecht op de grond (lengte 1, altijd omhoog gericht). | |
| Vector3 | GetNormal (float x, float z, float below) |
| De richting loodrecht op de grond die niet hoger ligt dan 'below' (zie GetHeight). | |
| float | GetSlope (float x, float z) |
| Hoe steil de grond hier is, in graden: 0 is vlak, 90 is een muur. | |
| float | GetSlope (float x, float z, float below) |
| Hoe steil de grond onder 'below' hier is, in graden (zie GetHeight). | |
| float | GetHeightAbove (float x, float z, float above) |
| Het laagste vlak bóven 'above' op deze plek, bijvoorbeeld de onderkant van een brug of een plafond. | |
| bool | IsInside (float x, float y, float z) |
| Zit dit punt binnen een dicht voorwerp (in de berg, in een blok)? | |
| bool | HasRoom (float x, float y, float z, float height) |
| Is er ruimte voor iets van deze hoogte met de onderkant op y? | |
Properties | |
| Vector3 | Min [get] |
| Kleinste punt (X, Y en Z) van de kaart. | |
| Vector3 | Max [get] |
| Grootste punt (X, Y en Z) van de kaart. | |
| float | MinHeight [get] |
| De laagste hoogte op de kaart; dit geeft GetHeight terug waar geen grond is. | |
| float | MaxHeight [get] |
| De grootste hoogte op de kaart. | |
| int | TriangleCount [get] |
| Aantal driehoeken in de kaart. | |
Een hoogtekaart van één of meer voorwerpen (bijvoorbeeld een berglandschap, een brug of een trap).
Hiermee vraag je op elke plek op hoe hoog de grond is en hoe steil hij loopt. Maak hem met Methods.GetTerrainMap(...), één keer (bijvoorbeeld in Room.Start) en bewaar hem in een variabele:
De kaart is een momentopname: verplaats, draai of vergroot je een voorwerp daarna, maak dan een nieuwe kaart. Werkt met elk model: uit Blender, uit de MdlGenerator en de standaardvormen (SetBox, SetSphere, ...).
| GDF.TerrainMap.TerrainMap | ( | params Instance[] | instances | ) |
Gebruik liever Methods.GetTerrainMap(...).
| bool GDF.TerrainMap.Contains | ( | float | x, |
| float | z ) |
Ligt er op deze plek grond (van de kaart)?
| bool GDF.TerrainMap.Contains | ( | float | x, |
| float | z, | ||
| float | below ) |
Ligt er op deze plek grond die niet hoger is dan 'below'?
| float GDF.TerrainMap.GetHeight | ( | float | x, |
| float | z ) |
De hoogte (Y) van de grond op deze plek: de hoogste bovenkant van de kaart.
Is er op deze plek geen grond, dan krijg je MinHeight terug (controleer dat eventueel met Contains).
| float GDF.TerrainMap.GetHeight | ( | float | x, |
| float | z, | ||
| float | below ) |
De hoogte van de grond op deze plek, maar alleen grond die niet hoger ligt dan 'below'.
Handig voor bruggen, verdiepingen en trappen: geef bijvoorbeeld Y + 0.3f mee (je voeten plus een traptreetje). Is er geen grond onder 'below', dan krijg je MinHeight terug.
| float GDF.TerrainMap.GetHeightAbove | ( | float | x, |
| float | z, | ||
| float | above ) |
Het laagste vlak bóven 'above' op deze plek, bijvoorbeeld de onderkant van een brug of een plafond.
Is er niets boven, dan krijg je float.PositiveInfinity terug.
| Vector3 GDF.TerrainMap.GetNormal | ( | float | x, |
| float | z ) |
De richting loodrecht op de grond (lengte 1, altijd omhoog gericht).
Op vlakke grond is dit (0, 1, 0). Handig om iets mee te laten kantelen met de helling. Geen grond: (0, 1, 0).
| Vector3 GDF.TerrainMap.GetNormal | ( | float | x, |
| float | z, | ||
| float | below ) |
De richting loodrecht op de grond die niet hoger ligt dan 'below' (zie GetHeight).
| float GDF.TerrainMap.GetSlope | ( | float | x, |
| float | z ) |
Hoe steil de grond hier is, in graden: 0 is vlak, 90 is een muur.
| float GDF.TerrainMap.GetSlope | ( | float | x, |
| float | z, | ||
| float | below ) |
Hoe steil de grond onder 'below' hier is, in graden (zie GetHeight).
| bool GDF.TerrainMap.HasRoom | ( | float | x, |
| float | y, | ||
| float | z, | ||
| float | height ) |
Is er ruimte voor iets van deze hoogte met de onderkant op y?
Dus: niet binnen een voorwerp en geen plafond (brug) lager dan y + height. Handig om te controleren of je ergens heen kunt lopen:
| bool GDF.TerrainMap.IsInside | ( | float | x, |
| float | y, | ||
| float | z ) |
Zit dit punt binnen een dicht voorwerp (in de berg, in een blok)?
Dat is zo als het eerste vlak erboven een bovenkant is. Onder een brug zit je niet binnen: het eerste vlak erboven is dan een onderkant.
|
get |
Grootste punt (X, Y en Z) van de kaart.
|
get |
De grootste hoogte op de kaart.
|
get |
Kleinste punt (X, Y en Z) van de kaart.
|
get |
De laagste hoogte op de kaart; dit geeft GetHeight terug waar geen grond is.
|
get |
Aantal driehoeken in de kaart.