fArchipelagoC.h 3.5 KB

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