Hilfe

AddVertex

B3D

Aufruf

index% = AddVertex (surface%, x#, y#, z# [,u#] [,v#] [,w#])

Parameter

surface% Identität einer Gitteroberfläche (surface)
x# X-Koordinate des Vertex
y# Y-Koordinate des Vertex
z# Z-Koordinate des Vertex
u# U-Texturkoordinate des Vertex (Standard=0)
v# V-Texturkoordinate des Vertex (Standard=0)
w# W-Texturkoordinate des Vertex (reserviert für spätere Verwendung; Standard=1)


Rückgabewert

Es wird die Indexnummer des Vertex zurückgeliefert.


Beschreibung

Die Funktion AddVertex fügt ein Vertex zu einer Oberfläche (surface) hinzu. Dabei wird die Indexnummer des Vertex zurückgeliefert (ab 0).

Ein Vertex ist ein Punkt in einem 3D-Raum. Dieser Vertex wird dazu benutzt, um aus Punkten Dreiecke zu erstellen. Ohne Vertexpunkte kann man keine Dreiecke erstellen. Dazu sind logischerweise min. drei Punkte notwendig.

Die optionalen Koordinaten u# und v# sind für die Verschiebung der Textur gedacht. Dies funktioniert so: Die untere|linke Texturecke hat die Koordinate 0|0. Die obere|rechte Texturecke hat die Koordinate 1|1. Die Koordinate 0.5|0.5 ist dabei folgerichtig mittig auf der Textur.

Mehrere Dreiecke können auch die selben Vertexpunkte benutzen. Leider verschlechtert es die Schattierung der Objekte. BlitzBasic erstellt standardmäßig mit jedem Dreieck drei Vertexpunkte.



Beispiel

Standardbeispiel:

Graphics3D 640, 480, 16, 2
SetBuffer BackBuffer()
camera = CreateCamera()
light = CreateLight()
PositionEntity camera, 0, 0, -5
RotateEntity light, 90, 0, 0

brush = CreateBrush(0, 255, 0)
mesh = CreateMesh()
surface = CreateSurface(mesh, brush)
v0 = AddVertex(surface, 0, 0, 0)
v1 = AddVertex(surface, 1, -1, 0)
v2 = AddVertex(surface, -1, -1, 0)
AddTriangle(surface, v0, v1, v2)
UpdateNormals mesh

While Not KeyHit(1)
   RenderWorld
   Flip
Wend
End


Siehe auch

AddTriangle, ClearSurface, CreateMesh, CreateSurface, TriangleVertex, UpdateNormals

Übersicht 3D Grafik Surface