GLScene - Первые шаги
Автор: Daddy
WEB-сайт: http://daddy.mirgames.ru
Нашим первым шагом будет создание простого кубика, звучит не так страшно =).
Поместим на форму два объекта: GLScene и GLSceneViewer.
GLScene – инспектор объектов нашей сцены.
GLSceneViewer – окно в котором отображается наша сцена.
Двойным щелчком левой кнопки мыши на GLScene1 входим в инспектор объектов и создадим простой объект Cube (Scene objects => Add object => Basic geometry => Cube ).
Далее создадим камеру (Cameras => Add camera) и источник света (Scene objects => Add object => LightSource).
Теперь в GLSceneViewer1 в разделе Camera выбираем GLCamera1.
Займёмся настройкой камеры: Выбрав GLCamera1 в Object Inspector’е находим раздел TargetObject и выбираем Cube1. А теперь поменяем координаты камеры (т.к. всем объектам в момент создания задаются одинаковые координаты и наша камера просто не увидит кубик) в разделе Position устанавливаем x = 1, y = 1 , x = 1 (писать без знака равно естественно).
Теперь немного программного кода:
procedure TForm1.GLSceneViewer1MouseDown(Sender: TObject; Button:
TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
mx := x;
my := y;
end;
procedure TForm1.GLSceneViewer1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
if Shift <> [] then
begin
GLCamera1.MoveAroundTarget(my - y, mx - x);
mx := x;
my := y;
end;
end;
И в разделе public не забудьте объявить переменные mx и my:
public
mx, my: Integer;
Теперь с помощью мышки мы можем вращать камеру вокруг куба.
На этом статья кончается.
Вот исходник, а вот готовый пример.
|