Давно я не писал , навалилось много дел , но т.к. разгребся скину статейку. Поговорим о Сценовскей Канве (GLCanvas). В каталоге демок есть демка, она показывает ,что сценавский канвас в много раз круче стандартного канваса Делфи. Зачем канва в 3д ?Мол 2д гры спрайтами делать можно. Это может реально помочь с GUI , нарисовать рамку обводки или геометрическую фигуру , да и в 2д игре в комбинации с спрайтами будет не кисло смотреться. Для канваса нам нужен TGLDirectOpenGL (Add object-> Direct OpenGL) а именно событие OnRender.
· InvertYAxis – меняет направление оси Y. По умолчанию ось X направлена слева направо, ось Y направлена сверху вниз;
· PenColor – это свойство задает цвет рисования;
· PenAlpha – это свойство меняет прозрачность рисования, меняется от 0 до 1;
· PenWidth – толщина линий;
· MoveTo(x, y) – эта процедура перемещает карандаш в точку (x,y);
· LineTo(x, y) – рисует линию от текущей позиции карандаша до точки (x,y);
· Line(x1, y1, x2, y2) – рисует линию от точки (x1, y1) до (x2, y2);
· Polyline(points) - соединяет линиями массив точек points;
· Polygon(points) – то же самое, что и Polyline, но еще соединяются первая и последние точки;
· PlotPixel(x, y) – рисует точку в указанных координатах;
· FrameRect(x1, y1, x2, y2) – рисует не закрашенный прямоугольник, где (x1, y1) – координаты верхнего левого угла, (x2, y2) – координаты нижнего правого угла;
· FillRect(x1, y1, x2, y2) – то же самое, что и FrameRect, но прямоугольник закрашивается;
· Ellipse(x1, y1, x2, y2) – рисуется эллипс ограниченный прямоугольной областью;
· Ellipse(x, y, xRadius, yRadius) – рисует эллипс с центром в (x,y) и заданными радиусами;
· FillEllipse(x, y, xRadius, yRadius) – аналогично предыдущей команде, но эллипс получается закрашенный. Описывать это можно через with Canvas do begin .
|