TextureBuffer ( texture[,frame] )

Параметры

texture - указатель текстуры
frame (не обязательно) - кадр текстуры

Описание

Возвращает указатель буфера текстуры.

Эту функцию можно использовать с SetBuffer, чтобы выполнять 2D-операции рисования на текстуре, хотя обычно быстрее нарисовать изображение, и затем копировать буфер изображения в буфер текстуры, используя команду CopyRect.

Вы не можете рендерить 3D-графику в буфер текстуры; трехмерная графика может быть сохранена только в заднем буфере (BackBuffer). Чтобы отображать 3D-графику на текстуре, используйте CopyRect, чтобы скопировать содержимое BackBuffer в буфер текстуры TextureBuffer.

Пример

; Пример TextureBuffer

; ---------------------

Graphics3D 640,480
SetBuffer BackBuffer()

camera=CreateCamera()

light=CreateLight()
RotateEntity light,90,0,0

cube=CreateCube()
PositionEntity cube,0,0,5

; Создаем текстуру размером 256x256
tex=CreateTexture(256,256)

; Устанавливаем текущий буфер для работы - TextureBuffer
SetBuffer TextureBuffer(tex)

; Очищаем буфер с белым цветом
ClsColor 255,255,255
Cls

; Пишем текст на текстуре
font=LoadFont("arial",24)
SetFont font
Color 0,0,0
Text 0,0,"This texture"
Text 0,40,"was created using" : Color 0,0,255
Text 0,80,"CreateTexture()" : Color 0,0,0
Text 0,120,"and drawn to using" : Color 0,0,255
Text 0,160,"SetBuffer TextureBuffer()"

; Текстурируем куб
EntityTexture cube,tex

; Теперь текущий буфер - BackBuffer
SetBuffer BackBuffer()

While Not KeyDown( 1 )

pitch#=0
yaw#=0
roll#=0

If KeyDown( 208 )=True Then pitch#=-1
If KeyDown( 200 )=True Then pitch#=1
If KeyDown( 203 )=True Then yaw#=-1
If KeyDown( 205 )=True Then yaw#=1
If KeyDown( 45 )=True Then roll#=-1
If KeyDown( 44 )=True Then roll#=1

TurnEntity cube,pitch#,yaw#,roll#

RenderWorld
Flip

Wend

End


Главная страница

Нажмите сюда, чтобы увидеть последнюю версию этой страницы в интернете