Browse Source

Updated examples

glscene 1 year ago
parent
commit
1c67809345
100 changed files with 815 additions and 571 deletions
  1. 1 1
      Examples/AdvDemos/Archipelago/fArchipelagoC.h
  2. 16 14
      Examples/AdvDemos/Archipelago/fArchipelagoD.pas
  3. 1 1
      Examples/AdvDemos/Christmas/fChrismasD.pas
  4. 8 8
      Examples/AdvDemos/Earth/fEarthD.pas
  5. 10 8
      Examples/AdvDemos/Forest/fForestD.pas
  6. 13 11
      Examples/AdvDemos/GLSViewer/Source/fGLSViewer.pas
  7. 1 1
      Examples/AdvDemos/PanoramViewer/fPanoViewerC.cpp
  8. 1 1
      Examples/AdvDemos/PanoramViewer/fPanoViewerC.h
  9. 73 36
      Examples/AdvDemos/PanoramViewer/fPanoViewerD.dfm
  10. 6 5
      Examples/AdvDemos/PanoramViewer/fPanoViewerD.pas
  11. 1 1
      Examples/Demos/behaviours/DCEDemo/fDceDemoC.h
  12. 1 1
      Examples/Demos/behaviours/FPSMovement/fFPSMovementC.h
  13. 2 2
      Examples/Demos/behaviours/Torque/fTorqueD.pas
  14. 1 1
      Examples/Demos/bench/megacube/fMegaCubeD.pas
  15. 1 1
      Examples/Demos/bench/megaglasscube/fMegaglassD.pas
  16. 1 1
      Examples/Demos/collisions/Raycast/fRayCastD.pas
  17. 1 1
      Examples/Demos/collisions/TriangleBox/fTriangleBoxD.pas
  18. 2 2
      Examples/Demos/collisions/boxedin/fBoxC.cpp
  19. 1 1
      Examples/Demos/extrusion/tentacles/fTentaclesD.pas
  20. 1 1
      Examples/Demos/glslshaders/Ocean/fOceanD.pas
  21. 1 1
      Examples/Demos/glslshaders/ShadersLab/fShaderLabD.pas
  22. 3 3
      Examples/Demos/glslshaders/SimpleGLSL/fSimpleShaderC.cpp
  23. 7 7
      Examples/Demos/graph/heightfield/fHeightFieldD.pas
  24. 1 1
      Examples/Demos/graph/points/fPointsD.pas
  25. 1 1
      Examples/Demos/interface/GameMenu/fGameMenuC.h
  26. 1 1
      Examples/Demos/interface/GizmoEx/fGizmoExC.h
  27. 1 1
      Examples/Demos/interface/HFPick/fHFPickD.pas
  28. 1 1
      Examples/Demos/interface/Pick/fPickD.pas
  29. 1 1
      Examples/Demos/interface/camera/fCameraC.h
  30. 7 6
      Examples/Demos/materials/TransparAdv/fTransparAdvD.pas
  31. 1 1
      Examples/Demos/materials/customquad/fCustomQuadD.pas
  32. 3 3
      Examples/Demos/materials/multipass/fMultiPassD.pas
  33. 2 2
      Examples/Demos/materials/multipass/fMultipassC.h
  34. 1 1
      Examples/Demos/meshes/actortwocam/fActorTwocamC.h
  35. 12 10
      Examples/Demos/meshes/actortwocam/fActorTwocamD.pas
  36. 1 1
      Examples/Demos/meshes/formula/fFormulaC.cpp
  37. 1 1
      Examples/Demos/meshes/formula/fFormulaC.h
  38. 3 3
      Examples/Demos/meshes/formula/fFormulaD.pas
  39. 1 1
      Examples/Demos/meshes/portal/fPortalC.h
  40. 145 94
      Examples/Demos/meshes/portal/fPortalD.dfm
  41. 10 6
      Examples/Demos/meshes/portal/fPortalD.pas
  42. 1 1
      Examples/Demos/meshes/shadedterrain/fShadedTerrainC.h
  43. 123 62
      Examples/Demos/meshes/shadedterrain/fShadedTerrainD.dfm
  44. 6 4
      Examples/Demos/meshes/shadedterrain/fShadedTerrainD.pas
  45. 1 1
      Examples/Demos/meshes/synthterr/fSynthTerrainC.h
  46. 6 3
      Examples/Demos/meshes/synthterr/fSynthTerrainD.pas
  47. 2 2
      Examples/Demos/meshes/terrain/fTerrainC.cpp
  48. 8 7
      Examples/Demos/meshes/terrain/fTerrainD.pas
  49. 8 7
      Examples/Demos/meshes/tiles/fTilesD.pas
  50. 1 1
      Examples/Demos/movements/column/fColumnD.pas
  51. 1 1
      Examples/Demos/movements/objmove/fObjmoveC.cpp
  52. 2 2
      Examples/Demos/movements/objmove/fObjmoveD.pas
  53. 1 1
      Examples/Demos/movements/smoothnavi/fSmoothNaviC.h
  54. 12 10
      Examples/Demos/movements/smoothnavi/fSmoothNaviD.pas
  55. 1 1
      Examples/Demos/physics/NewtonSimple/fNewtonSimpleD.pas
  56. 2 2
      Examples/Demos/physics/NewtonWalkCarry/fNewtonWalkCarryD.pas
  57. 1 1
      Examples/Demos/physics/OdeFurball/fOdeFurballC.cpp
  58. 1 1
      Examples/Demos/physics/OdeFurball/fOdeFurballC.h
  59. 1 1
      Examples/Demos/physics/OdeFurball/fOdeFurballD.pas
  60. 1 1
      Examples/Demos/physics/OdeTerrain/fOdeTerrainC.h
  61. 1 1
      Examples/Demos/physics/OdeTerrain/fOdeTerrainD.pas
  62. 1 1
      Examples/Demos/physics/PhysXScatter/PhysXScatterFm.pas
  63. 1 1
      Examples/Demos/rendering/BasicSDL/fBasicSDL_D.pas
  64. 1 1
      Examples/Demos/rendering/MultiTexture/fMultiTexturesC.h
  65. 1 1
      Examples/Demos/rendering/SkyBox/fSkyBoxC.h
  66. 1 1
      Examples/Demos/rendering/celshading/fCelShadingC.h
  67. 1 1
      Examples/Demos/rendering/multiproxy/fMultiProxyD.pas
  68. 1 1
      Examples/Demos/specialsFX/Atmosphere/fAtmosphereD.pas
  69. 55 27
      Examples/Demos/specialsFX/PFXCursor/fPfxCursorD.dfm
  70. 6 5
      Examples/Demos/specialsFX/PFXCursor/fPfxCursorD.pas
  71. 1 1
      Examples/Demos/specialsFX/PFXGallery/fPFXGallaryC.cpp
  72. 55 26
      Examples/Demos/specialsFX/PFXGallery/fPFXGalleryD.dfm
  73. 8 6
      Examples/Demos/specialsFX/PFXGallery/fPFXGalleryD.pas
  74. 1 1
      Examples/Demos/specialsFX/motionblur/fMotionBlurC.h
  75. 1 1
      Examples/Demos/specialsFX/spiral/fSpiralC.h
  76. 1 1
      Examples/Demos/specialsFX/waterplane/fWaterPlaneD.pas
  77. 1 1
      Examples/Demos/utilities/recorder/Unit1.cpp
  78. 1 1
      Examples/Demos/utilities/recorder/Unit1.h
  79. 15 3
      GXScene.groupproj
  80. 1 1
      Packages/GLScene_RT.dpk
  81. 1 1
      Packages/GLScene_RT.dproj
  82. 1 1
      Packages/GXScene_GBE.dproj
  83. 2 2
      Packages/GXScene_RT.dpk
  84. 1 1
      Packages/GXScene_RT.dproj
  85. 1 1
      Source/FRColorEditor.pas
  86. 1 1
      Source/FRMaterialPreview.pas
  87. 1 1
      Source/FmLibMaterialPicker.pas
  88. 14 14
      Source/GLS.Atmosphere.pas
  89. 10 10
      Source/GLS.BitmapFont.pas
  90. 1 1
      Source/GLS.Blur.pas
  91. 1 1
      Source/GLS.BumpmapHDS.pas
  92. 11 11
      Source/GLS.Canvas.pas
  93. 7 7
      Source/GLS.Extrusion.pas
  94. 9 9
      Source/GLS.FBORenderer.pas
  95. 5 5
      Source/GLS.FileMS3D.pas
  96. 1 1
      Source/GLS.FileOBJ.pas
  97. 12 12
      Source/GLS.FireFX.pas
  98. 20 20
      Source/GLS.GameMenu.pas
  99. 16 16
      Source/GLS.Gizmo.pas
  100. 21 21
      Source/GLS.GizmoEx.pas

+ 1 - 1
Examples/AdvDemos/Archipelago/fArchipelagoC.h

@@ -42,7 +42,7 @@
 #include "GLS.RoamPatch.hpp"
 #include "GLS.RoamPatch.hpp"
 #include "GLS.RenderContextInfo.hpp"
 #include "GLS.RenderContextInfo.hpp"
 
 
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.Context.hpp"
 #include "GLS.Context.hpp"
 #include "GLS.State.hpp"
 #include "GLS.State.hpp"
 #include "GLScene.TextureFormat.hpp"
 #include "GLScene.TextureFormat.hpp"

+ 16 - 14
Examples/AdvDemos/Archipelago/fArchipelagoD.pas

@@ -12,14 +12,24 @@ uses
   Vcl.Graphics, 
   Vcl.Graphics, 
   Vcl.Controls, 
   Vcl.Controls, 
   Vcl.ExtCtrls,
   Vcl.ExtCtrls,
-  Vcl.ComCtrls, 
-  Vcl.Forms, 
-  Vcl.Dialogs, 
+  Vcl.ComCtrls,
+  Vcl.Forms,
+  Vcl.Dialogs,
   Vcl.Imaging.Jpeg,
   Vcl.Imaging.Jpeg,
 
 
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.VectorLists,
+  GLScene.VectorTypes,
+  GLScene.VectorGeometry,
+  GLScene.XCollection,
+  GLScene.TextureFormat,
+  GLScene.Keyboard,
+  GLScene.Utils,
+
   GLS.Scene,
   GLS.Scene,
-  GLS.Cadencer, 
-  GLS.Objects, 
+  GLS.Cadencer,
+  GLS.Objects,
   GLS.TerrainRenderer,
   GLS.TerrainRenderer,
   GLS.HeightData,
   GLS.HeightData,
   GLS.HeightTileFileHDS,
   GLS.HeightTileFileHDS,
@@ -30,20 +40,12 @@ uses
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.WindowsFont,
   GLS.WindowsFont,
   GLS.BitmapFont,
   GLS.BitmapFont,
-  GLScene.Coordinates,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
-  GLS.Color,
+  GLScene.Color,
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
-  GLScene.BaseClasses,
-  GLScene.VectorLists,
-  GLScene.VectorTypes,
-  GLScene.VectorGeometry,
-  GLScene.XCollection,
   GLS.Context,
   GLS.Context,
   GLS.State,
   GLS.State,
-  GLScene.TextureFormat,
   GLS.File3DS,
   GLS.File3DS,
-  GLScene.Utils,
   GLS.Navigator;
   GLS.Navigator;
 
 
 type
 type

+ 1 - 1
Examples/AdvDemos/Christmas/fChrismasD.pas

@@ -38,7 +38,7 @@ uses
   GLS.GeomObjects,
   GLS.GeomObjects,
   GLS.Material,
   GLS.Material,
   GLScene.Coordinates,
   GLScene.Coordinates,
-  GLS.Color,
+  GLScene.Color,
   GLS.SoundManager,
   GLS.SoundManager,
   GLS.Sounds.BASS,
   GLS.Sounds.BASS,
   BASS.Import,
   BASS.Import,

+ 8 - 8
Examples/AdvDemos/Earth/fEarthD.pas

@@ -32,7 +32,7 @@ uses
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Texture,
   GLS.Texture,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
-  GLS.Color,
+  GLScene.Color,
   GLS.State,
   GLS.State,
   GLScene.Utils,
   GLScene.Utils,
   GLS.Context,
   GLS.Context,
@@ -136,8 +136,8 @@ type
   private
   private
     FileName, Path: TFileName;
     FileName, Path: TFileName;
     procedure LoadConstellationLines;
     procedure LoadConstellationLines;
-    function AtmosphereColor(const rayStart, rayEnd: TGLVector): TGLColorVector;
-    function ComputeColor(var rayDest: TGLVector; mayHitGround: Boolean): TGLColorVector;
+    function AtmosphereColor(const rayStart, rayEnd: TGLVector): TGColorVector;
+    function ComputeColor(var rayDest: TGLVector; mayHitGround: Boolean): TGColorVector;
   end;
   end;
 
 
 var
 var
@@ -149,8 +149,8 @@ const
   cAtmosphereRadius: Single = 0.55;
   cAtmosphereRadius: Single = 0.55;
   // use value slightly lower than actual radius, for antialiasing effect
   // use value slightly lower than actual radius, for antialiasing effect
   cEarthRadius: Single = 0.495;
   cEarthRadius: Single = 0.495;
-  cLowAtmColor: TGLColorVector = (X: 1; Y: 1; Z: 1; W: 1);
-  cHighAtmColor: TGLColorVector = (X: 0; Y: 0; Z: 1; W: 1);
+  cLowAtmColor: TGColorVector = (X: 1; Y: 1; Z: 1; W: 1);
+  cHighAtmColor: TGColorVector = (X: 0; Y: 0; Z: 1; W: 1);
   cIntDivTable: array [2 .. 20] of Single = (1 / 2, 1 / 3, 1 / 4, 1 / 5, 1 / 6, 1 / 7, 1 / 8, 1 / 9,
   cIntDivTable: array [2 .. 20] of Single = (1 / 2, 1 / 3, 1 / 4, 1 / 5, 1 / 6, 1 / 7, 1 / 8, 1 / 9,
     1 / 10, 1 / 11, 1 / 12, 1 / 13, 1 / 14, 1 / 15, 1 / 16, 1 / 17, 1 / 18, 1 / 19, 1 / 20);
     1 / 10, 1 / 11, 1 / 12, 1 / 13, 1 / 14, 1 / 15, 1 / 16, 1 / 17, 1 / 18, 1 / 19, 1 / 20);
 
 
@@ -191,11 +191,11 @@ end;
 
 
 //--------------------------------------------------------------------------------
 //--------------------------------------------------------------------------------
 
 
-function TFormEarth.AtmosphereColor(const rayStart, rayEnd: TGLVector): TGLColorVector;
+function TFormEarth.AtmosphereColor(const rayStart, rayEnd: TGLVector): TGColorVector;
 var
 var
   i, n: Integer;
   i, n: Integer;
   atmPoint, normal: TGLVector;
   atmPoint, normal: TGLVector;
-  altColor: TGLColorVector;
+  altColor: TGColorVector;
   alt, rayLength, contrib, decay, intensity, invN: Single;
   alt, rayLength, contrib, decay, intensity, invN: Single;
 
 
 begin
 begin
@@ -238,7 +238,7 @@ end;
 
 
 //-----------------------------------------------------------------------
 //-----------------------------------------------------------------------
 
 
-function TFormEarth.ComputeColor(var rayDest: TGLVector; mayHitGround: Boolean): TGLColorVector;
+function TFormEarth.ComputeColor(var rayDest: TGLVector; mayHitGround: Boolean): TGColorVector;
 var
 var
   ai1, ai2, pi1, pi2: TGLVector;
   ai1, ai2, pi1, pi2: TGLVector;
   rayVector: TGLVector;
   rayVector: TGLVector;

+ 10 - 8
Examples/AdvDemos/Forest/fForestD.pas

@@ -17,16 +17,21 @@ uses
   Vcl.Imaging.Jpeg,
   Vcl.Imaging.Jpeg,
   Vcl.ExtCtrls,
   Vcl.ExtCtrls,
 
 
+  GLScene.VectorTypes,
+  GLScene.VectorGeometry,
+  GLScene.XCollection,
+  GLScene.VectorLists,
+  GLScene.PersistentClasses,
+  GLScene.BaseClasses,
+  GLScene.TextureFormat,
+  GLScene.Keyboard,
+
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Texture,
   GLS.Texture,
-  GLScene.VectorTypes,
-  GLScene.VectorGeometry,
   GLS.Scene,
   GLS.Scene,
   GLS.Objects,
   GLS.Objects,
   GLS.Tree,
   GLS.Tree,
-  GLScene.XCollection,
-  GLScene.VectorLists,
   GLS.BitmapFont,
   GLS.BitmapFont,
   GLS.Context,
   GLS.Context,
   GLS.WindowsFont,
   GLS.WindowsFont,
@@ -35,12 +40,9 @@ uses
   GLS.Imposter,
   GLS.Imposter,
   GLS.ParticleFX,
   GLS.ParticleFX,
   GLS.Graphics,
   GLS.Graphics,
-  GLScene.PersistentClasses,
-  GLS.PipelineTransformation,
   GLS.XOpenGL,
   GLS.XOpenGL,
-  GLScene.BaseClasses,
+  GLS.PipelineTransformation,
   GLS.TextureCombiners,
   GLS.TextureCombiners,
-  GLScene.TextureFormat,
   GLS.Material,
   GLS.Material,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLS.TerrainRenderer,
   GLS.TerrainRenderer,

+ 13 - 11
Examples/AdvDemos/GLSViewer/Source/fGLSViewer.pas

@@ -36,27 +36,29 @@ uses
   Vcl.BaseImageCollection,
   Vcl.BaseImageCollection,
   Vcl.ImageCollection,
   Vcl.ImageCollection,
 
 
+  GLScene.VectorTypes,
+  GLScene.VectorLists,
+  GLScene.Keyboard,
+  GLScene.VectorGeometry,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.PersistentClasses,
+  GLScene.TextureFormat,
+  GLScene.XCollection,
+
   GLS.Material,
   GLS.Material,
   GLS.Scene,
   GLS.Scene,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
   GLS.Objects,
   GLS.Objects,
-  GLScene.VectorGeometry,
   GLS.Texture,
   GLS.Texture,
   GLS.Context,
   GLS.Context,
-  GLScene.VectorLists,
   GLS.Cadencer,
   GLS.Cadencer,
-  GLScene.Coordinates,
-  GLScene.BaseClasses,
   GLS.State,
   GLS.State,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
-  GLScene.TextureFormat,
-  GLS.Color,
-  GLScene.XCollection,
+  GLScene.Color,
   GLS.Graphics,
   GLS.Graphics,
-  GLScene.PersistentClasses,
   GLS.MeshUtils,
   GLS.MeshUtils,
-  GLScene.VectorTypes,
   GLS.AsyncTimer,
   GLS.AsyncTimer,
   GLS.Graph,
   GLS.Graph,
   GLS.MeshBuilder,
   GLS.MeshBuilder,
@@ -311,8 +313,8 @@ type
   // Hidden line shader (specific implem for the viewer, *not* generic)
   // Hidden line shader (specific implem for the viewer, *not* generic)
   THiddenLineShader = class(TGLShader)
   THiddenLineShader = class(TGLShader)
   private
   private
-    LinesColor: TGLColorVector;
-    BackgroundColor: TGLColorVector;
+    LinesColor: TGColorVector;
+    BackgroundColor: TGColorVector;
     PassCount: Integer;
     PassCount: Integer;
   public
   public
     procedure DoApply(var rci: TGLRenderContextInfo; Sender: TObject); override;
     procedure DoApply(var rci: TGLRenderContextInfo; Sender: TObject); override;

+ 1 - 1
Examples/AdvDemos/PanoramViewer/fPanoViewerC.cpp

@@ -16,7 +16,7 @@
 #pragma link "GLScene.Coordinates"
 #pragma link "GLScene.Coordinates"
 
 
 #pragma link "GLS.Material"
 #pragma link "GLS.Material"
-#pragma link "GLS.Keyboard"
+#pragma link "GLScene.Keyboard"
 #pragma resource "*.dfm"
 #pragma resource "*.dfm"
 TForm1* Form1;
 TForm1* Form1;
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 1 - 1
Examples/AdvDemos/PanoramViewer/fPanoViewerC.h

@@ -22,7 +22,7 @@
 #include "GLScene.Coordinates.hpp"
 #include "GLScene.Coordinates.hpp"
 #include "GLS.Material.hpp"
 #include "GLS.Material.hpp"
 
 
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.FileJPEG.hpp"
 #include "GLS.FileJPEG.hpp"
 #include "GLScene.Utils.hpp"
 #include "GLScene.Utils.hpp"
 
 

+ 73 - 36
Examples/AdvDemos/PanoramViewer/fPanoViewerD.dfm

@@ -1,30 +1,39 @@
 object Form1: TForm1
 object Form1: TForm1
   Left = 201
   Left = 201
   Top = 129
   Top = 129
+  Margins.Left = 5
+  Margins.Top = 5
+  Margins.Right = 5
+  Margins.Bottom = 5
   Caption = 'Simple Spherical Pano Viewer'
   Caption = 'Simple Spherical Pano Viewer'
