GI.TextWorldPerspective
TextWorldPerspective (Общие функции объекта GI) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Функция изменяет текущую перспективу окна GI на простую текстовую 2D перспективу в которой удаление и приближение по оси z не сказывается на размерах объектов, размер точки окна совпадает с единицей измерения координатных осей x и y, и координата (0,0) находится в верхней левой точке окна. Выключение такого режима (aGI.TextWorldPerspective(0)
) возвратит предыдущий режим перспективы. Режим удобен для рисования простых 2D спрайтов, фигур или текста (RenderText).
Синтаксис
GI.TextWorldPerspective(<Включить текстовую перспективу (INT)>=1)
Аргументы
<Включить текстовую перспективу (INT)>
- (необязательный аргумент) Изменяет текущую перспективу текстовую (1, по умолчанию), или возвращает перспективу, которая работала до текстовой. Для нулевого смещения камеры для функции RenderText точка 0,0,0 находится в верхнем левом углу экрана. Для других функций рисования, в центре экрана, но ось Y увеличивается по направлению вниз, но для программ шейдеров ось по-прежнему увеличивается вверх, так как шейдеры игнорируют изменения перспективы с помощью матрицы перспективы.
Примеры
... аДата:=Date(); СтрСтат:=""; ... //Выведем статистку в левый нижний угол экрана aGI.TextWorldPerspective(1); If GetPeriodMs(аДата)>100 Then аДата:=Date(); аФПС:=0; аВремя:=0; аВремя2:=0; aGI.RenderStats(аФПС,аВремя); aGI.RenderStats2(аВремя2); СтрСтат:=""+аФПС+"FPS, CPU time: "+FormatNumber(аВремя,0,"",3)+"ms, GPU time: "+FormatNumber(аВремя2,0,"",3)+"ms"; EndIf; aGI.RenderText(СтрСтат,"Tahoma,15,IB,"+DecToBase(_CLR_BLUE,16),0,10,aGI.Height-30,0.5,"0,2,FFFFFF,3"); aGI.TextWorldPerspective(0); ...