Unit1.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. //---------------------------------------------------------------------------
  2. #ifndef Unit1H
  3. #define Unit1H
  4. //---------------------------------------------------------------------------
  5. #include <System.Classes.hpp>
  6. #include <Vcl.Controls.hpp>
  7. #include <Vcl.StdCtrls.hpp>
  8. #include <Vcl.Forms.hpp>
  9. #include <Vcl.ExtCtrls.hpp>
  10. #include <Vcl.Imaging.jpeg.hpp>
  11. #include "GLBaseClasses.hpp"
  12. #include "GLCadencer.hpp"
  13. #include "GLCoordinates.hpp"
  14. #include "GLCrossPlatform.hpp"
  15. #include "GLCustomShader.hpp"
  16. #include "GLGeomObjects.hpp"
  17. #include "GLGraph.hpp"
  18. #include "GLMaterial.hpp"
  19. #include "GLObjects.hpp"
  20. #include "GLPolyhedron.hpp"
  21. #include "GLScene.hpp"
  22. #include "GLSLShader.hpp"
  23. #include "GLVectorFileObjects.hpp"
  24. #include "GLWin32Viewer.hpp"
  25. #include "GLFileTGA.hpp"
  26. #include "GLFileSMD.hpp"
  27. #include "GLFileMD2.hpp"
  28. #include "GLFile3DS.hpp"
  29. #include "DDSImage.hpp"
  30. #include "GLFileMS3D.hpp"
  31. #include "GLUtils.hpp"
  32. #include "GLBaseClasses.hpp"
  33. #include "GLSLBumpShader.hpp"
  34. //---------------------------------------------------------------------------
  35. class TForm1 : public TForm
  36. {
  37. __published: // IDE-managed Components
  38. TGLSceneViewer *Viewer;
  39. TPanel *Panel1;
  40. TCheckBox *LightMovingCheckBox;
  41. TCheckBox *RollPitchTurnCheckBox;
  42. TCheckBox *ShaderEnabledCheckBox;
  43. TCheckBox *MultiLightShaderCheckBox;
  44. TCheckBox *UseSpecularTextureCheckBox;
  45. TCheckBox *UseNormalTextureCheckBox;
  46. TCheckBox *ShowNotGLSceneObjectsCheckBox;
  47. TGLScene *Scene;
  48. TGLDummyCube *GUICube;
  49. TGLArrowLine *GLArrowLine1;
  50. TGLXYZGrid *GLXYZGrid1;
  51. TGLDummyCube *LightCube;
  52. TGLLightSource *Light;
  53. TGLSphere *GLSphere1;
  54. TGLDummyCube *LightCube2;
  55. TGLLightSource *Light2;
  56. TGLSphere *GLSphere2;
  57. TGLDummyCube *WorldCube;
  58. TGLActor *Sphere_little;
  59. TGLActor *Sphere_big;
  60. TGLActor *Teapot;
  61. TGLActor *Fighter;
  62. TGLCube *GLCube;
  63. TGLDodecahedron *GLDodecahedron;
  64. TGLSphere *GLSphere;
  65. TGLCamera *Camera;
  66. TGLCadencer *Cadencer;
  67. TTimer *Timer1;
  68. TGLMaterialLibrary *MaterialLibrary;
  69. TGLSLBumpShader *MyBumpShader;
  70. TGLMaterialLibrary *TrinityMatlib;
  71. void __fastcall FormCreate(TObject *Sender);
  72. void __fastcall ShaderEnabledCheckBoxClick(TObject *Sender);
  73. void __fastcall ShowNotGLSceneObjectsCheckBoxClick(TObject *Sender);
  74. void __fastcall MultiLightShaderCheckBoxClick(TObject *Sender);
  75. void __fastcall UseSpecularTextureCheckBoxClick(TObject *Sender);
  76. void __fastcall UseNormalTextureCheckBoxClick(TObject *Sender);
  77. void __fastcall CadencerProgress(TObject *Sender, const double deltaTime, const double newTime);
  78. void __fastcall ViewerMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
  79. int X, int Y);
  80. void __fastcall ViewerMouseMove(TObject *Sender, TShiftState Shift, int X, int Y);
  81. void __fastcall Timer1Timer(TObject *Sender);
  82. void __fastcall FormMouseWheel(TObject *Sender, TShiftState Shift, int WheelDelta,
  83. TPoint &MousePos, bool &Handled);
  84. void __fastcall LightCubeProgress(TObject *Sender, const double deltaTime, const double newTime);
  85. void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
  86. private: // User declarations
  87. int mx, my;
  88. TGLSLMLBumpShader *MultiLightShader;
  89. public: // User declarations
  90. __fastcall TForm1(TComponent* Owner);
  91. };
  92. //---------------------------------------------------------------------------
  93. extern PACKAGE TForm1 *Form1;
  94. //---------------------------------------------------------------------------
  95. #endif