-  ClientHeight = 345
-  ClientWidth = 530
+  ClientHeight = 604
+  ClientWidth = 942
   Color = clBtnFace
   Color = clBtnFace
   Font.Charset = DEFAULT_CHARSET
   Font.Charset = DEFAULT_CHARSET
   Font.Color = clWindowText
   Font.Color = clWindowText
-  Font.Height = -11
+  Font.Height = -19
   Font.Name = 'MS Sans Serif'
   Font.Name = 'MS Sans Serif'
   Font.Style = []
   Font.Style = []
   KeyPreview = True
   KeyPreview = True
   OnCreate = FormCreate
   OnCreate = FormCreate
   OnKeyDown = FormKeyDown
   OnKeyDown = FormKeyDown
   OnMouseWheel = FormMouseWheel
   OnMouseWheel = FormMouseWheel
-  TextHeight = 13
+  PixelsPerInch = 168
+  TextHeight = 24
   object GLSceneViewer1: TGLSceneViewer
   object GLSceneViewer1: TGLSceneViewer
     Left = 0
     Left = 0
-    Top = 46
-    Width = 530
-    Height = 299
+    Top = 81
+    Width = 942
+    Height = 523
     Cursor = crHandPoint
     Cursor = crHandPoint
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Camera = GLCamera1
     Camera = GLCamera1
     Buffer.FaceCulling = False
     Buffer.FaceCulling = False
     Buffer.Lighting = False
     Buffer.Lighting = False
-    FieldOfView = 150.041778564453100000
+    FieldOfView = 162.606475830078100000
     PenAsTouch = False
     PenAsTouch = False
     Align = alClient
     Align = alClient
     OnMouseDown = GLSceneViewer1MouseDown
     OnMouseDown = GLSceneViewer1MouseDown
@@ -34,66 +43,94 @@ object Form1: TForm1
   object Panel1: TPanel
   object Panel1: TPanel
     Left = 0
     Left = 0
     Top = 0
     Top = 0
-    Width = 530
-    Height = 46
+    Width = 942
+    Height = 81
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Align = alTop
     Align = alTop
     BevelInner = bvRaised
     BevelInner = bvRaised
     BevelOuter = bvLowered
     BevelOuter = bvLowered
     Font.Charset = DEFAULT_CHARSET
     Font.Charset = DEFAULT_CHARSET
     Font.Color = clWindowText
     Font.Color = clWindowText
-    Font.Height = -11
+    Font.Height = -19
     Font.Name = 'Arial'
     Font.Name = 'Arial'
     Font.Style = []
     Font.Style = []
     ParentFont = False
     ParentFont = False
     TabOrder = 1
     TabOrder = 1
     object LabelYaw: TLabel
     object LabelYaw: TLabel
-      Left = 249
-      Top = 8
-      Width = 35
-      Height = 14
+      Left = 436
+      Top = 14
+      Width = 55
+      Height = 22
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Yaw: 0'
       Caption = 'Yaw: 0'
     end
     end
     object LabelPitch: TLabel
     object LabelPitch: TLabel
-      Left = 249
-      Top = 24
-      Width = 35
-      Height = 14
+      Left = 436
+      Top = 42
+      Width = 63
+      Height = 22
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Pitch: 0'
       Caption = 'Pitch: 0'
     end
     end
     object Label1: TLabel
     object Label1: TLabel
-      Left = 113
-      Top = 8
-      Width = 62
-      Height = 14
+      Left = 198
+      Top = 14
+      Width = 110
+      Height = 22
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Focal Length'
       Caption = 'Focal Length'
     end
     end
     object Label2: TLabel
     object Label2: TLabel
-      Left = 329
-      Top = 8
-      Width = 166
-      Height = 28
+      Left = 576
+      Top = 14
+      Width = 285
+      Height = 44
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Hold left mouse button to pan'#13#10'Zoom in/out with the mouse wheel'
       Caption = 'Hold left mouse button to pan'#13#10'Zoom in/out with the mouse wheel'
     end
     end
     object BtnLoad: TButton
     object BtnLoad: TButton
-      Left = 8
-      Top = 8
-      Width = 89
-      Height = 30
+      Left = 14
+      Top = 14
+      Width = 156
+      Height = 53
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Load Image...'
       Caption = 'Load Image...'
       TabOrder = 0
       TabOrder = 0
       OnClick = BtnLoadClick
       OnClick = BtnLoadClick
     end
     end
     object TrackBar1: TTrackBar
     object TrackBar1: TTrackBar
-      Left = 108
-      Top = 23
-      Width = 126
-      Height = 16
+      Left = 189
+      Top = 40
+      Width = 221
+      Height = 28
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Max = 100
       Max = 100
       Min = 10
       Min = 10
       Frequency = 10
       Frequency = 10
       Position = 40
       Position = 40
       TabOrder = 1
       TabOrder = 1
-      ThumbLength = 10
+      ThumbLength = 18
       TickMarks = tmBoth
       TickMarks = tmBoth
       TickStyle = tsNone
       TickStyle = tsNone
       OnChange = TrackBar1Change
       OnChange = TrackBar1Change

+ 6 - 5
Examples/AdvDemos/PanoramViewer/fPanoViewerD.pas

@@ -18,17 +18,18 @@ uses
   Vcl.ExtDlgs,
   Vcl.ExtDlgs,
   Vcl.Imaging.Jpeg,
   Vcl.Imaging.Jpeg,
 
 
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.VectorGeometry,
+  GLScene.Keyboard,
+  GLScene.XCollection,
 
 
   GLS.Scene,
   GLS.Scene,
   GLS.Objects,
   GLS.Objects,
   GLS.Texture,
   GLS.Texture,
-  GLScene.XCollection,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Material,
   GLS.Material,
-  GLScene.Coordinates,
-  GLScene.BaseClasses,
-  GLScene.VectorGeometry,
   GLScene.Utils;
   GLScene.Utils;
 
 
 type
 type
@@ -71,7 +72,7 @@ type
 var
 var
   Form1: TForm1;
   Form1: TForm1;
 
 
-implementation
+implementation  //------------------------------------------------------------
 
 
 {$R *.DFM}
 {$R *.DFM}
 
 

+ 1 - 1
Examples/Demos/behaviours/DCEDemo/fDceDemoC.h

@@ -33,7 +33,7 @@
 #include "GLS.FileMD2.hpp"
 #include "GLS.FileMD2.hpp"
 #include "GLScene.BaseClasses.hpp"
 #include "GLScene.BaseClasses.hpp"
 #include "GLS.RenderContextInfo.hpp"
 #include "GLS.RenderContextInfo.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.State.hpp"
 #include "GLS.State.hpp"
 #include "GLScene.VectorGeometry.hpp"
 #include "GLScene.VectorGeometry.hpp"
 #include "GLS.Context.hpp"
 #include "GLS.Context.hpp"

+ 1 - 1
Examples/Demos/behaviours/FPSMovement/fFPSMovementC.h

@@ -22,7 +22,7 @@
 #include "GLS.SimpleNavigation.hpp"
 #include "GLS.SimpleNavigation.hpp"
 #include "GLS.VectorFileObjects.hpp"
 #include "GLS.VectorFileObjects.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.GeomObjects.hpp"
 #include "GLS.GeomObjects.hpp"
 #include "GLScene.VectorGeometry.hpp"
 #include "GLScene.VectorGeometry.hpp"
 #include "GLS.Octree.hpp"
 #include "GLS.Octree.hpp"

+ 2 - 2
Examples/Demos/behaviours/Torque/fTorqueD.pas

@@ -23,7 +23,7 @@ uses
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLS.Behaviours,
   GLS.Behaviours,
   GLS.HUDObjects,
   GLS.HUDObjects,
-  GLS.Color,
+  GLScene.Color,
   GLS.BitmapFont,
   GLS.BitmapFont,
   GLS.GeomObjects,
   GLS.GeomObjects,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
@@ -107,7 +107,7 @@ procedure TFormTorque.GLSceneViewer1MouseDown(Sender: TObject; Button: TMouseBut
   Shift: TShiftState; X, Y: Integer);
   Shift: TShiftState; X, Y: Integer);
 var
 var
   pickedObject: TGLCustomSceneObject;
   pickedObject: TGLCustomSceneObject;
-  oldColor: TGLColorVector;
+  oldColor: TGColorVector;
   rci: TGLRenderContextInfo;
   rci: TGLRenderContextInfo;
 begin
 begin
   // if an object is picked...
   // if an object is picked...

+ 1 - 1
Examples/Demos/bench/megacube/fMegaCubeD.pas

@@ -18,7 +18,7 @@ uses
   GLS.Cadencer,
   GLS.Cadencer,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLS.SimpleNavigation;
   GLS.SimpleNavigation;

+ 1 - 1
Examples/Demos/bench/megaglasscube/fMegaglassD.pas

@@ -18,7 +18,7 @@ uses
   GLS.Cadencer,
   GLS.Cadencer,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLS.Material,
   GLS.Material,

+ 1 - 1
Examples/Demos/collisions/Raycast/fRayCastD.pas

@@ -24,7 +24,7 @@ uses
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.Utils;
   GLScene.Utils;
 
 

+ 1 - 1
Examples/Demos/collisions/TriangleBox/fTriangleBoxD.pas

@@ -22,7 +22,7 @@ uses
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
   GLS.Material,
   GLS.Material,
-  GLS.Color,
+  GLScene.Color,
   GLS.State,
   GLS.State,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,

+ 2 - 2
Examples/Demos/collisions/boxedin/fBoxC.cpp

@@ -4,7 +4,7 @@
 #include <tchar.h>
 #include <tchar.h>
 
 
 #include <stdlib.h>
 #include <stdlib.h>
-#include <GLS.Keyboard.hpp>
+#include <GLScene.Keyboard.hpp>
 #pragma hdrstop
 #pragma hdrstop
 
 
 #include "fBoxC.h"
 #include "fBoxC.h"
@@ -20,7 +20,7 @@
 #pragma link "GLS.Scene"
 #pragma link "GLS.Scene"
 #pragma link "GLS.File3DS"
 #pragma link "GLS.File3DS"
 #pragma link "GLScene.VectorGeometry"
 #pragma link "GLScene.VectorGeometry"
-#pragma link "GLS.Keyboard"
+#pragma link "GLScene.Keyboard"
 #pragma link "GLScene.Coordinates"
 #pragma link "GLScene.Coordinates"
 
 
 #pragma link "GLScene.BaseClasses"
 #pragma link "GLScene.BaseClasses"

+ 1 - 1
Examples/Demos/extrusion/tentacles/fTentaclesD.pas

@@ -20,7 +20,7 @@ uses
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.Texture,
   GLS.Texture,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses;
   GLScene.BaseClasses;

+ 1 - 1
Examples/Demos/glslshaders/Ocean/fOceanD.pas

@@ -36,7 +36,7 @@ uses
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLS.SimpleNavigation,
   GLS.SimpleNavigation,
   GLScene.TextureFormat,
   GLScene.TextureFormat,
-  GLS.Color;
+  GLScene.Color;
 
 
 type
 type
   TForm1 = class(TForm)
   TForm1 = class(TForm)

+ 1 - 1
Examples/Demos/glslshaders/ShadersLab/fShaderLabD.pas

@@ -42,7 +42,7 @@ uses
   GLS.State,
   GLS.State,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLScene.TextureFormat,
   GLScene.TextureFormat,
-  GLS.Color,
+  GLScene.Color,
   GLS.Graphics,
   GLS.Graphics,
   GLS.MeshUtils,
   GLS.MeshUtils,
   GLScene.Utils,
   GLScene.Utils,

+ 3 - 3
Examples/Demos/glslshaders/SimpleGLSL/fSimpleShaderC.cpp

@@ -7,7 +7,7 @@
 
 
 #include "fSimpleShaderC.h"
 #include "fSimpleShaderC.h"
 
 
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.Context.hpp"
 #include "GLS.Context.hpp"
 #include "GLS.File3DS.hpp"
 #include "GLS.File3DS.hpp"
 
 
@@ -26,7 +26,7 @@
 #pragma link "GLS.VectorFileObjects"
 #pragma link "GLS.VectorFileObjects"
 #pragma link "GLS.SceneViewer"
 #pragma link "GLS.SceneViewer"
 #pragma link "GLS.WindowsFont"
 #pragma link "GLS.WindowsFont"
-#pragma link "GLS.Keyboard"
+#pragma link "GLScene.Keyboard"
 #pragma link "GLS.Context"
 #pragma link "GLS.Context"
 #pragma link "GLS.File3DS"
 #pragma link "GLS.File3DS"
 
 
@@ -177,7 +177,7 @@ void __fastcall TForm1::Timer1Timer(TObject* Sender)
     Caption = Format("Simple GLSL Shader [%.2f FPS]",
     Caption = Format("Simple GLSL Shader [%.2f FPS]",
         ARRAYOFCONST((GLSceneViewer1->FramesPerSecond())));
         ARRAYOFCONST((GLSceneViewer1->FramesPerSecond())));
     GLHUDText1->Text =
     GLHUDText1->Text =
-        "GLS.Keyboard [1,2,3,4,5,6,7,8,9,0 ] Current Shader: " + CurrShaderName;
+        "GLScene.Keyboard [1,2,3,4,5,6,7,8,9,0 ] Current Shader: " + CurrShaderName;
     GLSceneViewer1->ResetPerformanceMonitor();
     GLSceneViewer1->ResetPerformanceMonitor();
 }
 }
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 7 - 7
Examples/Demos/graph/heightfield/fHeightFieldD.pas

@@ -23,7 +23,7 @@ uses
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses;
   GLScene.BaseClasses;
 
 
@@ -71,11 +71,11 @@ type
   private
   private
 
 
     procedure Formula1(const X, Y: Single; var z: Single;
     procedure Formula1(const X, Y: Single; var z: Single;
-      var Color: TGLColorVector; var texPoint: TTexPoint);
+      var Color: TGColorVector; var texPoint: TTexPoint);
     procedure Formula2(const X, Y: Single; var z: Single;
     procedure Formula2(const X, Y: Single; var z: Single;
-      var Color: TGLColorVector; var texPoint: TTexPoint);
+      var Color: TGColorVector; var texPoint: TTexPoint);
     procedure Formula3(const X, Y: Single; var z: Single;
     procedure Formula3(const X, Y: Single; var z: Single;
-      var Color: TGLColorVector; var texPoint: TTexPoint);
+      var Color: TGColorVector; var texPoint: TTexPoint);
   public
   public
     mx, my: Integer;
     mx, my: Integer;
   end;
   end;
@@ -97,7 +97,7 @@ begin
 end;
 end;
 
 
 procedure TFormHeightField.Formula1(const X, Y: Single; var z: Single;
 procedure TFormHeightField.Formula1(const X, Y: Single; var z: Single;
-  var Color: TGLColorVector; var texPoint: TTexPoint);
+  var Color: TGColorVector; var texPoint: TTexPoint);
 begin
 begin
   // first formula
   // first formula
   z := VectorNorm(X, Y);
   z := VectorNorm(X, Y);
@@ -106,7 +106,7 @@ begin
 end;
 end;
 
 
 procedure TFormHeightField.Formula2(const X, Y: Single; var z: Single;
 procedure TFormHeightField.Formula2(const X, Y: Single; var z: Single;
-  var Color: TGLColorVector; var texPoint: TTexPoint);
+  var Color: TGColorVector; var texPoint: TTexPoint);
 begin
 begin
   // 2nd formula
   // 2nd formula
   z := 0.5 * cos(X * 6.28) * sin(Sqrt(abs(Y)) * 6.28);
   z := 0.5 * cos(X * 6.28) * sin(Sqrt(abs(Y)) * 6.28);
@@ -114,7 +114,7 @@ begin
 end;
 end;
 
 
 procedure TFormHeightField.Formula3(const X, Y: Single; var z: Single;
 procedure TFormHeightField.Formula3(const X, Y: Single; var z: Single;
-  var Color: TGLColorVector; var texPoint: TTexPoint);
+  var Color: TGColorVector; var texPoint: TTexPoint);
 begin
 begin
   // 3rd formula, dynamic
   // 3rd formula, dynamic
   z := 1 / (1 + VectorNorm(Sphere1.position.X - X, Sphere1.position.Y - Y));
   z := 1 / (1 + VectorNorm(Sphere1.position.X - X, Sphere1.position.Y - Y));

+ 1 - 1
Examples/Demos/graph/points/fPointsD.pas

@@ -22,7 +22,7 @@ uses
   GLScene.VectorLists,
   GLScene.VectorLists,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Texture,
   GLS.Texture,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses;
   GLScene.BaseClasses;

+ 1 - 1
Examples/Demos/interface/GameMenu/fGameMenuC.h

@@ -24,7 +24,7 @@
 #include "GLS.GameMenu.hpp"
 #include "GLS.GameMenu.hpp"
 #include "GLS.Cadencer.hpp"
 #include "GLS.Cadencer.hpp"
 #include "GLS.Texture.hpp"
 #include "GLS.Texture.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 
 
 #include "GLS.Material.hpp"
 #include "GLS.Material.hpp"
 #include "GLScene.Coordinates.hpp"
 #include "GLScene.Coordinates.hpp"

+ 1 - 1
Examples/Demos/interface/GizmoEx/fGizmoExC.h

@@ -24,7 +24,7 @@
 #include "GLS.Scene.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.WindowsFont.hpp"
 #include "GLS.WindowsFont.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.GizmoEx.hpp"
 #include "GLS.GizmoEx.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 1 - 1
Examples/Demos/interface/HFPick/fHFPickD.pas

@@ -20,7 +20,7 @@ uses
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.Texture,
   GLS.Texture,
   GLS.Objects,
   GLS.Objects,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses;
   GLScene.BaseClasses;
 
 

+ 1 - 1
Examples/Demos/interface/Pick/fPickD.pas

@@ -15,7 +15,7 @@ uses
   GLS.Texture,
   GLS.Texture,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,

+ 1 - 1
Examples/Demos/interface/camera/fCameraC.h

@@ -17,7 +17,7 @@
 #include "GLS.Scene.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.GeomObjects.hpp"
 #include "GLS.GeomObjects.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 class TForm1 : public TForm
 class TForm1 : public TForm

+ 7 - 6
Examples/Demos/materials/TransparAdv/fTransparAdvD.pas

@@ -18,7 +18,7 @@ uses
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.Context,
   GLS.Context,
   GLS.State,
   GLS.State,
-  GLS.Color,
+  GLScene.Color,
   GLS.Scene,
   GLS.Scene,
   GLS.Objects,
   GLS.Objects,
   GLScene.Coordinates,
   GLScene.Coordinates,
@@ -39,6 +39,7 @@ uses
   GLS.BitmapFont,
   GLS.BitmapFont,
   GLS.WindowsFont,
   GLS.WindowsFont,
   GLScene.XCollection,
   GLScene.XCollection,
+  GLScene.Keyboard,
   GLS.CompositeImage,
   GLS.CompositeImage,
 
 
   GLScene.Utils;
   GLScene.Utils;
@@ -131,11 +132,11 @@ end;
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 procedure TFormTransparAdv.CreateShapes;
 procedure TFormTransparAdv.CreateShapes;
 const
 const
-  vLtBlue: TGLColorVector = (X: 0.00; Y: 0.00; Z: 1.00; W:0.90);
-  vLtPink: TGLColorVector = (X: 0.40; Y:0.00; Z:0.20; W:0.50);
-  vLtYellow: TGLColorVector = (X: 0.98; Y:0.96; Z:0.14; W:0.30);
-  vLtMagenta: TGLColorVector = (X: 0.83; Y:0.04; Z:0.83; W:0.70);
-  vLtGreen: TGLColorVector = (X: 0.05; Y:0.98; Z:0.14; W:0.30);
+  vLtBlue: TGColorVector = (X: 0.00; Y: 0.00; Z: 1.00; W:0.90);
+  vLtPink: TGColorVector = (X: 0.40; Y:0.00; Z:0.20; W:0.50);
+  vLtYellow: TGColorVector = (X: 0.98; Y:0.96; Z:0.14; W:0.30);
+  vLtMagenta: TGColorVector = (X: 0.83; Y:0.04; Z:0.83; W:0.70);
+  vLtGreen: TGColorVector = (X: 0.05; Y:0.98; Z:0.14; W:0.30);
 var
 var
   vd: array [0 .. 3] of TGLVertexData;
   vd: array [0 .. 3] of TGLVertexData;
 
 

+ 1 - 1
Examples/Demos/materials/customquad/fCustomQuadD.pas

@@ -19,7 +19,7 @@ uses
   GLS.Behaviours,
   GLS.Behaviours,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLS.Material,
   GLS.Material,
   GLScene.Coordinates,
   GLScene.Coordinates,

+ 3 - 3
Examples/Demos/materials/multipass/fMultiPassD.pas

@@ -19,7 +19,7 @@ uses
   GLS.Context,
   GLS.Context,
   GLS.GeomObjects,
   GLS.GeomObjects,
   GLS.State,
   GLS.State,
-  GLS.Color,
+  GLScene.Color,
   GLS.Material,
   GLS.Material,
   GLScene.Coordinates,
   GLScene.Coordinates,
  
  
@@ -63,7 +63,7 @@ type
 
 
   THiddenLineShader = class(TGLShader)
   THiddenLineShader = class(TGLShader)
   private
   private
