Hilfe

WBuffer

B3D

Aufruf

WBuffer wert%

Parameter

wert% 0=ausschalten, 1=einschalten
WBuffer ist in 16 Bit-Modus aktiviert und in 24/32 Bit deaktiviert!


Rückgabewert

-


Beschreibung

Die Anweisung WBuffer schaltet W-Buffering ein oder aus.

W-Buffering ist eine spezielle Technik für Darstellung der 3D-Szenen. Hierbei werden weiter Objekte zuerst gezeichnet und nahe zuletzt.

Normales Z-Buffering versucht dies nachzumachen. Leider kann es in 16 Bit Grafikmodus nicht korrekt arbeiten. Es arbeitet mit geringeren Präzision als in 24/32 Bit. Dadurch können sich einige Objekte in machen Situationen überlappen, obwohl die es nicht tun sollten.

Mit WBuffer kann man dies unterdrücken. Es ist wesentlich genauer, ist aber weniger kompatibel als Z-Buffering.


Beispiel

Standardbeispiel:

Graphics3D 640, 480, 16, 1
SetBuffer BackBuffer()
camera = CreateCamera()
light = CreateLight(1)
RotateEntity light, 90, 0, 0

cube = CreateCube()
EntityColor cube, 100, 100, 255
PositionEntity cube, 0, 0, 5

sphere = CreateSphere(16, cube)
ScaleMesh sphere, .3, .3, .3
wbuf = 1
WBuffer 1

While Not KeyDown(1)
   If KeyHit(57) Then
   wbuf = 1 - wbuf
   WBuffer wbuf
   End If
   TurnEntity cube, 1, 1, 1
   RenderWorld
   Text 0, 0, "Mit Leertaste umschalten"
   Text 0, 20, "WBUFFER " + wbuf
   Flip
Wend
End


Siehe auch

AntiAlias, Dither, HWMultiTex, WireFrame

Übersicht 3D Grafik Global