fMultiTextureC.cpp 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #include <tchar.h>
  4. #pragma hdrstop
  5. #include "fMultiTextureC.h"
  6. //---------------------------------------------------------------------------
  7. #pragma package(smart_init)
  8. #pragma link "GLS.BaseClasses"
  9. #pragma link "GLS.Coordinates"
  10. #pragma link "GLS.Material"
  11. #pragma link "GLS.Objects"
  12. #pragma link "GLS.Scene"
  13. #pragma link "GLS.SceneViewer"
  14. #pragma resource "*.dfm"
  15. TForm1 *Form1;
  16. //---------------------------------------------------------------------------
  17. __fastcall TForm1::TForm1(TComponent* Owner)
  18. : TForm(Owner)
  19. {
  20. }
  21. //---------------------------------------------------------------------------
  22. void __fastcall TForm1::FormCreate(TObject *Sender)
  23. {
  24. SetGLSceneMediaDir();
  25. // prepare images to merge in the multitexture
  26. Image1->Picture->LoadFromFile("ashwood.jpg");
  27. GLMaterialLibrary1->Materials->Items[0]->Material->Texture->Image->Assign(Image1->Picture);
  28. Image2->Picture->LoadFromFile("Flare1.bmp");
  29. GLMaterialLibrary1->Materials->Items[1]->Material->Texture->Image->Assign(Image2->Picture);
  30. }
  31. //---------------------------------------------------------------------------
  32. void __fastcall TForm1::Image1Click(TObject *Sender)
  33. {
  34. // load a new Image1
  35. if (OpenPictureDialog1->Execute()) {
  36. Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);
  37. GLMaterialLibrary1->Materials->Items[0]->Material->Texture->Image->Assign(Image1->Picture);
  38. }
  39. }
  40. //---------------------------------------------------------------------------
  41. void __fastcall TForm1::Image2Click(TObject *Sender)
  42. {
  43. // load a new Image2
  44. if (OpenPictureDialog1->Execute()) {
  45. Image2->Picture->LoadFromFile(OpenPictureDialog1->FileName);
  46. GLMaterialLibrary1->Materials->Items[1]->Material->Texture->Image->Assign(Image2->Picture);
  47. }
  48. }
  49. //---------------------------------------------------------------------------
  50. void __fastcall TForm1::TrackBar1Change(TObject *Sender)
  51. {
  52. // adjust scale
  53. GLMaterialLibrary1->Materials->Items[1]->TextureScale->X = TrackBar1->Position/10;
  54. GLMaterialLibrary1->Materials->Items[1]->TextureScale->Y = TrackBar1->Position/10;
  55. }
  56. //---------------------------------------------------------------------------