-    BackgroundColor, LineColor: TGLColorVector;
+    BackgroundColor, LineColor: TGColorVector;
     PassCount: Integer;
     PassCount: Integer;
   public
   public
     procedure DoApply(var rci: TGLRenderContextInfo; Sender: TObject); override;
     procedure DoApply(var rci: TGLRenderContextInfo; Sender: TObject); override;
@@ -72,7 +72,7 @@ type
 
 
   TOutLineShader = class(TGLShader)
   TOutLineShader = class(TGLShader)
   private
   private
-    BackgroundColor, LineColor: TGLColorVector;
+    BackgroundColor, LineColor: TGColorVector;
     OutlineSmooth, Lighting: Boolean;
     OutlineSmooth, Lighting: Boolean;
     OutlineWidth, Oldlinewidth: Single;
     OutlineWidth, Oldlinewidth: Single;
     PassCount: Integer;
     PassCount: Integer;

+ 2 - 2
Examples/Demos/materials/multipass/fMultipassC.h

@@ -50,7 +50,7 @@ class THiddenLineShader : public TGLShader
     __fastcall virtual THiddenLineShader(TComponent* AOwner);
     __fastcall virtual THiddenLineShader(TComponent* AOwner);
     __fastcall virtual ~THiddenLineShader(void);
     __fastcall virtual ~THiddenLineShader(void);
 
 
-    TGLColorVector BackgroundColor, LineColor;
+    TGColorVector BackgroundColor, LineColor;
     int PassCount;
     int PassCount;
 
 
     void __fastcall DoApply(TGLRenderContextInfo &rci, System::TObject* Sender);
     void __fastcall DoApply(TGLRenderContextInfo &rci, System::TObject* Sender);
@@ -64,7 +64,7 @@ class TOutLineShader : public TGLShader
     __fastcall virtual TOutLineShader(TComponent* AOwner);
     __fastcall virtual TOutLineShader(TComponent* AOwner);
     __fastcall virtual ~TOutLineShader(void);
     __fastcall virtual ~TOutLineShader(void);
 
 
-    TGLColorVector BackgroundColor, LineColor;
+    TGColorVector BackgroundColor, LineColor;
     bool OutlineSmooth, Lighting;
     bool OutlineSmooth, Lighting;
     float OutlineWidth, OldlineWidth;
     float OutlineWidth, OldlineWidth;
     int PassCount;
     int PassCount;

+ 1 - 1
Examples/Demos/meshes/actortwocam/fActorTwocamC.h

@@ -25,7 +25,7 @@
 #include "GLS.Navigator.hpp"
 #include "GLS.Navigator.hpp"
 #include "GLS.SkyDome.hpp"
 #include "GLS.SkyDome.hpp"
 #include "GLS.VectorFileObjects.hpp"
 #include "GLS.VectorFileObjects.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLScene.VectorGeometry.hpp"
 #include "GLScene.VectorGeometry.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 12 - 10
Examples/Demos/meshes/actortwocam/fActorTwocamD.pas

@@ -14,27 +14,29 @@ uses
   Vcl.ExtCtrls,
   Vcl.ExtCtrls,
   Vcl.ComCtrls,
   Vcl.ComCtrls,
   Vcl.Forms,
   Vcl.Forms,
+  Vcl.StdCtrls,
+  Vcl.Graphics,
 
 
-  GLS.Scene,
+  GLScene.Keyboard,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.Utils,
+  GLScene.VectorGeometry,
+  GLScene.XCollection,
+  GLScene.PersistentClasses,
+
+  GLS.Scene,
   GLS.Objects,
   GLS.Objects,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
-  StdCtrls,
-  Graphics,
   GLS.SkyDome,
   GLS.SkyDome,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Navigator,
   GLS.Navigator,
   GLS.FileMD2,
   GLS.FileMD2,
   GLS.File3DS,
   GLS.File3DS,
   GLS.GeomObjects,
   GLS.GeomObjects,
-
-  GLScene.Coordinates,
-  GLScene.BaseClasses,
-  GLScene.Utils,
-  GLScene.VectorGeometry,
-  GLScene.XCollection,
-  GLScene.PersistentClasses, GLS.DCE;
+  GLS.DCE;
 
 
 type
 type
   TFormActorTwocam = class(TForm)
   TFormActorTwocam = class(TForm)

+ 1 - 1
Examples/Demos/meshes/formula/fFormulaC.cpp

@@ -35,7 +35,7 @@ TAffineVector __fastcall TForm1::MakeVect(const float aX, const float aY)
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
 void __fastcall TForm1::AddTriangle(const TAffineVector p1,
 void __fastcall TForm1::AddTriangle(const TAffineVector p1,
-	const TAffineVector p2, const TAffineVector p3, const TGLColorVector color)
+	const TAffineVector p2, const TAffineVector p3, const TGColorVector color)
 {
 {
 	Mesh1->Vertices->AddVertex(p1, NullVector, color);
 	Mesh1->Vertices->AddVertex(p1, NullVector, color);
 	Mesh1->Vertices->AddVertex(p2, NullVector, color);
 	Mesh1->Vertices->AddVertex(p2, NullVector, color);

+ 1 - 1
Examples/Demos/meshes/formula/fFormulaC.h

@@ -63,7 +63,7 @@ private:	// User declarations
 	void __fastcall AddTriangle(const TAffineVector p1,
 	void __fastcall AddTriangle(const TAffineVector p1,
 						  const TAffineVector p2,
 						  const TAffineVector p2,
 						  const TAffineVector p3,
 						  const TAffineVector p3,
-						  const TGLColorVector color);
+						  const TGColorVector color);
 public:		// User declarations
 public:		// User declarations
 	__fastcall TForm1(TComponent* Owner);
 	__fastcall TForm1(TComponent* Owner);
 };
 };

+ 3 - 3
Examples/Demos/meshes/formula/fFormulaD.pas

@@ -23,7 +23,7 @@ uses
   GLS.Mesh,
   GLS.Mesh,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.State,
   GLS.State,
-  GLS.Color,
+  GLScene.Color,
  
  
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses;
   GLScene.BaseClasses;
@@ -58,7 +58,7 @@ type
     invRes1, invRes2 : Single;
     invRes1, invRes2 : Single;
     function MakeVect(const aX, aY : Single) : TAffineVector;
     function MakeVect(const aX, aY : Single) : TAffineVector;
     procedure AddTriangle(const p1, p2, p3 : TAffineVector;
     procedure AddTriangle(const p1, p2, p3 : TAffineVector;
-                          const color : TGLColorVector);
+                          const color : TGColorVector);
   public
   public
      
      
   end;
   end;
@@ -80,7 +80,7 @@ begin
 end;
 end;
 
 
 procedure TFormFormula.AddTriangle(const p1, p2, p3 : TAffineVector;
 procedure TFormFormula.AddTriangle(const p1, p2, p3 : TAffineVector;
-                         const color : TGLColorVector);
+                         const color : TGColorVector);
 begin
 begin
   with Mesh1.Vertices do begin
   with Mesh1.Vertices do begin
      AddVertex(p1, NullVector, color);
      AddVertex(p1, NullVector, color);

+ 1 - 1
Examples/Demos/meshes/portal/fPortalC.h

@@ -20,7 +20,7 @@
 #include "GLS.Portal.hpp"
 #include "GLS.Portal.hpp"
 #include "GLS.VectorFileObjects.hpp"
 #include "GLS.VectorFileObjects.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "JPeg.hpp"
 #include "JPeg.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 145 - 94
Examples/Demos/meshes/portal/fPortalD.dfm

@@ -1,126 +1,165 @@
 object FormPortal: TFormPortal
 object FormPortal: TFormPortal
   Left = 74
   Left = 74
   Top = 84
   Top = 84
+  Margins.Left = 5
+  Margins.Top = 5
+  Margins.Right = 5
+  Margins.Bottom = 5
   Caption = 'Portal'
   Caption = 'Portal'
-  ClientHeight = 528
-  ClientWidth = 810
+  ClientHeight = 924
+  ClientWidth = 1432
   Color = clBtnFace
   Color = clBtnFace
   Font.Charset = DEFAULT_CHARSET
   Font.Charset = DEFAULT_CHARSET
   Font.Color = clWindowText
   Font.Color = clWindowText
-  Font.Height = -11
+  Font.Height = -19
   Font.Name = 'MS Sans Serif'
   Font.Name = 'MS Sans Serif'
   Font.Style = []
   Font.Style = []
   Position = poScreenCenter
   Position = poScreenCenter
   WindowState = wsMaximized
   WindowState = wsMaximized
   OnCreate = FormCreate
   OnCreate = FormCreate
+  PixelsPerInch = 168
   DesignSize = (
   DesignSize = (
-    810
-    528)
-  TextHeight = 13
+    1432
+    924)
+  TextHeight = 24
   object Label1: TLabel
   object Label1: TLabel
-    Left = 8
-    Top = 8
-    Width = 75
-    Height = 18
+    Left = 14
+    Top = 14
+    Width = 135
+    Height = 32
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Maze Map'
     Caption = 'Maze Map'
     Font.Charset = ANSI_CHARSET
     Font.Charset = ANSI_CHARSET
     Font.Color = clWindowText
     Font.Color = clWindowText
-    Font.Height = -16
+    Font.Height = -28
     Font.Name = 'Arial'
     Font.Name = 'Arial'
     Font.Style = [fsBold, fsItalic]
     Font.Style = [fsBold, fsItalic]
     ParentFont = False
     ParentFont = False
   end
   end
   object Label2: TLabel
   object Label2: TLabel
-    Left = 304
-    Top = 8
-    Width = 61
-    Height = 18
+    Left = 532
+    Top = 14
+    Width = 108
+    Height = 32
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = '3D View'
     Caption = '3D View'
     Font.Charset = ANSI_CHARSET
     Font.Charset = ANSI_CHARSET
     Font.Color = clWindowText
     Font.Color = clWindowText
-    Font.Height = -16
+    Font.Height = -28
     Font.Name = 'Arial'
     Font.Name = 'Arial'
     Font.Style = [fsBold, fsItalic]
     Font.Style = [fsBold, fsItalic]
     ParentFont = False
     ParentFont = False
   end
   end
   object Label3: TLabel
   object Label3: TLabel
-    Left = 24
-    Top = 312
-    Width = 241
-    Height = 42
+    Left = 42
+    Top = 546
+    Width = 421
+    Height = 66
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 
     Caption = 
       'To modify map, edit cells with keyboard :'#13#10'- any non-empty cell ' +
       'To modify map, edit cells with keyboard :'#13#10'- any non-empty cell ' +
       'is a wall'#13#10'- click '#39'process'#39' to commit changes or check '#39'auto'#39
       'is a wall'#13#10'- click '#39'process'#39' to commit changes or check '#39'auto'#39
     Font.Charset = ANSI_CHARSET
     Font.Charset = ANSI_CHARSET
     Font.Color = clWindowText
     Font.Color = clWindowText
-    Font.Height = -11
+    Font.Height = -19
     Font.Name = 'Arial'
     Font.Name = 'Arial'
     Font.Style = []
     Font.Style = []
     ParentFont = False
     ParentFont = False
   end
   end
   object GLSceneViewer1: TGLSceneViewer
   object GLSceneViewer1: TGLSceneViewer
-    Left = 296
-    Top = 32
-    Width = 522
-    Height = 521
+    Left = 518
+    Top = 56
+    Width = 914
+    Height = 912
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Camera = GLCamera1
     Camera = GLCamera1
     Buffer.FogEnvironment.FogColor.Color = {00000000000000008180003F0000803F}
     Buffer.FogEnvironment.FogColor.Color = {00000000000000008180003F0000803F}
     Buffer.FogEnvironment.FogStart = 1.000000000000000000
     Buffer.FogEnvironment.FogStart = 1.000000000000000000
     Buffer.FogEnvironment.FogEnd = 10.000000000000000000
     Buffer.FogEnvironment.FogEnd = 10.000000000000000000
     Buffer.BackgroundColor = clNavy
     Buffer.BackgroundColor = clNavy
-    FieldOfView = 158.269744873046900000
+    FieldOfView = 167.485137939453100000
     PenAsTouch = False
     PenAsTouch = False
     Anchors = [akLeft, akTop, akRight, akBottom]
     Anchors = [akLeft, akTop, akRight, akBottom]
     OnMouseDown = GLSceneViewer1MouseDown
     OnMouseDown = GLSceneViewer1MouseDown
     TabOrder = 0
     TabOrder = 0
-    ExplicitWidth = 476
-    ExplicitHeight = 453
   end
   end
   object BUForward: TButton
   object BUForward: TButton
-    Left = 96
-    Top = 360
-    Width = 89
-    Height = 25
+    Left = 168
+    Top = 630
+    Width = 156
+    Height = 44
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Forward (Z/W)'
     Caption = 'Forward (Z/W)'
     TabOrder = 1
     TabOrder = 1
     OnClick = BUForwardClick
     OnClick = BUForwardClick
   end
   end
   object BUTurnLeft: TButton
   object BUTurnLeft: TButton
-    Left = 8
-    Top = 376
-    Width = 81
-    Height = 25
+    Left = 14
+    Top = 658
+    Width = 142
+    Height = 44
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Turn Left (Q/A)'
     Caption = 'Turn Left (Q/A)'
     TabOrder = 2
     TabOrder = 2
     OnClick = BUTurnLeftClick
     OnClick = BUTurnLeftClick
   end
   end
   object BUTurnRight: TButton
   object BUTurnRight: TButton
-    Left = 192
-    Top = 376
-    Width = 89
-    Height = 25
+    Left = 336
+    Top = 658
+    Width = 156
+    Height = 44
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'TurnRight (D)'
     Caption = 'TurnRight (D)'
     TabOrder = 3
     TabOrder = 3
     OnClick = BUTurnRightClick
     OnClick = BUTurnRightClick
   end
   end
   object BUBackward: TButton
   object BUBackward: TButton
-    Left = 96
-    Top = 392
-    Width = 89
-    Height = 25
+    Left = 168
+    Top = 686
+    Width = 156
+    Height = 44
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Backward (S)'
     Caption = 'Backward (S)'
     TabOrder = 4
     TabOrder = 4
     OnClick = BUBackwardClick
     OnClick = BUBackwardClick
   end
   end
   object SGMap: TStringGrid
   object SGMap: TStringGrid
-    Left = 8
-    Top = 32
-    Width = 272
-    Height = 272
+    Left = 14
+    Top = 56
+    Width = 476
+    Height = 476
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     BorderStyle = bsNone
     BorderStyle = bsNone
     ColCount = 16
     ColCount = 16
-    DefaultColWidth = 16
-    DefaultRowHeight = 16
+    DefaultColWidth = 28
+    DefaultRowHeight = 28
     FixedCols = 0
     FixedCols = 0
     RowCount = 16
     RowCount = 16
     FixedRows = 0
     FixedRows = 0
@@ -129,62 +168,74 @@ object FormPortal: TFormPortal
     TabOrder = 5
     TabOrder = 5
     OnSetEditText = SGMapSetEditText
     OnSetEditText = SGMapSetEditText
     ColWidths = (
     ColWidths = (
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16)
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28)
     RowHeights = (
     RowHeights = (
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16
-      16)
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28
+      28)
   end
   end
   object BBProcess: TButton
   object BBProcess: TButton
-    Left = 200
-    Top = 8
-    Width = 75
-    Height = 17
+    Left = 350
+    Top = 14
+    Width = 131
+    Height = 30
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Process'
     Caption = 'Process'
     TabOrder = 6
     TabOrder = 6
     OnClick = BBProcessClick
     OnClick = BBProcessClick
   end
   end
   object CBAuto: TCheckBox
   object CBAuto: TCheckBox
-    Left = 152
-    Top = 8
-    Width = 41
-    Height = 17
+    Left = 266
+    Top = 14
+    Width = 72
+    Height = 30
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Auto'
     Caption = 'Auto'
     TabOrder = 7
     TabOrder = 7
   end
   end
   object CBFog: TCheckBox
   object CBFog: TCheckBox
-    Left = 640
-    Top = 8
-    Width = 49
-    Height = 17
+    Left = 1120
+    Top = 14
+    Width = 86
+    Height = 30
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Caption = 'Fog'
     Caption = 'Fog'
     TabOrder = 8
     TabOrder = 8
     OnClick = CBFogClick
     OnClick = CBFogClick

+ 10 - 6
Examples/Demos/meshes/portal/fPortalD.pas

@@ -18,20 +18,24 @@ uses
   Vcl.Imaging.Jpeg,
   Vcl.Imaging.Jpeg,
 
 
   GLS.Scene,
   GLS.Scene,
+
   GLScene.VectorTypes,
   GLScene.VectorTypes,
+  GLScene.PersistentClasses,
+  GLScene.Keyboard,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.XCollection,
+  GLScene.Utils,
+
   GLS.Texture,
   GLS.Texture,
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
-  GLScene.PersistentClasses,
   GLS.Objects,
   GLS.Objects,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Portal,
   GLS.Portal,
   GLS.SceneViewer,
   GLS.SceneViewer,
- 
+
   GLS.Material,
   GLS.Material,
-  GLScene.Coordinates,
-  GLScene.BaseClasses,
-  GLScene.XCollection,
-  GLScene.Utils, GLS.SimpleNavigation;
+  GLS.SimpleNavigation;
 
 
 type
 type
   TFormPortal = class(TForm)
   TFormPortal = class(TForm)

+ 1 - 1
Examples/Demos/meshes/shadedterrain/fShadedTerrainC.h

@@ -27,7 +27,7 @@
 
 
 #include "GLS.Material.hpp"
 #include "GLS.Material.hpp"
 
 
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include <jpeg.hpp>
 #include <jpeg.hpp>
 #include "GLSL.TextureShaders.hpp"             // Pascal unit
 #include "GLSL.TextureShaders.hpp"             // Pascal unit
 
 

+ 123 - 62
Examples/Demos/meshes/shadedterrain/fShadedTerrainD.dfm

@@ -1,13 +1,17 @@
 object FormShadedTerrain: TFormShadedTerrain
 object FormShadedTerrain: TFormShadedTerrain
   Left = 165
   Left = 165
   Top = 146
   Top = 146
+  Margins.Left = 5
+  Margins.Top = 5
+  Margins.Right = 5
+  Margins.Bottom = 5
   Caption = 'Shaded Terrain'
   Caption = 'Shaded Terrain'
-  ClientHeight = 508
-  ClientWidth = 782
+  ClientHeight = 889
+  ClientWidth = 1383
   Color = clBtnFace
   Color = clBtnFace
   Font.Charset = DEFAULT_CHARSET
   Font.Charset = DEFAULT_CHARSET
   Font.Color = clWindowText
   Font.Color = clWindowText
-  Font.Height = -11
+  Font.Height = -19
   Font.Name = 'MS Sans Serif'
   Font.Name = 'MS Sans Serif'
   Font.Style = []
   Font.Style = []
   Position = poScreenCenter
   Position = poScreenCenter
@@ -15,12 +19,17 @@ object FormShadedTerrain: TFormShadedTerrain
   OnKeyPress = FormKeyPress
   OnKeyPress = FormKeyPress
   OnMouseWheel = FormMouseWheel
   OnMouseWheel = FormMouseWheel
   OnShow = FormShow
   OnShow = FormShow
-  TextHeight = 13
+  PixelsPerInch = 168
+  TextHeight = 24
   object GLSceneViewer1: TGLSceneViewer
   object GLSceneViewer1: TGLSceneViewer
     Left = 0
     Left = 0
-    Top = 65
-    Width = 782
-    Height = 443
+    Top = 114
+    Width = 1383
+    Height = 775
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Camera = GLCamera1
     Camera = GLCamera1
     BeforeRender = GLSceneViewer1BeforeRender
     BeforeRender = GLSceneViewer1BeforeRender
     Buffer.FogEnvironment.FogColor.Color = {0000803F0000803F0000803F0000803F}
     Buffer.FogEnvironment.FogColor.Color = {0000803F0000803F0000803F0000803F}
@@ -30,7 +39,7 @@ object FormShadedTerrain: TFormShadedTerrain
     Buffer.BackgroundColor = clGray
     Buffer.BackgroundColor = clGray
     Buffer.FogEnable = True
     Buffer.FogEnable = True
     Buffer.Lighting = False
     Buffer.Lighting = False
-    FieldOfView = 154.559234619140600000
+    FieldOfView = 165.295242309570300000
     PenAsTouch = False
     PenAsTouch = False
     Align = alClient
     Align = alClient
     OnMouseDown = GLSceneViewer1MouseDown
     OnMouseDown = GLSceneViewer1MouseDown
@@ -40,94 +49,138 @@ object FormShadedTerrain: TFormShadedTerrain
   object Panel1: TPanel
   object Panel1: TPanel
     Left = 0
     Left = 0
     Top = 0
     Top = 0
-    Width = 782
-    Height = 65
+    Width = 1383
+    Height = 114
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Align = alTop
     Align = alTop
     BevelOuter = bvLowered
     BevelOuter = bvLowered
     TabOrder = 1
     TabOrder = 1
     object Label1: TLabel
     object Label1: TLabel
-      Left = 8
-      Top = 8
-      Width = 113
-      Height = 13
+      Left = 14
+      Top = 14
+      Width = 208
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Bumpmap Sub-sampling'
       Caption = 'Bumpmap Sub-sampling'
     end
     end
     object LASubFactor: TLabel
     object LASubFactor: TLabel
