Hilfe

CreateImage3D

B3D

Aufruf

HANDLE = CreateImage3D (size [, mode] [, blend] [, x_scale#] [, y_scale#] [, pivot])

Parameter

size Grösse der zu erstellenden Textur, wobei nicht die tatsächliche Grösse angegeben wird, sondern die Exponente zur Basis 2
mode Zum auswählen des Zeichenmodus (Standard = 2)
1 - Color Map, die Textur wird so eingezeichnet wie man die sieht
2 - Alpha Map, die Textur benutzt Alpha Map für Transparenz
3 - Set Alpha, der komplette Aplhachannel wird auf 1 gesetzt.
4 - Masked, schwarze Flächen werden nicht eingezeichnet
blend Zum einstellen des Blendmodus (Standard = 2)
1 - eine Textur
2 - Multitextur
3 - addierte Multitextur
4 - Dot 3 Mapping
5 - Multiply Blend
x_scale# Skalierung der Textur auf der X-Achse (Standard = 1)
y_scale# Skalierung der Textur auf der Y-Achse (Standard = 1)
pivot Pivotauswahl (Standard = 0)
0 - Vordergrundpivot (HUD)
1 - Hintergrundpivot (World)


Rückgabewert

HANDLE = Identität der erstellten Textur


Beschreibung

Dieser Befehl erstellt eine Textur und liefert ihr Draw3D - internes Handle zurück. Da die Seitenlängen einer Textur stets als Zweierpotenz vorliegen müssen, wird bei ''size'' nicht die Grösse des Bildes angegeben, sondern die Potenz zu 2. Gibt man beispielsweis 6 ein, so wird das Bild mit den Seitenlängen 2^6, also 64 erstellt.

''mode'' Zeichenmodus bestimmt, auf welche Art die Textur geladen werden soll. Bei ''mode = 1'' wird die Textur so eingezeichnet wie sie als Bild vorliegt. Das heisst aber auch, dass keine zusätzliche Transparanz über ColorG3D zugewiesen werden kann (dafür Mode 3 nutzen). Bei ''mode = 2'' wird die Alphamap der Textur benutzt. Ist keine vorhanden, so wird anstatt die Colourmap für Alpha verwendet (dunklere Stellen erscheinen dabei transparenter). Bei ''mode = 3'' wird der Textur automatisch ein Vollalpha zugewiesen. Das ist dann Sinnvoll, wenn die Textur kein eigenes Alpha gespeichert hat, aber die Textur denoch mit ColorG3D einfärbar und transparent machbar sein soll. Bei (mode = 4) werden der Textur schwarze Stellen komplett maskiert (transparent) angezeigt.

''blend'' legt fest, wie die Textur auf der internen Surface behandelt werden soll. Bei ''blend = 1'' wird nur eine Textur benutzt. Bei ''blend = 2'' kann Multitexturing benutzt werden. Bei ''blend = 3'' wird addiertes Multitexturing verwendet. Bei ''blend = 4'' wird Dot3 - Mapping eingeschaltet. Bei ''blend = 5'' wird multipliziertes Multitexturing verwendet. Für genauere Informationen dazu sollte man sich die Blitz - Befehle CreateTexture und TextureBlend anschauen.

''pivot'' gibt vor, welcher Pivot zur Positionierung der Textur verwendet wird. Ist er auf ''pivot = 0'' gesetzt, so wird die Textur stets direkt vor der Kamera gezeichnet. Ist er jedoch auf ''pivot = 1'' gesetzt, so bewegt sich die Textur nicht mit der Kamera mit und 'schwebt' in der Landschaft, wenn sich die Kamera bewegt. Für normale Anwendungen kann man Mode, Blend und meist auch Pivot ignorieren.


Beispiel

Standardbeispiel:

Siehe dazu ''Draw3D, CreateImage3D.bb''

Übersicht Draw3D Grafik