GI.TextureUse
TextureUse (Общие функции текстур) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция активирует или деактивирует использование указанной текстуры при выполнении дальнейшего графического вывода, либо делает ее приемником для этого вывода.
Синтаксис
GI.TextureUse(<Уникальный номер текстуры или 0 (INT)>,<Способ использования (INT)>=0,<Тип текстуры (INT)>=0)
Аргументы
<Уникальный номер текстуры или 0 (INT)>
- Аргумент задает уникальный номер текстуры, чтобы активировать ее использование, либо ноль, если необходимо деакивировать использование текстуры.<Способ использования (INT)>
- (необязательный аргумент) Аргумент задает способ использования. Возможны следующие значения:- 0 (по умолчанию) -- привязать текстуру к рабочему графическому буферу (или экрану), чтобы последующий графический вывод проиходил на нее.
- 1 или более -- активизировать текстуру для функций, работающих с текстурами (для OpenGL, к примеру,
glTexCoord
) с номером "канала" соответствующим значению этого аргумента минус один (для OpenGL см.glActiveTexture
).
<Тип текстуры (INT)>
- (необязательный аргумент) Аргумент задает тип текстуры (так как текстура может быть загружена не функциями системы, последней необходима такая информация. К примеру, для OpenGL см. функциюglBindTexture
). Возможны следующие значения типа:- 0: 2D текстура.
- 1: 3D текстура.
- 2: 1D текстура.
- 3: 2D мультиэталонная текстура.
- 4: Текстура куба.
Примеры
//Создать невидимое окно 200x200 aGI:=GI.Init(,,200,200); //Создать пустую текстуру 200x200 аТекст:=aGI.TextureAddBlank(0,0,200,200); //Используем новую текстуру для последующего вывода (вместо самого окна) aGI.TextureUse(аТекст); //Белый фон aGI.glClearColor(1.0,1.0,1.0,1.0); aGI.glClear(aGI.GL_COLOR_BUFFER_BIT or aGI.GL_DEPTH_BUFFER_BIT); //Текстовая перспектива aGI.TextWorldPerspective(1); //Выводим текст "Проверка" на текстуру, начиная с точки 10,10 в верхнем левом углу текстуры с зеленой "тенью" aGI.RenderText("Проверка","Arial,15,B,0000FF,,1",List.Create(1,аТекст,200,200),10,10,0.5,"1,1,00FF00,2"); //Сохраним тектуру в виде файла aGI.TextureSavePicture(аТекст,2,"c:\testtexture.png","PNG");