-      Left = 306
-      Top = 8
-      Width = 62
-      Height = 13
+      Left = 536
+      Top = 14
+      Width = 110
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'LASubFactor'
       Caption = 'LASubFactor'
     end
     end
     object Label2: TLabel
     object Label2: TLabel
-      Left = 8
-      Top = 40
-      Width = 89
-      Height = 13
+      Left = 14
+      Top = 70
+      Width = 159
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Bumpmap Intensity'
       Caption = 'Bumpmap Intensity'
     end
     end
     object LABumpIntensity: TLabel
     object LABumpIntensity: TLabel
-      Left = 308
-      Top = 38
-      Width = 59
-      Height = 13
+      Left = 539
+      Top = 67
+      Width = 102
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'LABIntensity'
       Caption = 'LABIntensity'
     end
     end
     object LaScaleZ: TLabel
     object LaScaleZ: TLabel
-      Left = 474
-      Top = 8
-      Width = 37
-      Height = 13
+      Left = 830
+      Top = 14
+      Width = 64
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Scale Z'
       Caption = 'Scale Z'
     end
     end
     object LabelZ: TLabel
     object LabelZ: TLabel
-      Left = 703
-      Top = 8
-      Width = 47
-      Height = 13
+      Left = 1230
+      Top = 14
+      Width = 82
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'LAScaleZ'
       Caption = 'LAScaleZ'
     end
     end
     object LabelContInterval: TLabel
     object LabelContInterval: TLabel
-      Left = 703
-      Top = 35
-      Width = 70
-      Height = 13
+      Left = 1230
+      Top = 61
+      Width = 121
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'LAContInterval'
       Caption = 'LAContInterval'
     end
     end
     object TBSubSampling: TTrackBar
     object TBSubSampling: TTrackBar
-      Left = 127
-      Top = 3
-      Width = 177
-      Height = 29
+      Left = 222
+      Top = 5
+      Width = 310
+      Height = 51
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Max = 3
       Max = 3
       PageSize = 1
       PageSize = 1
       Position = 1
       Position = 1
       TabOrder = 0
       TabOrder = 0
       TabStop = False
       TabStop = False
-      ThumbLength = 10
+      ThumbLength = 18
       TickMarks = tmBoth
       TickMarks = tmBoth
       OnChange = TBSubSamplingChange
       OnChange = TBSubSamplingChange
     end
     end
     object TBIntensity: TTrackBar
     object TBIntensity: TTrackBar
-      Left = 125
-      Top = 30
-      Width = 177
-      Height = 29
+      Left = 219
+      Top = 53
+      Width = 310
+      Height = 50
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Max = 100
       Max = 100
       PageSize = 1
       PageSize = 1
       Frequency = 10
       Frequency = 10
       Position = 40
       Position = 40
       TabOrder = 1
       TabOrder = 1
       TabStop = False
       TabStop = False
-      ThumbLength = 10
+      ThumbLength = 18
       TickMarks = tmBoth
       TickMarks = tmBoth
       OnChange = TBIntensityChange
       OnChange = TBIntensityChange
     end
     end
     object TBContourInterval: TTrackBar
     object TBContourInterval: TTrackBar
-      Left = 520
-      Top = 30
-      Width = 177
-      Height = 29
+      Left = 910
+      Top = 53
+      Width = 310
+      Height = 50
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Max = 4000
       Max = 4000
       Min = 1000
       Min = 1000
       PageSize = 1
       PageSize = 1
@@ -135,29 +188,37 @@ object FormShadedTerrain: TFormShadedTerrain
       Position = 2000
       Position = 2000
       TabOrder = 2
       TabOrder = 2
       TabStop = False
       TabStop = False
-      ThumbLength = 10
+      ThumbLength = 18
       TickMarks = tmBoth
       TickMarks = tmBoth
     end
     end
     object TBScaleZ: TTrackBar
     object TBScaleZ: TTrackBar
-      Left = 520
-      Top = 1
-      Width = 177
-      Height = 29
+      Left = 910
+      Top = 2
+      Width = 310
+      Height = 51
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Max = 50
       Max = 50
       PageSize = 1
       PageSize = 1
       Frequency = 10
       Frequency = 10
       Position = 10
       Position = 10
       TabOrder = 3
       TabOrder = 3
       TabStop = False
       TabStop = False
-      ThumbLength = 10
+      ThumbLength = 18
       TickMarks = tmBoth
       TickMarks = tmBoth
       OnChange = TBScaleZChange
       OnChange = TBScaleZChange
     end
     end
     object CBContourIntervals: TCheckBox
     object CBContourIntervals: TCheckBox
-      Left = 422
-      Top = 35
-      Width = 97
-      Height = 17
+      Left = 739
+      Top = 61
+      Width = 169
+      Height = 30
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Contour Interval'
       Caption = 'Contour Interval'
       Checked = True
       Checked = True
       State = cbChecked
       State = cbChecked

+ 6 - 4
Examples/Demos/meshes/shadedterrain/fShadedTerrainD.pas

@@ -20,8 +20,13 @@ uses
 
 
   GLS.Scene,
   GLS.Scene,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
-  GLS.Objects,
+  GLScene.VectorTypes,
+  GLScene.VectorGeometry,
+  GLScene.Keyboard,
   GLScene.XCollection,
   GLScene.XCollection,
+  GLScene.Coordinates,
+
+  GLS.Objects,
   GLS.TerrainRenderer,
   GLS.TerrainRenderer,
   GLS.ROAMPatch,
   GLS.ROAMPatch,
   GLS.HeightData,
   GLS.HeightData,
@@ -29,13 +34,10 @@ uses
   GLS.Texture,
   GLS.Texture,
   GLS.SkyDome,
   GLS.SkyDome,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLScene.VectorTypes,
-  GLScene.VectorGeometry,
   GLS.LensFlare,
   GLS.LensFlare,
   GLS.BumpMapHDS,
   GLS.BumpMapHDS,
   GLSL.TextureShaders,
   GLSL.TextureShaders,
   GLS.Material,
   GLS.Material,
-  GLScene.Coordinates,
 
 
   GLS.State,
   GLS.State,
   GLScene.Utils;
   GLScene.Utils;

+ 1 - 1
Examples/Demos/meshes/synthterr/fSynthTerrainC.h

@@ -24,7 +24,7 @@
 #include "GLS.HeightData.hpp"
 #include "GLS.HeightData.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "Jpeg.hpp"
 #include "Jpeg.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 
 
 
 
 
 

+ 6 - 3
Examples/Demos/meshes/synthterr/fSynthTerrainD.pas

@@ -24,12 +24,15 @@ uses
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.Texture,
   GLS.Texture,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLScene.VectorGeometry,
-
   GLS.Material,
   GLS.Material,
+
+  GLScene.Keyboard,
+  GLScene.VectorGeometry,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
-  GLScene.XCollection, GLS.ShadowHDS;
+  GLScene.XCollection,
+
+  GLS.ShadowHDS;
 
 
 type
 type
   TFormSynthTerrain = class(TForm)
   TFormSynthTerrain = class(TForm)

+ 2 - 2
Examples/Demos/meshes/terrain/fTerrainC.cpp

@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
 #include <vcl.h>
 #include <vcl.h>
-#include <GLS.Keyboard.hpp>
+#include <GLScene.Keyboard.hpp>
 #include <stdlib.h>
 #include <stdlib.h>
 
 
 #pragma hdrstop
 #pragma hdrstop
@@ -24,7 +24,7 @@
 #pragma link "GLS.Objects"
 #pragma link "GLS.Objects"
 #pragma link "GLS.TerrainRenderer"
 #pragma link "GLS.TerrainRenderer"
 #pragma link "GLS.Scene"
 #pragma link "GLS.Scene"
-#pragma link "GLS.Keyboard"
+#pragma link "GLScene.Keyboard"
 #pragma link "GLScene.BaseClasses"
 #pragma link "GLScene.BaseClasses"
 #pragma link "GLScene.Coordinates"
 #pragma link "GLScene.Coordinates"
 
 

+ 8 - 7
Examples/Demos/meshes/terrain/fTerrainD.pas

@@ -17,30 +17,31 @@ uses
   Vcl.Imaging.GIFImg,
   Vcl.Imaging.GIFImg,
   Vcl.Imaging.Jpeg,
   Vcl.Imaging.Jpeg,
 
 
-  
   GLS.Scene,
   GLS.Scene,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
+  GLScene.Keyboard,
+  GLScene.XCollection,
+  GLScene.VectorGeometry,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+
   GLS.Objects,
   GLS.Objects,
   GLS.TerrainRenderer,
   GLS.TerrainRenderer,
   GLS.HeightData,
   GLS.HeightData,
-  GLS.Color,
+  GLScene.Color,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Texture,
   GLS.Texture,
   GLS.BitmapFont,
   GLS.BitmapFont,
-  GLScene.XCollection,
   GLS.SkyDome,
   GLS.SkyDome,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.SoundManager,
   GLS.SoundManager,
   GLS.Sounds.BASS,
   GLS.Sounds.BASS,
-  GLScene.VectorGeometry,
   GLS.LensFlare,
   GLS.LensFlare,
   GLS.Material,
   GLS.Material,
-  GLScene.Coordinates,
-  GLScene.BaseClasses,
   GLS.State,
   GLS.State,
   GLS.FileMP3,
   GLS.FileMP3,
   GLScene.Utils,
   GLScene.Utils,
- 
+
   GLS.HUDObjects;
   GLS.HUDObjects;
 
 
 type
 type

+ 8 - 7
Examples/Demos/meshes/tiles/fTilesD.pas

@@ -17,23 +17,24 @@ uses
   Vcl.StdCtrls,
   Vcl.StdCtrls,
 
 
   GLScene.VectorTypes,
   GLScene.VectorTypes,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.Keyboard,
+  GLScene.VectorGeometry,
+  GLScene.TextureFormat,
+  GLScene.XCollection,
+  GLScene.Utils,
+
   GLS.Objects,
   GLS.Objects,
   GLS.Graph,
   GLS.Graph,
   GLS.Scene,
   GLS.Scene,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLScene.VectorGeometry,
   GLS.TilePlane,
   GLS.TilePlane,
   GLS.Texture,
   GLS.Texture,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Context,
   GLS.Context,
- 
   GLS.Material,
   GLS.Material,
-  GLScene.Coordinates,
-  GLScene.BaseClasses,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
-  GLScene.TextureFormat,
-  GLScene.XCollection,
-  GLScene.Utils,
   GLS.SimpleNavigation;
   GLS.SimpleNavigation;
 
 
 type
 type

+ 1 - 1
Examples/Demos/movements/column/fColumnD.pas

@@ -17,7 +17,7 @@ uses
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,

+ 1 - 1
Examples/Demos/movements/objmove/fObjmoveC.cpp

@@ -22,7 +22,7 @@
 #pragma resource "*.dfm"
 #pragma resource "*.dfm"
 TFormObjmove *FormObjmove;
 TFormObjmove *FormObjmove;
 
 
-const TGLColorVector
+const TGColorVector
   SelectionColor[]  = {0.243, 0.243, 0.243, 1.000};
   SelectionColor[]  = {0.243, 0.243, 0.243, 1.000};
 
 
 
 

+ 2 - 2
Examples/Demos/movements/objmove/fObjmoveD.pas

@@ -26,7 +26,7 @@ uses
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.SpaceText,
   GLS.SpaceText,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Color,
+  GLScene.Color,
 
 
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
@@ -80,7 +80,7 @@ type
   end;
   end;
 
 
 const
 const
-  SelectionColor: TGLColorVector = (X : 0.243; Y : 0.243; Z: 0.243; W : 1.000);
+  SelectionColor: TGColorVector = (X : 0.243; Y : 0.243; Z: 0.243; W : 1.000);
 
 
 var
 var
   FormObjmove: TFormObjmove;
   FormObjmove: TFormObjmove;

+ 1 - 1
Examples/Demos/movements/smoothnavi/fSmoothNaviC.h

@@ -22,7 +22,7 @@
 #include "GLS.Scene.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SmoothNavigator.hpp"
 #include "GLS.SmoothNavigator.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLScene.Utils.hpp"
 #include "GLScene.Utils.hpp"
 
 
 
 

+ 12 - 10
Examples/Demos/movements/smoothnavi/fSmoothNaviD.pas

@@ -12,18 +12,20 @@ uses
   Vcl.ExtCtrls, 
   Vcl.ExtCtrls, 
   Vcl.StdCtrls,
   Vcl.StdCtrls,
 
 
-  GLS.Cadencer, 
-  GLS.SceneViewer, 
-  GLScene.XCollection, 
-  GLScene.VectorGeometry, 
+  GLScene.Keyboard,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.XCollection,
+  GLScene.VectorGeometry,
+
+  GLS.Cadencer,
+  GLS.SceneViewer,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Scene, 
-  GLS.Objects, 
-  GLS.Graph, 
-  
+  GLS.Scene,
+  GLS.Objects,
+  GLS.Graph,
+
   GLS.SmoothNavigator,
   GLS.SmoothNavigator,
-  GLScene.Coordinates, 
-  GLScene.BaseClasses, 
   GLS.Screen;
   GLS.Screen;
 
 
 type
 type

+ 1 - 1
Examples/Demos/physics/NewtonSimple/fNewtonSimpleD.pas

@@ -18,7 +18,7 @@ uses
   GLS.SimpleNavigation,
   GLS.SimpleNavigation,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
  
  
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLS.NGDManager,
   GLS.NGDManager,

+ 2 - 2
Examples/Demos/physics/NewtonWalkCarry/fNewtonWalkCarryD.pas

@@ -35,7 +35,7 @@ uses
   GLS.Navigator,
   GLS.Navigator,
   GLScene.XCollection,
   GLScene.XCollection,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
-  GLS.Color,
+  GLScene.Color,
   GLS.HUDObjects,
   GLS.HUDObjects,
   GLS.Texture,
   GLS.Texture,
   GLScene.Utils,
   GLScene.Utils,
@@ -138,7 +138,7 @@ var
   cp: TPoint;
   cp: TPoint;
   visible_cursor: boolean;
   visible_cursor: boolean;
   ScObj, FScObj: TGLBaseSceneObject;
   ScObj, FScObj: TGLBaseSceneObject;
-  targetColor: TGLColorVector;
+  targetColor: TGColorVector;
   picked: TGLCustomSceneObject;
   picked: TGLCustomSceneObject;
   mm: TMatrix4f;
   mm: TMatrix4f;
 
 

+ 1 - 1
Examples/Demos/physics/OdeFurball/fOdeFurballC.cpp

@@ -17,7 +17,7 @@
 #pragma link "GLS.Objects"
 #pragma link "GLS.Objects"
 #pragma link "GLS.Scene"
 #pragma link "GLS.Scene"
 #pragma link "GLS.SceneViewer"
 #pragma link "GLS.SceneViewer"
-#pragma link "GLS.Keyboard"
+#pragma link "GLScene.Keyboard"
 #pragma link "GLS.VerletTypes"
 #pragma link "GLS.VerletTypes"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 1 - 1
Examples/Demos/physics/OdeFurball/fOdeFurballC.h

@@ -23,7 +23,7 @@
 #include "GLS.Texture.hpp"
 #include "GLS.Texture.hpp"
 #include "GLS.Objects.hpp"
 #include "GLS.Objects.hpp"
 #include "GLScene.BaseClasses.hpp"
 #include "GLScene.BaseClasses.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLScene.Coordinates.hpp"
 #include "GLScene.Coordinates.hpp"
 
 
 #include "GLS.VerletTypes.hpp"
 #include "GLS.VerletTypes.hpp"

+ 1 - 1
Examples/Demos/physics/OdeFurball/fOdeFurballD.pas

@@ -30,7 +30,7 @@ uses
   GLS.Navigator,
   GLS.Navigator,
   GLS.VerletTypes,
   GLS.VerletTypes,
   GLScene.XCollection,
   GLScene.XCollection,
-  GLS.Color,
+  GLScene.Color,
  
  
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses;
   GLScene.BaseClasses;

+ 1 - 1
Examples/Demos/physics/OdeTerrain/fOdeTerrainC.h

@@ -27,7 +27,7 @@
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLScene.Utils.hpp"
 #include "GLScene.Utils.hpp"
 #include "JPeg.hpp"
 #include "JPeg.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.ODEManager.hpp"
 #include "GLS.ODEManager.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 1 - 1
Examples/Demos/physics/OdeTerrain/fOdeTerrainD.pas

@@ -33,7 +33,7 @@ uses
   GLS.ODEManager,
   GLS.ODEManager,
   GLS.Navigator,
   GLS.Navigator,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Color,
+  GLScene.Color,
  
  
   GLS.Material,
   GLS.Material,
   GLScene.Coordinates,
   GLScene.Coordinates,

+ 1 - 1
Examples/Demos/physics/PhysXScatter/PhysXScatterFm.pas

@@ -20,7 +20,7 @@ uses
   GLS.Cadencer,
   GLS.Cadencer,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
   GLScene.XCollection,
   GLScene.XCollection,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,

+ 1 - 1
Examples/Demos/rendering/BasicSDL/fBasicSDL_D.pas

@@ -13,7 +13,7 @@ uses
   GLS.GeomObjects,
   GLS.GeomObjects,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
-  GLS.Color,
+  GLScene.Color,
   GLS.Context,
   GLS.Context,
   GLS.Texture,
   GLS.Texture,
   GLScene.Utils,
   GLScene.Utils,

+ 1 - 1
Examples/Demos/rendering/MultiTexture/fMultiTexturesC.h

@@ -26,7 +26,7 @@
 #include "GLS.WindowsFont.hpp"
 #include "GLS.WindowsFont.hpp"
 #include "GLS.State.hpp"
 #include "GLS.State.hpp"
 #include "GLS.Context.hpp"
 #include "GLS.Context.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 class TForm1 : public TForm
 class TForm1 : public TForm

+ 1 - 1
Examples/Demos/rendering/SkyBox/fSkyBoxC.h

@@ -19,7 +19,7 @@
 #include "GLS.SimpleNavigation.hpp"
 #include "GLS.SimpleNavigation.hpp"
 #include "GLS.SkyDome.hpp"
 #include "GLS.SkyDome.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "JPeg.hpp"
 #include "JPeg.hpp"
 #include "GLS.FileJPEG.hpp"
 #include "GLS.FileJPEG.hpp"
 #include "GLScene.Utils.hpp"
 #include "GLScene.Utils.hpp"

+ 1 - 1
Examples/Demos/rendering/celshading/fCelShadingC.h

@@ -21,7 +21,7 @@
 #include "GLScene.Coordinates.hpp"
 #include "GLScene.Coordinates.hpp"
 
 
 #include "GLS.Material.hpp"          // Pascal unit
 #include "GLS.Material.hpp"          // Pascal unit
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.FileMD2.hpp"
 #include "GLS.FileMD2.hpp"
 #include "GLScene.Utils.hpp"
 #include "GLScene.Utils.hpp"
 
 

+ 1 - 1
Examples/Demos/rendering/multiproxy/fMultiProxyD.pas

@@ -20,7 +20,7 @@ uses
   GLS.Objects,
   GLS.Objects,
   GLS.Particles,
   GLS.Particles,
   GLS.SceneViewer,
   GLS.SceneViewer,
-  GLS.Color,
+  GLScene.Color,
   GLS.MultiProxy,
   GLS.MultiProxy,
   GLS.Texture,
   GLS.Texture,
 
 

+ 1 - 1
Examples/Demos/specialsFX/Atmosphere/fAtmosphereD.pas

@@ -25,7 +25,7 @@ uses
   GLS.SimpleNavigation,
   GLS.SimpleNavigation,
   GLS.Behaviours,
   GLS.Behaviours,
   GLScene.Coordinates,
   GLScene.Coordinates,
-  GLS.Color;
+  GLScene.Color;
 
 
 type
 type
   TFormAtmosphere = class(TForm)
   TFormAtmosphere = class(TForm)

+ 55 - 27
Examples/Demos/specialsFX/PFXCursor/fPfxCursorD.dfm

@@ -1,44 +1,61 @@
 object Form1: TForm1
 object Form1: TForm1
   Left = 403
   Left = 403
   Top = 221
   Top = 221
-  ClientHeight = 516
-  ClientWidth = 761
+  Margins.Left = 5
+  Margins.Top = 5
+  Margins.Right = 5
+  Margins.Bottom = 5
+  ClientHeight = 903
+  ClientWidth = 1346
   Color = clBtnFace
   Color = clBtnFace
   Font.Charset = DEFAULT_CHARSET
   Font.Charset = DEFAULT_CHARSET
   Font.Color = clWindowText
   Font.Color = clWindowText
-  Font.Height = -11
+  Font.Height = -19
   Font.Name = 'MS Sans Serif'
   Font.Name = 'MS Sans Serif'
   Font.Style = []
   Font.Style = []
   Position = poScreenCenter
   Position = poScreenCenter
   OnCreate = FormCreate
   OnCreate = FormCreate
   OnShow = FormShow
   OnShow = FormShow
-  TextHeight = 13
+  PixelsPerInch = 168
+  TextHeight = 24
   object vp: TGLSceneViewer
   object vp: TGLSceneViewer
     Left = 0
     Left = 0
     Top = 0
     Top = 0
