HGE::Gfx_StartBatch
Начинает вывод пользовательской последовательности примитивов.
hgeVertex *Gfx_StartBatch(
int prim_type,
HTEXTURE tex,
int blend,
int *max_prim
);
Параметры
- prim_type
- Тип графических примитивов которые необходимо выводить:
HGEPRIM_LINES - линии
HGEPRIM_TRIPLES - треугольники
HGEPRIM_QUADS - четырехугольники
- tex
- Идентификатор текстуры или 0.
- blend
- Режим смешивания.
- max_prim
- Указатель на int который содержит максимальное число примитивов, доступных в одной
последовательности.
Возвращаемое значение
Возвращает указатель на массив вершин, которые будут заполнены и содердит максимальное число
примитивово, указанное в max_prim.
Примечания
Gfx_StartBatch - лазейка в сердце HGE и DirectX, только для экспертов.
Она позволяет прямой доступ к аппаратному буферу вершин и позволяет с максимальной скоростью выводить
большое количсетво графических примитивов. Может быть использована для задач с очень сложной
геометрией или текстурными эффектами или при выводе сложных расчитанных заранее объектов.
Функция Gfx_StartBatch должна быть вызвана между вызовами Gfx_BeginScene
и Gfx_EndScene. Чтобы закончить последовательность,
воспользуйтесь функцией Gfx_FinishBatch. Никакие другие
функции вывода не должны находиться внутри пары вызовов Gfx_StartBatch/Gfx_FinishBatch.
Размер буфера вершин - постоянная величина и едва ли будет меняться. Он может содержать до 1000
прямоугольников / 1333 треугольников / 2000 линий. В буфер необходимо записывать по 2 вершины на
линию, 3 вершины на треугольник и 4 вершины на каждый прямоугольник. Действительное число примитивов,
записанное в буфер необходимо передать в вызове функции Gfx_FinishBatch.
Gfx_StartBatch сбрасывает в видеоадаптер все накопленные графические примитивы.
Требования
Заголовок: hge.h
Библиотека импорта: hge.lib
Смотрите также
Gfx_FinishBatch,
Gfx_BeginScene,
Gfx_EndScene
|