Spieleprogrammierung mit Delphi und GLScene: Materials

Objekte farbig darstellen

Bearbeiten

Da unsere Objekte noch sehr öde aussehen wird hier beschrieben, wie man seinem Objekt nun eine Farbe zuweist.

Das Resultat der Farbgebung setzt sich aus 3 Faktoren zusammen:

Ambient

(engl.: Umgebend) Gibt die farbe des umgebenden Lichtes an

Diffuse

Emission

Diese Werte können im Objektinspektor unter "Material" geändert werden, oder im Quelltext mit:

Begin
  ...
  Cube.Material.FrontProperties.Ambient.SetColor(1,1,1);
  Cube.Material.FrontProperties.Diffuse.SetColor(1,1,1);
  Cube.Material.FrontProperties.Emission.SetColor(1,1,1);
  ...
end;

Die Parameter von SetColor setzen sich folgendermaß'en zusammen:

1. Parameter: Farbe Rot, Wert zwischen 0.0 und 1.0
2. Parameter: Farbe Grün, Wert zwischen 0.0 und 1.0
3. Parameter: Farbe Blau, Wert zwischen 0.0 und 1.0
4. Parameter: Alpha, Wert zwischen 0.0 und 1.0 (optional)

Der Alphawert

Bearbeiten

Alpha bezeichnet die Transparenz bzw die Sichtbarkeit der Textur. In GLScene reicht der wert von 0.0 bis 1.0, wobei 1 Sichbar und 0 unsichtbar ist.


Laden einer Textur

Bearbeiten

Um dem ganzen noch mehr realistisches Aussehen zu geben kann man eine Textur verwenden. Eine Textur ist ein Bild, was sozusagen auf das Objekt "geklebt" wird.

Um eine Textur auf ein Objekt zu "legen", muss man mit dem Objektinspektor zu Texture navigieren. Diese eigenschaftsgruppe befindet sich bei: Material -> FrontProperties -> Texture

Zum laden eines Bildes als Textur wird bei der Eigenschaft "Image" ein Bild geladen. Ganz wichtig ist die Eigenschaft "Disabled" auf False zu setzen, ansonsten wird die Textur nicht angezeigt.