-    Width = 600
-    Height = 516
+    Width = 1064
+    Height = 903
     Cursor = -1
     Cursor = -1
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Camera = GLCamera1
     Camera = GLCamera1
     Buffer.BackgroundColor = clNavy
     Buffer.BackgroundColor = clNavy
     Buffer.ContextOptions = [roDoubleBuffer, roRenderToWindow]
     Buffer.ContextOptions = [roDoubleBuffer, roRenderToWindow]
-    FieldOfView = 158.064254760742200000
+    FieldOfView = 167.361404418945300000
     PenAsTouch = False
     PenAsTouch = False
     Align = alClient
     Align = alClient
     TabOrder = 0
     TabOrder = 0
   end
   end
   object Panel1: TPanel
   object Panel1: TPanel
-    Left = 600
+    Left = 1064
     Top = 0
     Top = 0
-    Width = 161
-    Height = 516
+    Width = 282
+    Height = 903
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Align = alRight
     Align = alRight
     TabOrder = 1
     TabOrder = 1
     object RadioGroup1: TRadioGroup
     object RadioGroup1: TRadioGroup
-      Left = 18
-      Top = 232
-      Width = 137
-      Height = 105
+      Left = 32
+      Top = 406
+      Width = 239
+      Height = 184
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Fire'
       Caption = 'Fire'
       ItemIndex = 0
       ItemIndex = 0
       Items.Strings = (
       Items.Strings = (
@@ -48,10 +65,14 @@ object Form1: TForm1
       OnClick = RadioGroup1Click
       OnClick = RadioGroup1Click
     end
     end
     object RadioGroup2: TRadioGroup
     object RadioGroup2: TRadioGroup
-      Left = 18
-      Top = 64
-      Width = 137
-      Height = 105
+      Left = 32
+      Top = 112
+      Width = 239
+      Height = 184
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Perlin'
       Caption = 'Perlin'
       ItemIndex = 0
       ItemIndex = 0
       Items.Strings = (
       Items.Strings = (
@@ -61,19 +82,27 @@ object Form1: TForm1
       OnClick = RadioGroup2Click
       OnClick = RadioGroup2Click
     end
     end
     object stPerlin: TStaticText
     object stPerlin: TStaticText
-      Left = 16
-      Top = 32
-      Width = 132
-      Height = 17
+      Left = 28
+      Top = 56
+      Width = 231
+      Height = 28
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Left mouse button for perlin'
       Caption = 'Left mouse button for perlin'
       TabOrder = 2
       TabOrder = 2
       OnClick = stPerlinClick
       OnClick = stPerlinClick
     end
     end
     object stFire: TStaticText
     object stFire: TStaticText
-      Left = 16
-      Top = 200
-      Width = 128
-      Height = 17
+      Left = 28
+      Top = 350
+      Width = 223
+      Height = 28
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Right mouse button for fire'
       Caption = 'Right mouse button for fire'
       TabOrder = 3
       TabOrder = 3
     end
     end
@@ -268,7 +297,6 @@ object Form1: TForm1
     Cadencer = GLCadencer1
     Cadencer = GLCadencer1
     Renderer = rend
     Renderer = rend
     Friction = 1.000000000000000000
     Friction = 1.000000000000000000
-    OnPrepareTextureImage = pfx2PrepareTextureImage
     ColorMode = scmFade
     ColorMode = scmFade
     ParticleSize = 0.750000000000000000
     ParticleSize = 0.750000000000000000
     ColorInner.Color = {0000803F1283C03E000000000000803F}
     ColorInner.Color = {0000803F1283C03E000000000000803F}

+ 6 - 5
Examples/Demos/specialsFX/PFXCursor/fPfxCursorD.pas

@@ -15,23 +15,24 @@ uses
   Vcl.StdCtrls,
   Vcl.StdCtrls,
   Vcl.ExtCtrls,
   Vcl.ExtCtrls,
 
 
+  GLScene.Keyboard,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
+  GLScene.VectorGeometry,
+  GLScene.XCollection,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Texture,
   GLS.Texture,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Scene,
   GLS.Scene,
-  GLScene.VectorGeometry,
   GLS.Graphics,
   GLS.Graphics,
-  GLScene.XCollection,
   GLS.ParticleFX,
   GLS.ParticleFX,
   GLS.Objects,
   GLS.Objects,
   GLS.HUDObjects,
   GLS.HUDObjects,
   GLS.AsyncTimer,
   GLS.AsyncTimer,
   GLS.PerlinPFX,
   GLS.PerlinPFX,
   GLS.Material,
   GLS.Material,
-  GLScene.Coordinates,
-
-  GLScene.BaseClasses,
   GLS.FireFX,
   GLS.FireFX,
   GLS.GeomObjects,
   GLS.GeomObjects,
   GLScene.Utils;
   GLScene.Utils;

+ 1 - 1
Examples/Demos/specialsFX/PFXGallery/fPFXGallaryC.cpp

@@ -23,7 +23,7 @@
 #pragma link "GLS.Scene"
 #pragma link "GLS.Scene"
 #pragma link "GLS.SpaceText"
 #pragma link "GLS.SpaceText"
 #pragma link "GLS.SceneViewer"
 #pragma link "GLS.SceneViewer"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 
 
 #pragma resource "*.dfm"
 #pragma resource "*.dfm"
 TForm1 *Form1;
 TForm1 *Form1;

+ 55 - 26
Examples/Demos/specialsFX/PFXGallery/fPFXGalleryD.dfm

@@ -1,29 +1,38 @@
 object FormPFXGallery: TFormPFXGallery
 object FormPFXGallery: TFormPFXGallery
   Left = 199
   Left = 199
   Top = 114
   Top = 114
+  Margins.Left = 5
+  Margins.Top = 5
+  Margins.Right = 5
+  Margins.Bottom = 5
   Caption = 'PFXGallery'
   Caption = 'PFXGallery'
-  ClientHeight = 508
-  ClientWidth = 680
+  ClientHeight = 889
+  ClientWidth = 1204
   Color = clBtnFace
   Color = clBtnFace
   Font.Charset = DEFAULT_CHARSET
   Font.Charset = DEFAULT_CHARSET
   Font.Color = clWindowText
   Font.Color = clWindowText
-  Font.Height = -11
+  Font.Height = -19
   Font.Name = 'MS Sans Serif'
   Font.Name = 'MS Sans Serif'
   Font.Style = []
   Font.Style = []
   OnCreate = FormCreate
   OnCreate = FormCreate
-  TextHeight = 13
+  PixelsPerInch = 168
+  TextHeight = 24
   object GLSceneViewer1: TGLSceneViewer
   object GLSceneViewer1: TGLSceneViewer
     Left = 0
     Left = 0
-    Top = 25
-    Width = 680
-    Height = 483
+    Top = 44
+    Width = 1204
+    Height = 845
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Camera = GLCamera1
     Camera = GLCamera1
     Buffer.FogEnvironment.FogColor.Color = {D7A3703ED7A3703ED7A3703E0000803F}
     Buffer.FogEnvironment.FogColor.Color = {D7A3703ED7A3703ED7A3703E0000803F}
     Buffer.FogEnvironment.FogStart = 30.000000000000000000
     Buffer.FogEnvironment.FogStart = 30.000000000000000000
     Buffer.FogEnvironment.FogEnd = 200.000000000000000000
     Buffer.FogEnvironment.FogEnd = 200.000000000000000000
     Buffer.BackgroundColor = clBlack
     Buffer.BackgroundColor = clBlack
     Buffer.AmbientColor.Color = {0000803F0000803F0000803F0000803F}
     Buffer.AmbientColor.Color = {0000803F0000803F0000803F0000803F}
-    FieldOfView = 147.671005249023400000
+    FieldOfView = 161.185333251953100000
     PenAsTouch = False
     PenAsTouch = False
     Align = alClient
     Align = alClient
     TabOrder = 0
     TabOrder = 0
@@ -31,32 +40,48 @@ object FormPFXGallery: TFormPFXGallery
   object Panel1: TPanel
   object Panel1: TPanel
     Left = 0
     Left = 0
     Top = 0
     Top = 0
-    Width = 680
-    Height = 25
+    Width = 1204
+    Height = 44
+    Margins.Left = 5
+    Margins.Top = 5
+    Margins.Right = 5
+    Margins.Bottom = 5
     Align = alTop
     Align = alTop
     Caption = ' '
     Caption = ' '
     TabOrder = 1
     TabOrder = 1
     object Label1: TLabel
     object Label1: TLabel
-      Left = 376
-      Top = 6
-      Width = 91
-      Height = 13
+      Left = 658
+      Top = 11
+      Width = 157
+      Height = 24
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'WASD - navigation'
       Caption = 'WASD - navigation'
     end
     end
     object chkMouseLook: TCheckBox
     object chkMouseLook: TCheckBox
-      Left = 244
-      Top = 4
-      Width = 97
-      Height = 17
+      Left = 427
+      Top = 7
+      Width = 170
+      Height = 30
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'MouseLook'
       Caption = 'MouseLook'
       TabOrder = 0
       TabOrder = 0
       OnClick = chkMouseLookClick
       OnClick = chkMouseLookClick
     end
     end
     object chkFloor: TCheckBox
     object chkFloor: TCheckBox
-      Left = 8
-      Top = 4
-      Width = 97
-      Height = 17
+      Left = 14
+      Top = 7
+      Width = 170
+      Height = 30
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Show floor'
       Caption = 'Show floor'
       Checked = True
       Checked = True
       State = cbChecked
       State = cbChecked
@@ -64,10 +89,14 @@ object FormPFXGallery: TFormPFXGallery
       OnClick = chkFloorClick
       OnClick = chkFloorClick
     end
     end
     object chkBlur: TCheckBox
     object chkBlur: TCheckBox
-      Left = 116
-      Top = 4
-      Width = 97
-      Height = 17
+      Left = 203
+      Top = 7
+      Width = 170
+      Height = 30
+      Margins.Left = 5
+      Margins.Top = 5
+      Margins.Right = 5
+      Margins.Bottom = 5
       Caption = 'Blur effects'
       Caption = 'Blur effects'
       TabOrder = 2
       TabOrder = 2
       OnClick = chkBlurClick
       OnClick = chkBlurClick

+ 8 - 6
Examples/Demos/specialsFX/PFXGallery/fPFXGalleryD.pas

@@ -14,27 +14,29 @@ uses
   Vcl.StdCtrls,
   Vcl.StdCtrls,
   Vcl.Imaging.Jpeg,
   Vcl.Imaging.Jpeg,
 
 
+  GLScene.VectorTypes,
+  GLScene.Keyboard,
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,
+  GLScene.Coordinates,
+  GLScene.BaseClasses,
+  GLScene.XCollection,
+  GLScene.Utils,
+
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Scene,
   GLS.Scene,
   GLS.HUDObjects,
   GLS.HUDObjects,
   GLS.ParticleFX,
   GLS.ParticleFX,
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
-  GLScene.VectorTypes,
   GLS.Objects,
   GLS.Objects,
   GLS.BitmapFont,
   GLS.BitmapFont,
-  GLScene.Utils,
   GLS.Cadencer,
   GLS.Cadencer,
   GLS.Texture,
   GLS.Texture,
   GLS.Navigator,
   GLS.Navigator,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLScene.XCollection,
   GLS.SpaceText,
   GLS.SpaceText,
   GLS.Behaviours,
   GLS.Behaviours,
   GLS.PerlinPFX,
   GLS.PerlinPFX,
-  GLS.Blur,
-  GLScene.Coordinates,
-  GLScene.BaseClasses;
+  GLS.Blur;
 
 
 const
 const
   cRunBoost = 10;
   cRunBoost = 10;

+ 1 - 1
Examples/Demos/specialsFX/motionblur/fMotionBlurC.h

@@ -18,7 +18,7 @@
 #include "GLS.Objects.hpp"
 #include "GLS.Objects.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.VectorFileObjects.hpp"
 #include "GLS.VectorFileObjects.hpp"
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 class TForm1 : public TForm
 class TForm1 : public TForm

+ 1 - 1
Examples/Demos/specialsFX/spiral/fSpiralC.h

@@ -21,7 +21,7 @@
 #include "GLScene.Coordinates.hpp"
 #include "GLScene.Coordinates.hpp"
 #include "GLS.FullScreenViewer.hpp"
 #include "GLS.FullScreenViewer.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 #include "GLS.FullScreenViewer.hpp"
 #include "GLS.FullScreenViewer.hpp"
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------

+ 1 - 1
Examples/Demos/specialsFX/waterplane/fWaterPlaneD.pas

@@ -33,7 +33,7 @@ uses
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLS.SimpleNavigation,
   GLS.SimpleNavigation,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Utils,
   GLScene.Utils,
   GLScene.BaseClasses;
   GLScene.BaseClasses;
 
 

+ 1 - 1
Examples/Demos/utilities/recorder/Unit1.cpp

@@ -13,7 +13,7 @@
 #pragma link "GLS.Objects"
 #pragma link "GLS.Objects"
 #pragma link "GLS.Scene"
 #pragma link "GLS.Scene"
 #pragma link "GLAVIRecorder"
 #pragma link "GLAVIRecorder"
-#pragma link "GLS.Keyboard"
+#pragma link "GLScene.Keyboard"
 #pragma link "GLScene.BaseClasses"
 #pragma link "GLScene.BaseClasses"
 #pragma link "GLScene.Coordinates"
 #pragma link "GLScene.Coordinates"
 
 

+ 1 - 1
Examples/Demos/utilities/recorder/Unit1.h

@@ -14,7 +14,7 @@
 #include "GLS.Objects.hpp"
 #include "GLS.Objects.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.Scene.hpp"
 #include "GLS.SceneViewer.hpp"
 #include "GLS.SceneViewer.hpp"
-#include "GLS.Keyboard.hpp"
+#include "GLScene.Keyboard.hpp"
 
 
 #ifndef Unit1H
 #ifndef Unit1H
 #define Unit1H
 #define Unit1H

+ 15 - 3
GXScene.groupproj

@@ -18,6 +18,9 @@
         <Projects Include="Packages\GXScene_GPU_RT.dproj">
         <Projects Include="Packages\GXScene_GPU_RT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
+        <Projects Include="Packages\GXScene_GBE.dproj">
+            <Dependencies/>
+        </Projects>
         <Projects Include="Packages\GXScene_Sounds_DT.dproj">
         <Projects Include="Packages\GXScene_Sounds_DT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
@@ -86,6 +89,15 @@
     <Target Name="GXScene_GPU_RT:Make">
     <Target Name="GXScene_GPU_RT:Make">
         <MSBuild Projects="Packages\GXScene_GPU_RT.dproj" Targets="Make"/>
         <MSBuild Projects="Packages\GXScene_GPU_RT.dproj" Targets="Make"/>
     </Target>
     </Target>
+    <Target Name="GXScene_GBE">
+        <MSBuild Projects="Packages\GXScene_GBE.dproj"/>
+    </Target>
+    <Target Name="GXScene_GBE:Clean">
+        <MSBuild Projects="Packages\GXScene_GBE.dproj" Targets="Clean"/>
+    </Target>
+    <Target Name="GXScene_GBE:Make">
+        <MSBuild Projects="Packages\GXScene_GBE.dproj" Targets="Make"/>
+    </Target>
     <Target Name="GXScene_Sounds_DT">
     <Target Name="GXScene_Sounds_DT">
         <MSBuild Projects="Packages\GXScene_Sounds_DT.dproj"/>
         <MSBuild Projects="Packages\GXScene_Sounds_DT.dproj"/>
     </Target>
     </Target>
@@ -132,13 +144,13 @@
         <MSBuild Projects="Packages\GXScene_GPU_DT.dproj" Targets="Make"/>
         <MSBuild Projects="Packages\GXScene_GPU_DT.dproj" Targets="Make"/>
     </Target>
     </Target>
     <Target Name="Build">
     <Target Name="Build">
-        <CallTarget Targets="GXScene_RT;GXScene_Sounds_RT;GXScene_Cg_RT;GXScene_Physics_RT;GXScene_GPU_RT;GXScene_Sounds_DT;GXScene_DT;GXScene_Physics_DT;GXScene_Cg_DT;GXScene_GPU_DT"/>
+        <CallTarget Targets="GXScene_RT;GXScene_Sounds_RT;GXScene_Cg_RT;GXScene_Physics_RT;GXScene_GPU_RT;GXScene_GBE;GXScene_Sounds_DT;GXScene_DT;GXScene_Physics_DT;GXScene_Cg_DT;GXScene_GPU_DT"/>
     </Target>
     </Target>
     <Target Name="Clean">
     <Target Name="Clean">
-        <CallTarget Targets="GXScene_RT:Clean;GXScene_Sounds_RT:Clean;GXScene_Cg_RT:Clean;GXScene_Physics_RT:Clean;GXScene_GPU_RT:Clean;GXScene_Sounds_DT:Clean;GXScene_DT:Clean;GXScene_Physics_DT:Clean;GXScene_Cg_DT:Clean;GXScene_GPU_DT:Clean"/>
+        <CallTarget Targets="GXScene_RT:Clean;GXScene_Sounds_RT:Clean;GXScene_Cg_RT:Clean;GXScene_Physics_RT:Clean;GXScene_GPU_RT:Clean;GXScene_GBE:Clean;GXScene_Sounds_DT:Clean;GXScene_DT:Clean;GXScene_Physics_DT:Clean;GXScene_Cg_DT:Clean;GXScene_GPU_DT:Clean"/>
     </Target>
     </Target>
     <Target Name="Make">
     <Target Name="Make">
-        <CallTarget Targets="GXScene_RT:Make;GXScene_Sounds_RT:Make;GXScene_Cg_RT:Make;GXScene_Physics_RT:Make;GXScene_GPU_RT:Make;GXScene_Sounds_DT:Make;GXScene_DT:Make;GXScene_Physics_DT:Make;GXScene_Cg_DT:Make;GXScene_GPU_DT:Make"/>
+        <CallTarget Targets="GXScene_RT:Make;GXScene_Sounds_RT:Make;GXScene_Cg_RT:Make;GXScene_Physics_RT:Make;GXScene_GPU_RT:Make;GXScene_GBE:Make;GXScene_Sounds_DT:Make;GXScene_DT:Make;GXScene_Physics_DT:Make;GXScene_Cg_DT:Make;GXScene_GPU_DT:Make"/>
     </Target>
     </Target>
     <Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
     <Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
 </Project>
 </Project>

+ 1 - 1
Packages/GLScene_RT.dpk

@@ -72,7 +72,7 @@ contains
   GLS.CameraController in '..\Source\GLS.CameraController.pas',
   GLS.CameraController in '..\Source\GLS.CameraController.pas',
   GLS.Canvas in '..\Source\GLS.Canvas.pas',
   GLS.Canvas in '..\Source\GLS.Canvas.pas',
   GLS.Collision in '..\Source\GLS.Collision.pas',
   GLS.Collision in '..\Source\GLS.Collision.pas',
-  GLS.Color in '..\Source\GLS.Color.pas',
+  GLScene.Color in '..\Source\GLScene.Color.pas',
   GLS.CompositeImage in '..\Source\GLS.CompositeImage.pas',
   GLS.CompositeImage in '..\Source\GLS.CompositeImage.pas',
   GLS.Console in '..\Source\GLS.Console.pas',
   GLS.Console in '..\Source\GLS.Console.pas',
   GLS.Context in '..\Source\GLS.Context.pas',
   GLS.Context in '..\Source\GLS.Context.pas',

+ 1 - 1
Packages/GLScene_RT.dproj

@@ -197,7 +197,7 @@
         <DCCReference Include="..\Source\GLS.CameraController.pas"/>
         <DCCReference Include="..\Source\GLS.CameraController.pas"/>
         <DCCReference Include="..\Source\GLS.Canvas.pas"/>
         <DCCReference Include="..\Source\GLS.Canvas.pas"/>
         <DCCReference Include="..\Source\GLS.Collision.pas"/>
         <DCCReference Include="..\Source\GLS.Collision.pas"/>
-        <DCCReference Include="..\Source\GLS.Color.pas"/>
+        <DCCReference Include="..\Source\GLScene.Color.pas"/>
         <DCCReference Include="..\Source\GLS.CompositeImage.pas"/>
         <DCCReference Include="..\Source\GLS.CompositeImage.pas"/>
         <DCCReference Include="..\Source\GLS.Console.pas"/>
         <DCCReference Include="..\Source\GLS.Console.pas"/>
         <DCCReference Include="..\Source\GLS.Context.pas"/>
         <DCCReference Include="..\Source\GLS.Context.pas"/>

+ 1 - 1
Packages/GXScene_GBE.dproj

@@ -6,7 +6,7 @@
         <FrameworkType>FMX</FrameworkType>
         <FrameworkType>FMX</FrameworkType>
         <Base>True</Base>
         <Base>True</Base>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <Config Condition="'$(Config)'==''">Debug</Config>
-        <Platform Condition="'$(Platform)'==''">Win64x</Platform>
+        <Platform Condition="'$(Platform)'==''">Win32</Platform>
         <TargetedPlatforms>1048577</TargetedPlatforms>
         <TargetedPlatforms>1048577</TargetedPlatforms>
         <AppType>Package</AppType>
         <AppType>Package</AppType>
         <ProjectName Condition="'$(ProjectName)'==''">GXScene_GBE</ProjectName>
         <ProjectName Condition="'$(ProjectName)'==''">GXScene_GBE</ProjectName>

+ 2 - 2
Packages/GXScene_RT.dpk

@@ -59,7 +59,6 @@ contains
   GXS.Canvas in '..\SourceX\GXS.Canvas.pas',
   GXS.Canvas in '..\SourceX\GXS.Canvas.pas',
   GXS.CelShader in '..\SourceX\GXS.CelShader.pas',
   GXS.CelShader in '..\SourceX\GXS.CelShader.pas',
   GXS.Collision in '..\SourceX\GXS.Collision.pas',
   GXS.Collision in '..\SourceX\GXS.Collision.pas',
-  GXS.Color in '..\SourceX\GXS.Color.pas',
   GXS.CompositeImage in '..\SourceX\GXS.CompositeImage.pas',
   GXS.CompositeImage in '..\SourceX\GXS.CompositeImage.pas',
   GXS.Console in '..\SourceX\GXS.Console.pas',
   GXS.Console in '..\SourceX\GXS.Console.pas',
   GXS.Context in '..\SourceX\GXS.Context.pas',
   GXS.Context in '..\SourceX\GXS.Context.pas',
@@ -270,6 +269,7 @@ contains
   gnuGettextInit in '..\Source\gnuGettextInit.pas',
   gnuGettextInit in '..\Source\gnuGettextInit.pas',
   GLScene.XCollection in '..\Source\GLScene.XCollection.pas',
   GLScene.XCollection in '..\Source\GLScene.XCollection.pas',
   GLScene.Keyboard in '..\Source\GLScene.Keyboard.pas',
   GLScene.Keyboard in '..\Source\GLScene.Keyboard.pas',
-  GLScene.Polynomials in '..\Source\GLScene.Polynomials.pas';
+  GLScene.Polynomials in '..\Source\GLScene.Polynomials.pas',
+  GLScene.Color in '..\Source\GLScene.Color.pas';
 
 
 end.
 end.

+ 1 - 1
Packages/GXScene_RT.dproj

@@ -208,7 +208,6 @@
         <DCCReference Include="..\SourceX\GXS.Canvas.pas"/>
         <DCCReference Include="..\SourceX\GXS.Canvas.pas"/>
         <DCCReference Include="..\SourceX\GXS.CelShader.pas"/>
         <DCCReference Include="..\SourceX\GXS.CelShader.pas"/>
         <DCCReference Include="..\SourceX\GXS.Collision.pas"/>
         <DCCReference Include="..\SourceX\GXS.Collision.pas"/>
-        <DCCReference Include="..\SourceX\GXS.Color.pas"/>
         <DCCReference Include="..\SourceX\GXS.CompositeImage.pas"/>
         <DCCReference Include="..\SourceX\GXS.CompositeImage.pas"/>
         <DCCReference Include="..\SourceX\GXS.Console.pas"/>
         <DCCReference Include="..\SourceX\GXS.Console.pas"/>
         <DCCReference Include="..\SourceX\GXS.Context.pas"/>
         <DCCReference Include="..\SourceX\GXS.Context.pas"/>
@@ -420,6 +419,7 @@
         <DCCReference Include="..\Source\GLScene.XCollection.pas"/>
         <DCCReference Include="..\Source\GLScene.XCollection.pas"/>
         <DCCReference Include="..\Source\GLScene.Keyboard.pas"/>
         <DCCReference Include="..\Source\GLScene.Keyboard.pas"/>
         <DCCReference Include="..\Source\GLScene.Polynomials.pas"/>
         <DCCReference Include="..\Source\GLScene.Polynomials.pas"/>
+        <DCCReference Include="..\Source\GLScene.Color.pas"/>
         <None Include="..\Sourcex\GXS.Scene.inc"/>
         <None Include="..\Sourcex\GXS.Scene.inc"/>
         <None Include="..\Source\GLScene.Defines.inc"/>
         <None Include="..\Source\GLScene.Defines.inc"/>
         <BuildConfiguration Include="Base">
         <BuildConfiguration Include="Base">

+ 1 - 1
Source/FRColorEditor.pas

@@ -23,7 +23,7 @@ uses
   VCL.Graphics,
   VCL.Graphics,
    
    
   GLScene.VectorGeometry, 
   GLScene.VectorGeometry, 
-  GLS.Color, 
+  GLScene.Color, 
   GLS.Texture, 
   GLS.Texture, 
   GLScene.VectorTypes;
   GLScene.VectorTypes;
 
 

+ 1 - 1
Source/FRMaterialPreview.pas

@@ -25,7 +25,7 @@ uses
   GLS.HUDObjects,
   GLS.HUDObjects,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.GeomObjects,
   GLS.GeomObjects,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLS.Material;
   GLS.Material;

+ 1 - 1
Source/FmLibMaterialPicker.pas

@@ -22,7 +22,7 @@ uses
   GLS.Objects,
   GLS.Objects,
   GLS.SceneViewer,
   GLS.SceneViewer,
   GLS.Material,
   GLS.Material,
-  GLS.Color,
+  GLScene.Color,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLS.HUDObjects,
   GLS.HUDObjects,

+ 14 - 14
Source/GLS.Atmosphere.pas

@@ -26,7 +26,7 @@ uses
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,
   GLS.Context,
   GLS.Context,
   GLScene.Strings,
   GLScene.Strings,
-  GLS.Color,
+  GLScene.Color,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLS.State;
   GLS.State;
 
 
@@ -53,8 +53,8 @@ type
     FPlanetRadius: Single;
     FPlanetRadius: Single;
     FAtmosphereRadius: Single;
     FAtmosphereRadius: Single;
     FOpacity: Single;
     FOpacity: Single;
-    FLowAtmColor: TGLColor;
-    FHighAtmColor: TGLColor;
+    FLowAtmColor: TGColor;
+    FHighAtmColor: TGColor;
     FSun: TGLBaseSceneObject;
     FSun: TGLBaseSceneObject;
     procedure SetSun(const Value: TGLBaseSceneObject);
     procedure SetSun(const Value: TGLBaseSceneObject);
     procedure SetAtmosphereRadius(const Value: Single);
     procedure SetAtmosphereRadius(const Value: Single);
@@ -64,8 +64,8 @@ type
     function StoreOpacity: Boolean;
     function StoreOpacity: Boolean;
     function StorePlanetRadius: Boolean;
     function StorePlanetRadius: Boolean;
     procedure SetSlices(const Value: Integer);
     procedure SetSlices(const Value: Integer);
-    procedure SetLowAtmColor(const AValue: TGLColor);
-    procedure SetHighAtmColor(const AValue: TGLColor);
+    procedure SetLowAtmColor(const AValue: TGColor);
+    procedure SetHighAtmColor(const AValue: TGColor);
     function StoreLowAtmColor: Boolean;
     function StoreLowAtmColor: Boolean;
     function StoreHighAtmColor: Boolean;
     function StoreHighAtmColor: Boolean;
   protected
   protected
@@ -81,9 +81,9 @@ type
     property PlanetRadius: Single read FPlanetRadius write SetPlanetRadius
     property PlanetRadius: Single read FPlanetRadius write SetPlanetRadius
       stored StorePlanetRadius;
       stored StorePlanetRadius;
     // Use value slightly lower than actual radius, for antialiasing effect
     // Use value slightly lower than actual radius, for antialiasing effect
-    property LowAtmColor: TGLColor read FLowAtmColor write SetLowAtmColor
+    property LowAtmColor: TGColor read FLowAtmColor write SetLowAtmColor
       stored StoreLowAtmColor;
       stored StoreLowAtmColor;
-    property HighAtmColor: TGLColor read FHighAtmColor write SetHighAtmColor
+    property HighAtmColor: TGColor read FHighAtmColor write SetHighAtmColor
       stored StoreHighAtmColor;
       stored StoreHighAtmColor;
     property BlendingMode: TGLAtmosphereBlendingMode read FBlendingMode
     property BlendingMode: TGLAtmosphereBlendingMode read FBlendingMode
       write FBlendingMode default abmOneMinusSrcAlpha;
       write FBlendingMode default abmOneMinusSrcAlpha;
@@ -145,8 +145,8 @@ end;
 constructor TGLCustomAtmosphere.Create(AOwner: TComponent);
 constructor TGLCustomAtmosphere.Create(AOwner: TComponent);
 begin
 begin
   inherited;
   inherited;
-  FLowAtmColor := TGLColor.Create(Self);
-  FHighAtmColor := TGLColor.Create(Self);
+  FLowAtmColor := TGColor.Create(Self);
+  FHighAtmColor := TGColor.Create(Self);
   FOpacity := 2.1;
   FOpacity := 2.1;
   SetSlices(60);
   SetSlices(60);
   FAtmosphereRadius := 3.55;
   FAtmosphereRadius := 3.55;
@@ -172,11 +172,11 @@ var
   sunPos, eyePos, lightingVector: TGLVector;
   sunPos, eyePos, lightingVector: TGLVector;
   diskNormal, diskRight, diskUp: TGLVector;
   diskNormal, diskRight, diskUp: TGLVector;
 
 
-  function AtmosphereColor(const rayStart, rayEnd: TGLVector): TGLColorVector;
+  function AtmosphereColor(const rayStart, rayEnd: TGLVector): TGColorVector;
   var
   var
     I, n: Integer;
     I, n: Integer;
     atmPoint, normal: TGLVector;
     atmPoint, normal: TGLVector;
-    altColor: TGLColorVector;
+    altColor: TGColorVector;
     alt, rayLength, contrib, decay, intensity, invN: Single;
     alt, rayLength, contrib, decay, intensity, invN: Single;
   begin
   begin
     Result := clrTransparent;
     Result := clrTransparent;
@@ -217,7 +217,7 @@ var
   end;
   end;
 
 
   function ComputeColor(var rayDest: TGLVector; mayHitGround: Boolean)
   function ComputeColor(var rayDest: TGLVector; mayHitGround: Boolean)
-    : TGLColorVector;
+    : TGColorVector;
   var
   var
     ai1, ai2, pi1, pi2: TGLVector;
     ai1, ai2, pi1, pi2: TGLVector;
     rayVector: TGLVector;
     rayVector: TGLVector;
@@ -442,12 +442,12 @@ begin
     raise EGLAtmosphereException.Create('Slices must be more than0!');
     raise EGLAtmosphereException.Create('Slices must be more than0!');
 end;
 end;
 
 
-procedure TGLCustomAtmosphere.SetHighAtmColor(const AValue: TGLColor);
+procedure TGLCustomAtmosphere.SetHighAtmColor(const AValue: TGColor);
 begin
 begin
   FHighAtmColor.Assign(AValue);
   FHighAtmColor.Assign(AValue);
 end;
 end;
 
 
-procedure TGLCustomAtmosphere.SetLowAtmColor(const AValue: TGLColor);
+procedure TGLCustomAtmosphere.SetLowAtmColor(const AValue: TGColor);
 begin
 begin
   FLowAtmColor.Assign(AValue);
   FLowAtmColor.Assign(AValue);
 end;
 end;

+ 10 - 10
Source/GLS.BitmapFont.pas

@@ -28,7 +28,7 @@ uses
   GLS.State,
   GLS.State,
   GLScene.Utils,
   GLScene.Utils,
   GLS.Graphics,
   GLS.Graphics,
-  GLS.Color,
+  GLScene.Color,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLScene.PersistentClasses;
   GLScene.PersistentClasses;
@@ -189,13 +189,13 @@ type
        Enable states are also possibly altered. *)
        Enable states are also possibly altered. *)
     procedure RenderString(var ARci: TGLRenderContextInfo;
     procedure RenderString(var ARci: TGLRenderContextInfo;
       const aText: UnicodeString; aAlignment: TAlignment;
       const aText: UnicodeString; aAlignment: TAlignment;
-      aLayout: TTextLayout; const aColor: TGLColorVector;
+      aLayout: TTextLayout; const aColor: TGColorVector;
       aPosition: PGLVector = nil; aReverseY: boolean = False); overload; virtual;
       aPosition: PGLVector = nil; aReverseY: boolean = False); overload; virtual;
     (* A simpler canvas-style TextOut helper for RenderString.
     (* A simpler canvas-style TextOut helper for RenderString.
        The rendering is reversed along Y by default, to allow direct use
        The rendering is reversed along Y by default, to allow direct use
        with TGLCanvas *)
        with TGLCanvas *)
     procedure TextOut(var rci: TGLRenderContextInfo; X, Y: Single;
     procedure TextOut(var rci: TGLRenderContextInfo; X, Y: Single;
-      const Text: UnicodeString; const Color: TGLColorVector); overload;
+      const Text: UnicodeString; const Color: TGColorVector); overload;
     procedure TextOut(var rci: TGLRenderContextInfo; X, Y: Single;
     procedure TextOut(var rci: TGLRenderContextInfo; X, Y: Single;
       const Text: UnicodeString; const Color: TColor); overload;
       const Text: UnicodeString; const Color: TColor); overload;
     function TextWidth(const Text: UnicodeString): Integer;
     function TextWidth(const Text: UnicodeString): Integer;
@@ -245,14 +245,14 @@ type
     FText: UnicodeString;
     FText: UnicodeString;
     FAlignment: TAlignment;
     FAlignment: TAlignment;
     FLayout: TTextLayout;
     FLayout: TTextLayout;
-    FModulateColor: TGLColor;
+    FModulateColor: TGColor;
     FOptions: TGLFlatTextOptions;
     FOptions: TGLFlatTextOptions;
   protected
   protected
     procedure SetBitmapFont(const val: TGLCustomBitmapFont);
     procedure SetBitmapFont(const val: TGLCustomBitmapFont);
     procedure SetText(const val: UnicodeString);
     procedure SetText(const val: UnicodeString);
     procedure SetAlignment(const val: TAlignment);
     procedure SetAlignment(const val: TAlignment);
     procedure SetLayout(const val: TTextLayout);
     procedure SetLayout(const val: TTextLayout);
-    procedure SetModulateColor(const val: TGLColor);
+    procedure SetModulateColor(const val: TGColor);
     procedure SetOptions(const val: TGLFlatTextOptions);
     procedure SetOptions(const val: TGLFlatTextOptions);
     procedure Notification(AComponent: TComponent;
     procedure Notification(AComponent: TComponent;
       Operation: TOperation); override;
       Operation: TOperation); override;
@@ -279,7 +279,7 @@ type
       Possible values : tlTop, tlCenter, tlBottom *)
       Possible values : tlTop, tlCenter, tlBottom *)
     property Layout: TTextLayout read FLayout write SetLayout;
     property Layout: TTextLayout read FLayout write SetLayout;
     // Color modulation, can be used for fade in/out too.
     // Color modulation, can be used for fade in/out too.
