| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- unit fFireD;
- interface
- uses
- Winapi.OpenGL,
- System.SysUtils,
- System.Classes,
- System.Types,
- System.Math,
- Vcl.Graphics,
- Vcl.Controls,
- Vcl.Forms,
- Vcl.Dialogs,
- Vcl.ExtCtrls,
-
- GLS.Scene,
- GLS.Objects,
- GLS.FireFX,
- GLS.Cadencer,
- GLS.Behaviours,
- Stage.VectorGeometry,
- GLS.SceneViewer,
- GLS.GeomObjects,
- GLS.Coordinates,
- GLS.BaseClasses;
- type
- TFormFire = class(TForm)
- GLScene1: TGLScene;
- GLSceneViewer1: TGLSceneViewer;
- GLCadencer1: TGLCadencer;
- GLFireFXManager1: TGLFireFXManager;
- GLCamera1: TGLCamera;
- Sphere1: TGLSphere;
- Torus1: TGLTorus;
- GLLightSource2: TGLLightSource;
- Timer1: TTimer;
- procedure GLSceneViewer1MouseDown(Sender: TObject;
- Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
- procedure GLSceneViewer1MouseMove(Sender: TObject; Shift: TShiftState;
- X, Y: Integer);
- procedure Timer1Timer(Sender: TObject);
- procedure FormMouseWheel(Sender: TObject; Shift: TShiftState;
- WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
- public
- mx, my : Integer;
- end;
- var
- FormFire: TFormFire;
- implementation
- {$R *.DFM}
- procedure TFormFire.GLSceneViewer1MouseDown(Sender: TObject;
- Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
- begin
- mx:=x; my:=y;
- end;
- procedure TFormFire.GLSceneViewer1MouseMove(Sender: TObject;
- Shift: TShiftState; X, Y: Integer);
- begin
- if Shift<>[] then
- GLCamera1.MoveAroundTarget(my-y, mx-x);
- mx:=x; my:=y;
- GLCadencer1.Progress;
- end;
- procedure TFormFire.Timer1Timer(Sender: TObject);
- begin
- Caption:='GLScene Fire - '+Format('%.1f FPS', [GLSceneViewer1.FramesPerSecond]);
- GLSceneViewer1.ResetPerformanceMonitor;
- end;
- procedure TFormFire.FormMouseWheel(Sender: TObject; Shift: TShiftState;
- WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
- begin
- GLCamera1.AdjustDistanceToTarget(Power(1.1, WheelDelta/120));
- end;
- end.
|