Unit1.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. //---------------------------------------------------------------------------
  2. #ifndef Unit1H
  3. #define Unit1H
  4. #include <System.Classes.hpp>
  5. #include <Vcl.ComCtrls.hpp>
  6. #include <Vcl.Controls.hpp>
  7. #include <Vcl.ExtCtrls.hpp>
  8. #include <Vcl.StdCtrls.hpp>
  9. #include "GLS.BaseClasses.hpp"
  10. #include "GLS.BitmapFont.hpp"
  11. #include "GLS.Cadencer.hpp"
  12. #include "GLS.Coordinates.hpp"
  13. #include "GLS.HeightData.hpp"
  14. #include "GLS.HeightTileFileHDS.hpp"
  15. #include "GLS.HUDObjects.hpp"
  16. #include "GLS.Material.hpp"
  17. #include "GLS.Objects.hpp"
  18. #include "GLS.Scene.hpp"
  19. #include "GLS.SceneViewer.hpp"
  20. #include "GLS.SkyDome.hpp"
  21. #include "GLS.TerrainRenderer.hpp"
  22. #include "GLS.VectorFileObjects.hpp"
  23. #include "GLS.WindowsFont.hpp"
  24. #include <gl\gl.h>
  25. #include <System.Classes.hpp>
  26. #include <Vcl.ComCtrls.hpp>
  27. #include <Vcl.Controls.hpp>
  28. #include <Vcl.ExtCtrls.hpp>
  29. #include <Vcl.StdCtrls.hpp>
  30. #include <Vcl.Forms.hpp>
  31. #include <Vcl.Imaging.jpeg.hpp>
  32. #include "GLS.Material.hpp"
  33. #include "GLS.BitmapFont.hpp"
  34. #include "GLS.Cadencer.hpp"
  35. #include "GLS.Coordinates.hpp"
  36. #include "GLS.HeightData.hpp"
  37. #include "GLS.HeightTileFileHDS.hpp"
  38. #include "GLS.HUDObjects.hpp"
  39. #include "GLS.Objects.hpp"
  40. #include "GLS.Scene.hpp"
  41. #include "GLS.SceneViewer.hpp"
  42. #include "GLS.SkyDome.hpp"
  43. #include "GLS.TerrainRenderer.hpp"
  44. #include "GLS.VectorFileObjects.hpp"
  45. #include "GLS.WindowsFont.hpp"
  46. //---------------------------------------------------------------------------
  47. #include "GLS.RoamPatch.hpp"
  48. #include "GLS.RenderContextInfo.hpp"
  49. #include "GLS.VectorFileObjects.hpp"
  50. #include "GLS.BaseClasses.hpp"
  51. #include "GLS.VectorLists.hpp"
  52. #include "GLS.VectorTypes.hpp"
  53. #include "GLS.VectorGeometry.hpp"
  54. #include "GLS.Keyboard.hpp"
  55. #include "GLS.Context.hpp"
  56. #include "GLS.State.hpp"
  57. #include "GLS.TextureFormat.hpp"
  58. //---------------------------------------------------------------------------
  59. class TForm1 : public TForm
  60. {
  61. __published: // IDE-managed Components
  62. TGLSceneViewer *GLSceneViewer;
  63. TPanel *PAProgress;
  64. TLabel *Label1;
  65. TProgressBar *ProgressBar;
  66. TGLScene *GLScene1;
  67. TGLSkyDome *SkyDome;
  68. TGLDummyCube *DCCamera;
  69. TGLCamera *GLCamera;
  70. TGLTerrainRenderer *TerrainRenderer;
  71. TGLDirectOpenGL *DOWake;
  72. TGLFreeForm *FFSailBoat;
  73. TGLLightSource *LSSun;
  74. TGLHUDText *HTFPS;
  75. TGLHUDText *HTHelp;
  76. TTimer *Timer1;
  77. TGLCadencer *GLCadencer;
  78. TGLMaterialLibrary *MaterialLibrary;
  79. TGLHeightTileFileHDS *GLHeightTileFileHDS1;
  80. TGLWindowsBitmapFont *BFSmall;
  81. TGLCustomHDS *GLCustomHDS1;
  82. TGLMaterialLibrary *MLSailBoat;
  83. TGLWindowsBitmapFont *BFLarge;
  84. void __fastcall GLCadencerProgress(TObject *Sender, const double deltaTime, const double newTime);
  85. void __fastcall Timer1Timer(TObject *Sender);
  86. void __fastcall FormKeyPress(TObject *Sender, System::WideChar &Key);
  87. void __fastcall GLCustomHDS1MarkDirtyEvent(const TRect &area);
  88. void __fastcall GLCustomHDS1StartPreparingData(TGLHeightData *heightData);
  89. void __fastcall GLSceneViewerBeforeRender(TObject *Sender);
  90. void __fastcall DOWakeProgress(TObject *Sender, const double deltaTime, const double newTime);
  91. void __fastcall DOWakeRender(TObject *Sender, TGLRenderContextInfo &rci);
  92. void __fastcall TerrainRendererHeightDataPostRender(TGLRenderContextInfo &rci, TList *&HeightDatas);
  93. void __fastcall FormCreate(TObject *Sender);
  94. private: // User declarations
  95. public: // User declarations
  96. __fastcall TForm1(TComponent* Owner);
  97. bool FullScreen;
  98. float CamHeight;
  99. int WaterPolyCount;
  100. bool WaterPlane;
  101. bool WasAboveWater;
  102. float HelpOpacity;
  103. TAffineVectorList *WakeVertices;
  104. TAffineVectorList *WakeStretch;
  105. TSingleList *WakeTime;
  106. void ResetMousePos(void);
  107. float WaterPhase(const float px, const float py);
  108. float WaterHeight(const float px, const float py);
  109. void IssuePoint(TGLHeightData *hd, int x, int y, int s2, float t, int rx, int ry);
  110. };
  111. //---------------------------------------------------------------------------
  112. extern PACKAGE TForm1 *Form1;
  113. //---------------------------------------------------------------------------
  114. #endif