-    property ModulateColor: TGLColor read FModulateColor write SetModulateColor;
+    property ModulateColor: TGColor read FModulateColor write SetModulateColor;
     (* Flat text options.
     (* Flat text options.
        ftoTwoSided : when set the text will be visible from its two
        ftoTwoSided : when set the text will be visible from its two
        sides even if faceculling is on (at the scene-level). *)
        sides even if faceculling is on (at the scene-level). *)
@@ -832,7 +832,7 @@ end;
 
 
 procedure TGLCustomBitmapFont.RenderString(var ARci: TGLRenderContextInfo;
 procedure TGLCustomBitmapFont.RenderString(var ARci: TGLRenderContextInfo;
   const aText: UnicodeString; aAlignment: TAlignment; aLayout: TTextLayout;
   const aText: UnicodeString; aAlignment: TAlignment; aLayout: TTextLayout;
-  const aColor: TGLColorVector; aPosition: PGLVector = nil;
+  const aColor: TGColorVector; aPosition: PGLVector = nil;
   aReverseY: boolean = False);
   aReverseY: boolean = False);
 
 
   function AlignmentAdjustement(p: Integer): Single;
   function AlignmentAdjustement(p: Integer): Single;
@@ -964,7 +964,7 @@ begin
 end;
 end;
 
 
 procedure TGLCustomBitmapFont.TextOut(var rci: TGLRenderContextInfo; X, Y: Single;
 procedure TGLCustomBitmapFont.TextOut(var rci: TGLRenderContextInfo; X, Y: Single;
-  const Text: UnicodeString; const Color: TGLColorVector);
+  const Text: UnicodeString; const Color: TGColorVector);
 var
 var
   V: TGLVector;
   V: TGLVector;
 begin
 begin
@@ -1148,7 +1148,7 @@ constructor TGLFlatText.Create(AOwner: TComponent);
 begin
 begin
   inherited;
   inherited;
   ObjectStyle := ObjectStyle + [osDirectDraw, osNoVisibilityCulling];
   ObjectStyle := ObjectStyle + [osDirectDraw, osNoVisibilityCulling];
-  FModulateColor := TGLColor.CreateInitialized(Self, clrWhite);
+  FModulateColor := TGColor.CreateInitialized(Self, clrWhite);
 end;
 end;
 
 
 destructor TGLFlatText.Destroy;
 destructor TGLFlatText.Destroy;
@@ -1200,7 +1200,7 @@ begin
   StructureChanged;
   StructureChanged;
 end;
 end;
 
 
-procedure TGLFlatText.SetModulateColor(const val: TGLColor);
+procedure TGLFlatText.SetModulateColor(const val: TGColor);
 begin
 begin
   FModulateColor.Assign(val);
   FModulateColor.Assign(val);
 end;
 end;

+ 1 - 1
Source/GLS.Blur.pas

@@ -28,7 +28,7 @@ uses
   GLS.Texture,
   GLS.Texture,
   GLS.Material,
   GLS.Material,
   GLS.HudObjects,
   GLS.HudObjects,
-  GLS.Color,
+  GLScene.Color,
   GLS.Graphics,
   GLS.Graphics,
   GLS.Context,
   GLS.Context,
   GLS.XOpenGL,
   GLS.XOpenGL,

+ 1 - 1
Source/GLS.BumpmapHDS.pas

@@ -27,7 +27,7 @@ uses
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLS.HeightData,
   GLS.HeightData,
   GLS.Graphics,
   GLS.Graphics,
-  GLS.Color,
+  GLScene.Color,
   GLScene.VectorLists,
   GLScene.VectorLists,
   GLS.Texture,
   GLS.Texture,
   GLS.Material,
   GLS.Material,

+ 11 - 11
Source/GLS.Canvas.pas

@@ -21,7 +21,7 @@ uses
   GLScene.OpenGLTokens,
   GLScene.OpenGLTokens,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,
-  GLS.Color,
+  GLScene.Color,
   GLS.Context,
   GLS.Context,
   GLS.State;
   GLS.State;
 
 
@@ -121,9 +121,9 @@ type
     procedure FillRect(const x1, y1, x2, y2: Single); overload;
     procedure FillRect(const x1, y1, x2, y2: Single); overload;
     // Draw the (x1,y1)-(x2, y2) rectangle (filled with given gradient's color). 
     // Draw the (x1,y1)-(x2, y2) rectangle (filled with given gradient's color). 
     procedure FillRectGradient(const x1, y1, x2, y2: Single;
     procedure FillRectGradient(const x1, y1, x2, y2: Single;
-      const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGLColorVector); overload;
+      const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGColorVector); overload;
     procedure FillRectGradient(const x1, y1, x2, y2: Integer;
     procedure FillRectGradient(const x1, y1, x2, y2: Integer;
-      const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGLColorVector); overload;
+      const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGColorVector); overload;
     // Draws an ellipse with (x1,y1)-(x2, y2) bounding rectangle. 
     // Draws an ellipse with (x1,y1)-(x2, y2) bounding rectangle. 
     procedure EllipseBB(const x1, y1, x2, y2: Integer); overload;
     procedure EllipseBB(const x1, y1, x2, y2: Integer); overload;
     procedure EllipseBB(const x1, y1, x2, y2: Single); overload;
     procedure EllipseBB(const x1, y1, x2, y2: Single); overload;
@@ -139,11 +139,11 @@ type
     OpenGL will use the last PenColor and PenAlpha as the center color and do gradient 
     OpenGL will use the last PenColor and PenAlpha as the center color and do gradient 
   	to edge of ellipse using the edgeColor parameter. *)
   	to edge of ellipse using the edgeColor parameter. *)
     procedure FillEllipseGradient(const x, y, xRadius, yRadius: Single;
     procedure FillEllipseGradient(const x, y, xRadius, yRadius: Single;
-      const edgeColor: TGLColorVector); overload;
+      const edgeColor: TGColorVector); overload;
     procedure FillEllipseGradient(const x, y: Integer;
     procedure FillEllipseGradient(const x, y: Integer;
-      const xRadius, yRadius: Integer; const edgeColor: TGLColorVector); overload;
+      const xRadius, yRadius: Integer; const edgeColor: TGColorVector); overload;
     procedure FillEllipseGradient(const x, y, Radius: Single;
     procedure FillEllipseGradient(const x, y, Radius: Single;
-      const edgeColor: TGLColorVector); overload;
+      const edgeColor: TGColorVector); overload;
     (* Draw an elliptical arc.
     (* Draw an elliptical arc.
        The points (x1, y1) and (x2, y2) specify the bounding rectangle.
        The points (x1, y1) and (x2, y2) specify the bounding rectangle.
        An ellipse formed by the specified bounding rectangle defines the curve of the arc.
        An ellipse formed by the specified bounding rectangle defines the curve of the arc.
@@ -523,7 +523,7 @@ begin
 end;
 end;
 
 
 procedure TGLCanvas.FillRectGradient(const x1, y1, x2, y2: Single;
 procedure TGLCanvas.FillRectGradient(const x1, y1, x2, y2: Single;
-  const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGLColorVector);
+  const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGColorVector);
 begin
 begin
   StartPrimitive(GL_QUADS);
   StartPrimitive(GL_QUADS);
   gl.Color4f(x1y1Color.X, x1y1Color.Y, x1y1Color.Z, x1y1Color.W);
   gl.Color4f(x1y1Color.X, x1y1Color.Y, x1y1Color.Z, x1y1Color.W);
@@ -541,7 +541,7 @@ begin
 end;
 end;
 
 
 procedure TGLCanvas.FillRectGradient(const x1, y1, x2, y2: Integer;
 procedure TGLCanvas.FillRectGradient(const x1, y1, x2, y2: Integer;
-  const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGLColorVector);
+  const x1y1Color, x2y1Color, x2y2Color, x1y2Color: TGColorVector);
 begin
 begin
   StartPrimitive(GL_QUADS);
   StartPrimitive(GL_QUADS);
   gl.Color4f(x1y1Color.X, x1y1Color.Y, x1y1Color.Z, x1y1Color.W);
   gl.Color4f(x1y1Color.X, x1y1Color.Y, x1y1Color.Z, x1y1Color.W);
@@ -558,7 +558,7 @@ begin
   gl.Color4fv(@FCurrentPenColorVector);
   gl.Color4fv(@FCurrentPenColorVector);
 end;
 end;
 
 
-procedure TGLCanvas.FillEllipseGradient(const x, y: Integer; const xRadius, yRadius: Integer; const edgeColor: TGLColorVector);
+procedure TGLCanvas.FillEllipseGradient(const x, y: Integer; const xRadius, yRadius: Integer; const edgeColor: TGColorVector);
 begin
 begin
   StartPrimitive(GL_TRIANGLE_FAN);
   StartPrimitive(GL_TRIANGLE_FAN);
 
 
@@ -574,7 +574,7 @@ begin
   gl.Color4fv(@FCurrentPenColorVector);
   gl.Color4fv(@FCurrentPenColorVector);
 end;
 end;
 
 
-procedure TGLCanvas.FillEllipseGradient(const x, y, xRadius, yRadius: Single; const edgeColor: TGLColorVector);
+procedure TGLCanvas.FillEllipseGradient(const x, y, xRadius, yRadius: Single; const edgeColor: TGColorVector);
 begin
 begin
   StartPrimitive(GL_TRIANGLE_FAN);
   StartPrimitive(GL_TRIANGLE_FAN);
   gl.Vertex2f(x, y); // really necessary now :)
   gl.Vertex2f(x, y); // really necessary now :)
@@ -586,7 +586,7 @@ begin
   gl.Color4fv(@FCurrentPenColorVector);
   gl.Color4fv(@FCurrentPenColorVector);
 end;
 end;
 
 
-procedure TGLCanvas.FillEllipseGradient(const x, y, Radius: Single; const edgeColor: TGLColorVector);
+procedure TGLCanvas.FillEllipseGradient(const x, y, Radius: Single; const edgeColor: TGColorVector);
 begin
 begin
   FillEllipseGradient(x, y, Radius, Radius, edgeColor);
   FillEllipseGradient(x, y, Radius, Radius, edgeColor);
 end;
 end;

+ 7 - 7
Source/GLS.Extrusion.pas

@@ -25,7 +25,7 @@ uses
   GLS.Objects,
   GLS.Objects,
   GLS.Scene,
   GLS.Scene,
   GLS.MultiPolygon,
   GLS.MultiPolygon,
-  GLS.Color,
+  GLScene.Color,
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLS.Nodes,
   GLS.Nodes,
@@ -149,13 +149,13 @@ type
   TGLPipeNode = class(TGLNode)
   TGLPipeNode = class(TGLNode)
   private
   private
     FRadiusFactor: Single;
     FRadiusFactor: Single;
-    FColor: TGLColor;
+    FColor: TGColor;
     FTexCoordT: Single;
     FTexCoordT: Single;
   protected
   protected
     function GetDisplayName: string; override;
     function GetDisplayName: string; override;
     procedure SetRadiusFactor(const val: Single);
     procedure SetRadiusFactor(const val: Single);
     function StoreRadiusFactor: Boolean;
     function StoreRadiusFactor: Boolean;
-    procedure SetColor(const val: TGLColor);
+    procedure SetColor(const val: TGColor);
     procedure ColorChanged(sender: TObject);
     procedure ColorChanged(sender: TObject);
     function StoreTexCoordT: Boolean;
     function StoreTexCoordT: Boolean;
   public
   public
@@ -165,7 +165,7 @@ type
   published
   published
     property RadiusFactor: Single read FRadiusFactor write SetRadiusFactor stored
     property RadiusFactor: Single read FRadiusFactor write SetRadiusFactor stored
       StoreRadiusFactor;
       StoreRadiusFactor;
-    property Color: TGLColor read FColor write SetColor;
+    property Color: TGColor read FColor write SetColor;
     property TexCoordT: Single read FTexCoordT write FTexCoordT stored
     property TexCoordT: Single read FTexCoordT write FTexCoordT stored
       StoreTexCoordT;
       StoreTexCoordT;
   end;
   end;
@@ -687,7 +687,7 @@ constructor TGLPipeNode.Create(Collection: TCollection);
 begin
 begin
   inherited Create(Collection);
   inherited Create(Collection);
   FRadiusFactor := 1.0;
   FRadiusFactor := 1.0;
-  FColor := TGLColor.CreateInitialized(Self, clrBlack, ColorChanged);
+  FColor := TGColor.CreateInitialized(Self, clrBlack, ColorChanged);
   FTexCoordT := 1.0;
   FTexCoordT := 1.0;
 end;
 end;
 
 
@@ -735,7 +735,7 @@ begin
   Result := (FTexCoordT <> 1.0);
   Result := (FTexCoordT <> 1.0);
 end;
 end;
 
 
-procedure TGLPipeNode.SetColor(const val: TGLColor);
+procedure TGLPipeNode.SetColor(const val: TGColor);
 begin
 begin
   FColor.Assign(val);
   FColor.Assign(val);
 end;
 end;
@@ -928,7 +928,7 @@ type
   end;
   end;
   TRowData = record
   TRowData = record
     node: array of TNodeData;
     node: array of TNodeData;
-    color: TGLColorVector;
+    color: TGColorVector;
     center: TVector3f;
     center: TVector3f;
     textcoordT: Single;
     textcoordT: Single;
   end;
   end;

+ 9 - 9
Source/GLS.FBORenderer.pas

@@ -25,7 +25,7 @@ uses
   GLS.Scene,
   GLS.Scene,
   GLS.Texture,
   GLS.Texture,
   GLS.Context,
   GLS.Context,
-  GLS.Color,
+  GLScene.Color,
   GLS.Material,
   GLS.Material,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLS.State,
   GLS.State,
@@ -188,7 +188,7 @@ type
     FPostInitialize: TNotifyEvent;
     FPostInitialize: TNotifyEvent;
     FAfterRender: TGLDirectRenderEvent;
     FAfterRender: TGLDirectRenderEvent;
     FPreInitialize: TNotifyEvent;
     FPreInitialize: TNotifyEvent;
-    FBackgroundColor: TGLColor;
+    FBackgroundColor: TGColor;
     FClearOptions: TGLFBOClearOptions;
     FClearOptions: TGLFBOClearOptions;
     FAspect: Single;
     FAspect: Single;
     FSceneScaleFactor: Single;
     FSceneScaleFactor: Single;
@@ -216,7 +216,7 @@ type
     procedure SetCamera(const Value: TGLCamera);
     procedure SetCamera(const Value: TGLCamera);
     procedure SetEnabledRenderBuffers(const Value: TGLEnabledRenderBuffers);
     procedure SetEnabledRenderBuffers(const Value: TGLEnabledRenderBuffers);
     procedure SetTargetVisibility(const Value: TGLFBOTargetVisibility);
     procedure SetTargetVisibility(const Value: TGLFBOTargetVisibility);
-    procedure SetBackgroundColor(const Value: TGLColor);
+    procedure SetBackgroundColor(const Value: TGColor);
     function StoreSceneScaleFactor: Boolean;
     function StoreSceneScaleFactor: Boolean;
     function StoreAspect: Boolean;
     function StoreAspect: Boolean;
     procedure SetUseLibraryAsMultiTarget(Value: Boolean);
     procedure SetUseLibraryAsMultiTarget(Value: Boolean);
@@ -264,7 +264,7 @@ type
       write SetDepthTextureName;
       write SetDepthTextureName;
     property MaterialLibrary: TGLAbstractMaterialLibrary read GetMaterialLibrary
     property MaterialLibrary: TGLAbstractMaterialLibrary read GetMaterialLibrary
       write SetMaterialLibrary;
       write SetMaterialLibrary;
-    property BackgroundColor: TGLColor read FBackgroundColor write SetBackgroundColor;
+    property BackgroundColor: TGColor read FBackgroundColor write SetBackgroundColor;
     property ClearOptions: TGLFBOClearOptions read FClearOptions
     property ClearOptions: TGLFBOClearOptions read FClearOptions
       write FClearOptions;
       write FClearOptions;
     (* Camera used for rendering to the FBO
     (* Camera used for rendering to the FBO
@@ -808,7 +808,7 @@ end;
 procedure TGLFrameBuffer.Render(var rci: TGLRenderContextInfo; baseObject:
 procedure TGLFrameBuffer.Render(var rci: TGLRenderContextInfo; baseObject:
   TGLBaseSceneObject);
   TGLBaseSceneObject);
 var
 var
-  backColor: TGLColorVector;
+  backColor: TGColorVector;
   buffer: TGLSceneBuffer;
   buffer: TGLSceneBuffer;
 begin
 begin
   Bind;
   Bind;
@@ -979,7 +979,7 @@ begin
   inherited;
   inherited;
   ObjectStyle := [osDirectDraw, osNoVisibilityCulling];
   ObjectStyle := [osDirectDraw, osNoVisibilityCulling];
   FFbo := TGLFrameBuffer.Create;
   FFbo := TGLFrameBuffer.Create;
-  FBackgroundColor := TGLColor.Create(Self);
+  FBackgroundColor := TGColor.Create(Self);
   FUseLibraryAsMultiTarget := False;
   FUseLibraryAsMultiTarget := False;
   FForceTextureDimensions := True;
   FForceTextureDimensions := True;
   FWidth := 256;
   FWidth := 256;
@@ -1278,7 +1278,7 @@ procedure TGLFBORenderer.RenderToFBO(var ARci: TGLRenderContextInfo);
 
 
 type
 type
   TGLStoredStates = record
   TGLStoredStates = record
-    ColorClearValue: TGLColorVector;
+    ColorClearValue: TGColorVector;
     ColorWriteMask: TGLColorMask;
     ColorWriteMask: TGLColorMask;
     Tests: TGLStates;
     Tests: TGLStates;
   end;
   end;
@@ -1306,7 +1306,7 @@ type
   end;
   end;
 
 
 var
 var
-  backColor: TGLColorVector;
+  backColor: TGColorVector;
   buffer: TGLSceneBuffer;
   buffer: TGLSceneBuffer;
   savedStates: TGLStoredStates;
   savedStates: TGLStoredStates;
   w, h: Integer;
   w, h: Integer;
@@ -1420,7 +1420,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLFBORenderer.SetBackgroundColor(const Value: TGLColor);
+procedure TGLFBORenderer.SetBackgroundColor(const Value: TGColor);
 begin
 begin
   FBackgroundColor.Assign(Value);
   FBackgroundColor.Assign(Value);
 end;
 end;

+ 5 - 5
Source/GLS.FileMS3D.pas

@@ -17,7 +17,7 @@ uses
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
   GLScene.VectorTypes, 
   GLScene.VectorTypes, 
   GLS.Material, 
   GLS.Material, 
-  GLS.Color, 
+  GLScene.Color, 
   GLS.Texture,
   GLS.Texture,
   GLScene.VectorGeometry, 
   GLScene.VectorGeometry, 
   GLScene.VectorLists, 
   GLScene.VectorLists, 
@@ -122,10 +122,10 @@ type
   // *) ms3d_material_t;
   // *) ms3d_material_t;
   TMS3DMaterial = record
   TMS3DMaterial = record
     Name: array[0..31] of AnsiChar;
     Name: array[0..31] of AnsiChar;
-    Ambient: TGLColorVector;
-    Diffuse: TGLColorVector;
-    Specular: TGLColorVector;
-    Emissive: TGLColorVector;
+    Ambient: TGColorVector;
+    Diffuse: TGColorVector;
+    Specular: TGColorVector;
+    Emissive: TGColorVector;
     Shininess: single;
     Shininess: single;
     Transparency: single;
     Transparency: single;
     Mode: AnsiChar;
     Mode: AnsiChar;

+ 1 - 1
Source/GLS.FileOBJ.pas

@@ -27,7 +27,7 @@ uses
   GLS.VectorFileObjects,
   GLS.VectorFileObjects,
   GLScene.VectorLists,  
   GLScene.VectorLists,  
   GLS.Texture,  
   GLS.Texture,  
-  GLS.Color,
+  GLScene.Color,
   GLS.RenderContextInfo, 
   GLS.RenderContextInfo, 
   GLS.Material,
   GLS.Material,
   GLScene.Utils;
   GLScene.Utils;

+ 12 - 12
Source/GLS.FireFX.pas

@@ -24,7 +24,7 @@ uses
   GLScene.VectorLists,
   GLScene.VectorLists,
   GLScene.VectorTypes,
   GLScene.VectorTypes,
   GLS.Cadencer,
   GLS.Cadencer,
-  GLS.Color,
+  GLScene.Color,
   GLScene.BaseClasses,
   GLScene.BaseClasses,
   GLScene.Coordinates,
   GLScene.Coordinates,
   GLScene.Manager,
   GLScene.Manager,
@@ -58,7 +58,7 @@ type
     FParticleSize, FFireDensity, FFireEvaporation: Single;
     FParticleSize, FFireDensity, FFireEvaporation: Single;
     FFireCrown, FParticleInterval, IntervalDelta: Single;
     FFireCrown, FParticleInterval, IntervalDelta: Single;
     NP: Integer;
     NP: Integer;
-    FInnerColor, FOuterColor: TGLColor;
+    FInnerColor, FOuterColor: TGColor;
     FFireBurst, FFireRadius: Single;
     FFireBurst, FFireRadius: Single;
     FDisabled, FPaused, FUseInterval: Boolean;
     FDisabled, FPaused, FUseInterval: Boolean;
     FReference: TGLBaseSceneObject;
     FReference: TGLBaseSceneObject;
@@ -71,14 +71,14 @@ type
     procedure SetInitialDir(const val: TGCoordinates);
     procedure SetInitialDir(const val: TGCoordinates);
     procedure SetCadencer(const val: TGLCadencer);
     procedure SetCadencer(const val: TGLCadencer);
     function StoreParticleSize: Boolean;
     function StoreParticleSize: Boolean;
-    procedure SetInnerColor(const val: TGLcolor);
-    procedure SetOuterColor(const val: TGLcolor);
+    procedure SetInnerColor(const val: TGColor);
+    procedure SetOuterColor(const val: TGColor);
     procedure SetReference(const val: TGLBaseSceneObject);
     procedure SetReference(const val: TGLBaseSceneObject);
     procedure SetMaxParticles(const val: Integer);
     procedure SetMaxParticles(const val: Integer);
     procedure Notification(AComponent: TComponent; Operation: TOperation); override;
     procedure Notification(AComponent: TComponent; Operation: TOperation); override;
     procedure CalcFire(deltaTime: Double; ParticleInterval, ParticleLife: Single;
     procedure CalcFire(deltaTime: Double; ParticleInterval, ParticleLife: Single;
       FireAlpha: Single);
       FireAlpha: Single);
-    procedure AffParticle3d(Color2: TGLColorVector; const mat: TGLMatrix);
+    procedure AffParticle3d(Color2: TGColorVector; const mat: TGLMatrix);
   public
   public
     constructor Create(AOwner: TComponent); override;
     constructor Create(AOwner: TComponent); override;
     destructor Destroy; override;
     destructor Destroy; override;
@@ -110,9 +110,9 @@ type
     // Size of the particle, in absolute units.
     // Size of the particle, in absolute units.
     property ParticleSize: Single read FParticleSize write FParticleSize stored StoreParticleSize;
     property ParticleSize: Single read FParticleSize write FParticleSize stored StoreParticleSize;
     // Inner color of a particle.
     // Inner color of a particle.
-    property InnerColor: TGLcolor read FInnerColor write SetInnerColor;
+    property InnerColor: TGColor read FInnerColor write SetInnerColor;
     // Outer color of a particle.
     // Outer color of a particle.
-    property OuterColor: TGLcolor read FOuterColor write SetOuterColor; // default clrWhite;
+    property OuterColor: TGColor read FOuterColor write SetOuterColor; // default clrWhite;
     property FireDensity: Single read FFireDensity write FFireDensity;
     property FireDensity: Single read FFireDensity write FFireDensity;
     property FireEvaporation: Single read FFireEvaporation write FFireEvaporation;
     property FireEvaporation: Single read FFireEvaporation write FFireEvaporation;
     (* Adjust a crown (circular) radius on which particles are spawned.
     (* Adjust a crown (circular) radius on which particles are spawned.
@@ -214,9 +214,9 @@ begin
   FInitialDir := TGCoordinates.CreateInitialized(Self, YHmgVector, csPoint);
   FInitialDir := TGCoordinates.CreateInitialized(Self, YHmgVector, csPoint);
   FMaxParticles := 256;
   FMaxParticles := 256;
   FParticleSize := 1.0;
   FParticleSize := 1.0;
-  FInnerColor := TGLColor.Create(Self);
+  FInnerColor := TGColor.Create(Self);
   FInnerColor.Initialize(clrYellow);
   FInnerColor.Initialize(clrYellow);
-  FOuterColor := TGLColor.Create(Self);
+  FOuterColor := TGColor.Create(Self);
   FOuterColor.Initialize(clrOrange);
   FOuterColor.Initialize(clrOrange);
   FFireDensity := 1;
   FFireDensity := 1;
   FFireEvaporation := 0.86;
   FFireEvaporation := 0.86;
@@ -311,7 +311,7 @@ begin
 end;
 end;
 
 
 
 
-procedure TGLFireFXManager.SetInnerColor(const val: TGLcolor);
+procedure TGLFireFXManager.SetInnerColor(const val: TGColor);
 begin
 begin
   if FInnerColor <> val then
   if FInnerColor <> val then
   begin
   begin
@@ -321,7 +321,7 @@ begin
 end;
 end;
 
 
 
 
-procedure TGLFireFXManager.SetOuterColor(const val: TGLcolor);
+procedure TGLFireFXManager.SetOuterColor(const val: TGColor);
 begin
 begin
   if FOuterColor <> val then
   if FOuterColor <> val then
   begin
   begin
@@ -524,7 +524,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLFireFXManager.AffParticle3d(Color2: TGLColorVector; const mat: TGLMatrix);
+procedure TGLFireFXManager.AffParticle3d(Color2: TGColorVector; const mat: TGLMatrix);
 var
 var
   vx, vy: TGLVector;
   vx, vy: TGLVector;
   i: Integer;
   i: Integer;

+ 20 - 20
Source/GLS.GameMenu.pas

@@ -21,7 +21,7 @@ uses
   GLS.Scene,
   GLS.Scene,
   GLS.Material,
   GLS.Material,
   GLS.BitmapFont,
   GLS.BitmapFont,
-  GLS.Color,
+  GLScene.Color,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
   GLS.Canvas,
   GLS.Canvas,
   GLS.Context;
   GLS.Context;
@@ -37,8 +37,8 @@ type
     FFont: TGLCustomBitmapFont;
     FFont: TGLCustomBitmapFont;
     FMarginVert, FMarginHorz, FSpacing: Integer;
     FMarginVert, FMarginHorz, FSpacing: Integer;
     FMenuScale: TGLGameMenuScale;
     FMenuScale: TGLGameMenuScale;
-    FBackColor: TGLColor;
-    FInactiveColor, FActiveColor, FDisabledColor: TGLColor;
+    FBackColor: TGColor;
+    FInactiveColor, FActiveColor, FDisabledColor: TGColor;
     FMaterialLibrary: TGLMaterialLibrary;
     FMaterialLibrary: TGLMaterialLibrary;
     FTitleMaterialName: TGLLibMaterialName;
     FTitleMaterialName: TGLLibMaterialName;
     FTitleWidth, FTitleHeight: Integer;
     FTitleWidth, FTitleHeight: Integer;
@@ -53,10 +53,10 @@ type
     procedure SetMarginVert(AValue: Integer);
     procedure SetMarginVert(AValue: Integer);
     procedure SetSpacing(AValue: Integer);
     procedure SetSpacing(AValue: Integer);
     procedure SetFont(AValue: TGLCustomBitmapFont);
     procedure SetFont(AValue: TGLCustomBitmapFont);
-    procedure SetBackColor(AValue: TGLColor);
-    procedure SetInactiveColor(AValue: TGLColor);
-    procedure SetActiveColor(AValue: TGLColor);
-    procedure SetDisabledColor(AValue: TGLColor);
+    procedure SetBackColor(AValue: TGColor);
+    procedure SetInactiveColor(AValue: TGColor);
+    procedure SetActiveColor(AValue: TGColor);
+    procedure SetDisabledColor(AValue: TGColor);
     function GetEnabled(AIndex: Integer): Boolean;
     function GetEnabled(AIndex: Integer): Boolean;
     procedure SetEnabled(AIndex: Integer; AValue: Boolean);
     procedure SetEnabled(AIndex: Integer; AValue: Boolean);
     procedure SetItems(AValue: TStrings);
     procedure SetItems(AValue: TStrings);
@@ -87,10 +87,10 @@ type
     property TitleMaterialName: string read FTitleMaterialName write SetTitleMaterialName;
     property TitleMaterialName: string read FTitleMaterialName write SetTitleMaterialName;
     property TitleWidth: Integer read FTitleWidth write SetTitleWidth default 0;
     property TitleWidth: Integer read FTitleWidth write SetTitleWidth default 0;
     property TitleHeight: Integer read FTitleHeight write SetTitleHeight default 0;
     property TitleHeight: Integer read FTitleHeight write SetTitleHeight default 0;
-    property BackColor: TGLColor read FBackColor write SetBackColor;
-    property InactiveColor: TGLColor read FInactiveColor write SetInactiveColor;
-    property ActiveColor: TGLColor read FActiveColor write SetActiveColor;
-    property DisabledColor: TGLColor read FDisabledColor write SetDisabledColor;
+    property BackColor: TGColor read FBackColor write SetBackColor;
+    property InactiveColor: TGColor read FInactiveColor write SetInactiveColor;
+    property ActiveColor: TGColor read FActiveColor write SetActiveColor;
+    property DisabledColor: TGColor read FDisabledColor write SetDisabledColor;
     property Items: TStrings read FItems write SetItems;
     property Items: TStrings read FItems write SetItems;
     property Selected: Integer read FSelected write SetSelected default -1;
     property Selected: Integer read FSelected write SetSelected default -1;
     property OnSelectedChanged: TNotifyEvent read FOnSelectedChanged write FOnSelectedChanged;
     property OnSelectedChanged: TNotifyEvent read FOnSelectedChanged write FOnSelectedChanged;
@@ -130,10 +130,10 @@ begin
   FMarginVert := 16;
   FMarginVert := 16;
   FSpacing := 16;
   FSpacing := 16;
   FMenuScale := gmsNormal;
   FMenuScale := gmsNormal;
-  FBackColor := TGLColor.CreateInitialized(Self, clrTransparent, NotifyChange);
-  FInactiveColor := TGLColor.CreateInitialized(Self, clrGray75, NotifyChange);
-  FActiveColor := TGLColor.CreateInitialized(Self, clrWhite, NotifyChange);
-  FDisabledColor := TGLColor.CreateInitialized(Self, clrGray60, NotifyChange);
+  FBackColor := TGColor.CreateInitialized(Self, clrTransparent, NotifyChange);
+  FInactiveColor := TGColor.CreateInitialized(Self, clrGray75, NotifyChange);
+  FActiveColor := TGColor.CreateInitialized(Self, clrWhite, NotifyChange);
+  FDisabledColor := TGColor.CreateInitialized(Self, clrGray60, NotifyChange);
 end;
 end;
 
 
 destructor TGLGameMenu.Destroy;
 destructor TGLGameMenu.Destroy;
@@ -164,7 +164,7 @@ var
   canvas: TGLCanvas;
   canvas: TGLCanvas;
   buffer: TGLSceneBuffer;
   buffer: TGLSceneBuffer;
   i, w, h, tw, Y: Integer;
   i, w, h, tw, Y: Integer;
-  color: TGLColorVector;
+  color: TGColorVector;
   libMat: TGLLibMaterial;
   libMat: TGLLibMaterial;
 begin
 begin
   if Font = nil then
   if Font = nil then
@@ -327,22 +327,22 @@ begin
     FFont.FreeNotification(Self);
     FFont.FreeNotification(Self);
 end;
 end;
 
 
-procedure TGLGameMenu.SetBackColor(AValue: TGLColor);
+procedure TGLGameMenu.SetBackColor(AValue: TGColor);
 begin
 begin
   FBackColor.Assign(AValue);
   FBackColor.Assign(AValue);
 end;
 end;
 
 
-procedure TGLGameMenu.SetInactiveColor(AValue: TGLColor);
+procedure TGLGameMenu.SetInactiveColor(AValue: TGColor);
 begin
 begin
   FInactiveColor.Assign(AValue);
   FInactiveColor.Assign(AValue);
 end;
 end;
 
 
-procedure TGLGameMenu.SetActiveColor(AValue: TGLColor);
+procedure TGLGameMenu.SetActiveColor(AValue: TGColor);
 begin
 begin
   FActiveColor.Assign(AValue);
   FActiveColor.Assign(AValue);
 end;
 end;
 
 
-procedure TGLGameMenu.SetDisabledColor(AValue: TGLColor);
+procedure TGLGameMenu.SetDisabledColor(AValue: TGColor);
 begin
 begin
   FDisabledColor.Assign(AValue);
   FDisabledColor.Assign(AValue);
 end;
 end;

+ 16 - 16
Source/GLS.Gizmo.pas

@@ -44,7 +44,7 @@ uses
 
 
   GLS.Scene,
   GLS.Scene,
   GLScene.PersistentClasses,
   GLScene.PersistentClasses,
-  GLS.Color,
+  GLScene.Color,
   GLS.Objects,
   GLS.Objects,
   GLS.Material,
   GLS.Material,
   GLS.GeomObjects,
   GLS.GeomObjects,
@@ -158,9 +158,9 @@ type
     // FLastOperation,
     // FLastOperation,
     FOperation: TGLGizmoOperation;
     FOperation: TGLGizmoOperation;
     FSelAxis: TGLGizmoAxis;
     FSelAxis: TGLGizmoAxis;
-    FBoundingBoxColor: TGLColor;
-    FSelectedColor: TGLColor;
-    FVisibleInfoLabelsColor: TGLColor;
+    FBoundingBoxColor: TGColor;
+    FSelectedColor: TGColor;
+    FVisibleInfoLabelsColor: TGColor;
     FBoundingBoxColorChanged: Boolean;
     FBoundingBoxColorChanged: Boolean;
     FVisibleInfoLabelsColorChanged: Boolean;
     FVisibleInfoLabelsColorChanged: Boolean;
     FForceOperation: Boolean;
     FForceOperation: Boolean;
@@ -197,9 +197,9 @@ type
     procedure SetRootGizmo(const AValue: TGLBaseSceneObject);
     procedure SetRootGizmo(const AValue: TGLBaseSceneObject);
     procedure SetGizmoElements(const AValue: TGLGizmoElements);
     procedure SetGizmoElements(const AValue: TGLGizmoElements);
     procedure SeTGLGizmoVisibleInfoLabels(const AValue: TGLGizmoVisibleInfoLabels);
     procedure SeTGLGizmoVisibleInfoLabels(const AValue: TGLGizmoVisibleInfoLabels);
-    procedure SetBoundingBoxColor(const AValue: TGLColor);
-    procedure SetSelectedColor(const AValue: TGLColor);
-    procedure SetVisibleInfoLabelsColor(const AValue: TGLColor);
+    procedure SetBoundingBoxColor(const AValue: TGColor);
+    procedure SetSelectedColor(const AValue: TGColor);
+    procedure SetVisibleInfoLabelsColor(const AValue: TGColor);
     procedure SetExcludeObjectsList(const AValue: TStrings);
     procedure SetExcludeObjectsList(const AValue: TStrings);
     procedure DirectGlDisable(Sender: TObject; var Rci: TGLRenderContextInfo);
     procedure DirectGlDisable(Sender: TObject; var Rci: TGLRenderContextInfo);
     procedure DirectGlEnable(Sender: TObject; var Rci: TGLRenderContextInfo);
     procedure DirectGlEnable(Sender: TObject; var Rci: TGLRenderContextInfo);
@@ -235,9 +235,9 @@ type
     property Viewer: TGLSceneViewer read FViewer write SetViewer;
     property Viewer: TGLSceneViewer read FViewer write SetViewer;
     property GizmoElements: TGLGizmoElements read FGizmoElements
     property GizmoElements: TGLGizmoElements read FGizmoElements
       write SetGizmoElements;
       write SetGizmoElements;
-    property BoundingBoxColor: TGLColor read FBoundingBoxColor
+    property BoundingBoxColor: TGColor read FBoundingBoxColor
       write SetBoundingBoxColor;
       write SetBoundingBoxColor;
-    property SelectedColor: TGLColor read FSelectedColor write SetSelectedColor;
+    property SelectedColor: TGColor read FSelectedColor write SetSelectedColor;
     property SelAxis: TGLGizmoAxis read FSelAxis write FSelAxis;
     property SelAxis: TGLGizmoAxis read FSelAxis write FSelAxis;
     property ForceAxis: Boolean read FForceAxis write FForceAxis;
     property ForceAxis: Boolean read FForceAxis write FForceAxis;
     property SelectedObj: TGLBaseSceneObject read FSelectedObj
     property SelectedObj: TGLBaseSceneObject read FSelectedObj
@@ -251,7 +251,7 @@ type
       write SetExcludeObjectsList;
       write SetExcludeObjectsList;
     property VisibleInfoLabels: TGLGizmoVisibleInfoLabels
     property VisibleInfoLabels: TGLGizmoVisibleInfoLabels
       read FVisibleVisibleInfoLabels write SeTGLGizmoVisibleInfoLabels;
       read FVisibleVisibleInfoLabels write SeTGLGizmoVisibleInfoLabels;
-    property VisibleInfoLabelsColor: TGLColor read FVisibleInfoLabelsColor
+    property VisibleInfoLabelsColor: TGColor read FVisibleInfoLabelsColor
       write SetVisibleInfoLabelsColor;
       write SetVisibleInfoLabelsColor;
     property AutoZoom: Boolean read FAutoZoom write FAutoZoom;
     property AutoZoom: Boolean read FAutoZoom write FAutoZoom;
     property AutoZoomFactor: Single read FAutoZoomFactor write FAutoZoomFactor;
     property AutoZoomFactor: Single read FAutoZoomFactor write FAutoZoomFactor;
@@ -335,12 +335,12 @@ begin
   FGizmoThickness := 1;
   FGizmoThickness := 1;
 
 
   FInternalRaycastHitData := TList.Create;
   FInternalRaycastHitData := TList.Create;
-  FBoundingBoxColor := TGLColor.Create(Self);
+  FBoundingBoxColor := TGColor.Create(Self);
   FBoundingBoxColor.Color := ClrWhite;
   FBoundingBoxColor.Color := ClrWhite;
   FBoundingBoxColorChanged := False;
   FBoundingBoxColorChanged := False;
-  FSelectedColor := TGLColor.Create(Self);
+  FSelectedColor := TGColor.Create(Self);
   FSelectedColor.Color := ClrYellow;
   FSelectedColor.Color := ClrYellow;
-  FVisibleInfoLabelsColor := TGLColor.Create(Self);
+  FVisibleInfoLabelsColor := TGColor.Create(Self);
   FVisibleInfoLabelsColor.Color := ClrYellow;
   FVisibleInfoLabelsColor.Color := ClrYellow;
   FVisibleInfoLabelsColorChanged := False;
   FVisibleInfoLabelsColorChanged := False;
 
 
@@ -743,7 +743,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLGizmo.SetBoundingBoxColor(const AValue: TGLColor);
+procedure TGLGizmo.SetBoundingBoxColor(const AValue: TGColor);
 begin
 begin
   // Bug Here New Color is not Updated
   // Bug Here New Color is not Updated
   if AValue <> FBoundingBoxColor then
   if AValue <> FBoundingBoxColor then
@@ -768,7 +768,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLGizmo.SetSelectedColor(const AValue: TGLColor);
+procedure TGLGizmo.SetSelectedColor(const AValue: TGColor);
 begin
 begin
   if AValue <> FSelectedColor then
   if AValue <> FSelectedColor then
   begin
   begin
@@ -776,7 +776,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLGizmo.SetVisibleInfoLabelsColor(const AValue: TGLColor);
+procedure TGLGizmo.SetVisibleInfoLabelsColor(const AValue: TGColor);
 begin
 begin
   // Bug Here New Color is not Updated
   // Bug Here New Color is not Updated
   if AValue <> FSelectedColor then
   if AValue <> FSelectedColor then

+ 21 - 21
Source/GLS.GizmoEx.pas

@@ -22,7 +22,7 @@ uses
   Vcl.StdCtrls,
   Vcl.StdCtrls,
 
 
   GLS.Scene,
   GLS.Scene,
-  GLS.Color,
+  GLScene.Color,
   GLS.Objects,
   GLS.Objects,
   GLScene.VectorGeometry,
   GLScene.VectorGeometry,
   GLS.Material,
   GLS.Material,
@@ -263,10 +263,10 @@ type
     fInfoLabelCoordType: TInfoLabelCoordType;
     fInfoLabelCoordType: TInfoLabelCoordType;
     FReferenceCoordSystem: TGLGizmoExReferenceCoordinateSystem;
     FReferenceCoordSystem: TGLGizmoExReferenceCoordinateSystem;
 
 
-    FBoundingBoxColor: TGLColor;
-    FSelectedColor: TGLColor;
-    FVisibleInfoLabelsColor: TGLColor;
-    FSelectionRegionColor: TGLColor;
+    FBoundingBoxColor: TGColor;
+    FSelectedColor: TGColor;
+    FVisibleInfoLabelsColor: TGColor;
+    FSelectionRegionColor: TGColor;
 
 
     FVisibleInfoLabelsColorChanged: Boolean;
     FVisibleInfoLabelsColorChanged: Boolean;
 
 
@@ -326,10 +326,10 @@ type
     procedure SetRootObjects(const AValue: TGLBaseSceneObject);
     procedure SetRootObjects(const AValue: TGLBaseSceneObject);
     procedure SetGizmoTmpRoot(const AValue: TGLBaseSceneObject);
     procedure SetGizmoTmpRoot(const AValue: TGLBaseSceneObject);
     procedure SeTGLGizmoExVisibleInfoLabels(const AValue: TGLGizmoExVisibleInfoLabels);
     procedure SeTGLGizmoExVisibleInfoLabels(const AValue: TGLGizmoExVisibleInfoLabels);
-    procedure SetBoundingBoxColor(const AValue: TGLColor);
-    procedure SetSelectedColor(const AValue: TGLColor);
-    procedure SetVisibleInfoLabelsColor(const AValue: TGLColor);
-    procedure SetSelectionRegionColor(const AValue: TGLColor);
+    procedure SetBoundingBoxColor(const AValue: TGColor);
+    procedure SetSelectedColor(const AValue: TGColor);
+    procedure SetVisibleInfoLabelsColor(const AValue: TGColor);
+    procedure SetSelectionRegionColor(const AValue: TGColor);
     procedure SetCanChangeWithChildren(AValue: Boolean);
     procedure SetCanChangeWithChildren(AValue: Boolean);
     procedure SetAALines(aValue: Boolean);
     procedure SetAALines(aValue: Boolean);
     procedure SetInfoLabelCoordType(aValue: TInfoLabelCoordType);
     procedure SetInfoLabelCoordType(aValue: TInfoLabelCoordType);
@@ -401,9 +401,9 @@ type
     //--------------------------------------------------------------------
     //--------------------------------------------------------------------
   published
   published
     property Viewer: TGLSceneViewer read FViewer write SetViewer;
     property Viewer: TGLSceneViewer read FViewer write SetViewer;
-    property BoundingBoxColor: TGLColor read FBoundingBoxColor write SetBoundingBoxColor;
-    property SelectedColor: TGLColor read FSelectedColor write SetSelectedColor;
-    property SelectionRegionColor: TGLColor read FSelectionRegionColor write SetSelectionRegionColor;
+    property BoundingBoxColor: TGColor read FBoundingBoxColor write SetBoundingBoxColor;
+    property SelectedColor: TGColor read FSelectedColor write SetSelectedColor;
+    property SelectionRegionColor: TGColor read FSelectionRegionColor write SetSelectionRegionColor;
     property SelectedObj: TGLBaseSceneObject read GetSelectedObj write SetSelectedObj;
     property SelectedObj: TGLBaseSceneObject read GetSelectedObj write SetSelectedObj;
     property SelectedObjects: TGLPickList read GetPickList write SetPickList;
     property SelectedObjects: TGLPickList read GetPickList write SetPickList;
     property OperationMode: TGLGizmoExOperationMode read FOperationMode write SetOperationMode default gomSelect;
     property OperationMode: TGLGizmoExOperationMode read FOperationMode write SetOperationMode default gomSelect;
@@ -412,7 +412,7 @@ type
     property ExcludeClassname: Boolean read FExcludeClassname write FExcludeClassname;
     property ExcludeClassname: Boolean read FExcludeClassname write FExcludeClassname;
     property ExcludeClassnameList: TStrings read FExcludeClassnameList write SetExcludeClassnameList;
     property ExcludeClassnameList: TStrings read FExcludeClassnameList write SetExcludeClassnameList;
     property VisibleInfoLabels: TGLGizmoExVisibleInfoLabels read FVisibleVisibleInfoLabels write SeTGLGizmoExVisibleInfoLabels;
     property VisibleInfoLabels: TGLGizmoExVisibleInfoLabels read FVisibleVisibleInfoLabels write SeTGLGizmoExVisibleInfoLabels;
-    property VisibleInfoLabelsColor: TGLColor read FVisibleInfoLabelsColor write SetVisibleInfoLabelsColor;
+    property VisibleInfoLabelsColor: TGColor read FVisibleInfoLabelsColor write SetVisibleInfoLabelsColor;
     property AutoZoom: Boolean read FAutoZoom write FAutoZoom default True;
     property AutoZoom: Boolean read FAutoZoom write FAutoZoom default True;
     property AutoZoomFactor: Single read FAutoZoomFactor write SetAutoZoomFactor;
     property AutoZoomFactor: Single read FAutoZoomFactor write SetAutoZoomFactor;
     property ZoomFactor: Single read FZoomFactor write SetZoomFactor;
     property ZoomFactor: Single read FZoomFactor write SetZoomFactor;
@@ -720,13 +720,13 @@ begin
   FMoveCoef := 0.1;
   FMoveCoef := 0.1;
   FScaleCoef := 0.1;
   FScaleCoef := 0.1;
 
 
-  FBoundingBoxColor := TGLColor.Create(Self);
+  FBoundingBoxColor := TGColor.Create(Self);
   FBoundingBoxColor.Color := clrWhite;
   FBoundingBoxColor.Color := clrWhite;
-  FSelectionRegionColor := TGLColor.Create(Self);
+  FSelectionRegionColor := TGColor.Create(Self);
   SelectionRegionColor.Color := clrBlack;
   SelectionRegionColor.Color := clrBlack;
-  FSelectedColor := TGLColor.Create(Self);
+  FSelectedColor := TGColor.Create(Self);
   FSelectedColor.Color := clrYellow;
   FSelectedColor.Color := clrYellow;
-  FVisibleInfoLabelsColor := TGLColor.Create(Self);
+  FVisibleInfoLabelsColor := TGColor.Create(Self);
   FVisibleInfoLabelsColor.Color := clrYellow;
   FVisibleInfoLabelsColor.Color := clrYellow;
   FVisibleInfoLabelsColorChanged := False;
   FVisibleInfoLabelsColorChanged := False;
 
 
@@ -2365,7 +2365,7 @@ begin
 
 
 end;
 end;
 
 
-procedure TGLGizmoEx.SetBoundingBoxColor(const AValue: TGLColor);
+procedure TGLGizmoEx.SetBoundingBoxColor(const AValue: TGColor);
 begin
 begin
   if AValue <> FBoundingBoxColor then
   if AValue <> FBoundingBoxColor then
   begin
   begin
@@ -2374,7 +2374,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLGizmoEx.SetSelectedColor(const AValue: TGLColor);
+procedure TGLGizmoEx.SetSelectedColor(const AValue: TGColor);
 begin
 begin
   if AValue <> FSelectedColor then
   if AValue <> FSelectedColor then
   begin
   begin
@@ -2734,7 +2734,7 @@ begin
 end;
 end;
 
 
 
 
-procedure TGLGizmoEx.SetVisibleInfoLabelsColor(const AValue: TGLColor);
+procedure TGLGizmoEx.SetVisibleInfoLabelsColor(const AValue: TGColor);
 begin
 begin
   if AValue <> FSelectedColor then
   if AValue <> FSelectedColor then
   begin
   begin
@@ -2745,7 +2745,7 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TGLGizmoEx.SetSelectionRegionColor(const AValue: TGLColor);
+procedure TGLGizmoEx.SetSelectionRegionColor(const AValue: TGColor);
 begin
 begin
   if AValue <> FSelectionRegionColor then
   if AValue <> FSelectionRegionColor then
   begin
   begin

Some files were not shown because too many files changed in this diff