瀏覽代碼

Merged duplicate assets

GLScene 2 年之前
父節點
當前提交
537f47c5fb
共有 100 個文件被更改,包括 378 次插入797 次删除
  1. 0 0
      Examples/Assets/Model/Head256.3ds
  2. 0 0
      Examples/Assets/Model/plane.3ds
  3. 0 0
      Examples/Assets/Shader/NormalMapp_fp.cg
  4. 0 0
      Examples/Assets/Shader/NormalMapp_vp.cg
  5. 0 0
      Examples/Assets/Shader/bumpmapping_fp.cg
  6. 0 0
      Examples/Assets/Shader/bumpmapping_vp.cg
  7. 0 0
      Examples/Assets/Shader/filterF.c
  8. 0 0
      Examples/Assets/Shader/filterV.c
  9. 0 0
      Examples/Assets/Shader/fragment_bkground.cg
  10. 0 0
      Examples/Assets/Shader/fragment_clouds.cg
  11. 0 0
      Examples/Assets/Shader/fragment_moon.cg
  12. 0 0
      Examples/Assets/Shader/reflect_fp.cg
  13. 0 0
      Examples/Assets/Shader/reflect_vp.cg
  14. 0 0
      Examples/Assets/Texture/Head256.tga
  15. 0 0
      Examples/Assets/Texture/HeadN256.tga
  16. 0 0
      Examples/Assets/Texture/HeadS256.tga
  17. 0 0
      Examples/Assets/Texture/tx_day.tga
  18. 0 0
      Examples/Assets/Texture/tx_masser_three_wan.tga
  19. 0 0
      Examples/Assets/Texture/tx_night.tga
  20. 0 0
      Examples/Assets/Texture/tx_secunda_three_wan.tga
  21. 0 0
      Examples/Assets/Texture/tx_sky_clear.tga
  22. 0 0
      Examples/Assets/Texture/tx_sky_cloudy.tga
  23. 0 0
      Examples/Assets/Texture/tx_sun.tga
  24. 0 0
      Examples/Assets/Texture/walkwaynorm.jpg
  25. 1 1
      Examples/Demos/cgshaders/BlinnSheen/CgBlinnSheen.dpr
  26. 5 19
      Examples/Demos/cgshaders/BlinnSheen/CgBlinnSheen.dproj
  27. 0 112
      Examples/Demos/cgshaders/BlinnSheen/Unit1.dfm
  28. 0 246
      Examples/Demos/cgshaders/BlinnSheen/Unit1.pas
  29. 10 8
      Examples/Demos/cgshaders/BlinnSheen/fBlinnSheen.pas
  30. 7 2
      Examples/Demos/cgshaders/BumpMapping/CgBumpMapping.dpr
  31. 5 3
      Examples/Demos/cgshaders/BumpMapping/CgBumpMapping.dproj
  32. 二進制
      Examples/Demos/cgshaders/BumpMapping/c2_tex.jpg
  33. 二進制
      Examples/Demos/cgshaders/BumpMapping/c_normal.jpg
  34. 二進制
      Examples/Demos/cgshaders/BumpMapping/c_tex.jpg
  35. 0 2
      Examples/Demos/cgshaders/BumpMapping/description.txt
  36. 20 1
      Examples/Demos/cgshaders/BumpMapping/fBumpMap.dfm
  37. 12 6
      Examples/Demos/cgshaders/BumpMapping/fBumpMap.pas
  38. 1 1
      Examples/Demos/cgshaders/Distortion/CgDistTexture.dpr
  39. 35 37
      Examples/Demos/cgshaders/Distortion/CgDistTexture.dproj
  40. 二進制
      Examples/Demos/cgshaders/Distortion/background.bmp
  41. 1 1
      Examples/Demos/cgshaders/Distortion/fDistTexture.dfm
  42. 24 26
      Examples/Demos/cgshaders/Distortion/fDistTexture.pas
  43. 1 1
      Examples/Demos/cgshaders/Reflect/CgReflect.dpr
  44. 19 19
      Examples/Demos/cgshaders/Reflect/CgReflect.dproj
  45. 38 39
      Examples/Demos/cgshaders/Reflect/fReflect.pas
  46. 0 0
      Examples/Demos/cgshaders/SkyClouds.jpg
  47. 20 0
      Examples/Demos/cgshaders/SkyClouds/CgSkyClouds.dpr
  48. 5 5
      Examples/Demos/cgshaders/SkyClouds/CgSkyClouds.dproj
  49. 0 4
      Examples/Demos/cgshaders/SkyClouds/Readme.txt
  50. 0 13
      Examples/Demos/cgshaders/SkyClouds/SkyClouds.dpr
  51. 31 6
      Examples/Demos/cgshaders/SkyClouds/fSkyClouds.dfm
  52. 23 19
      Examples/Demos/cgshaders/SkyClouds/fSkyClouds.pas
  53. 14 0
      Examples/Demos/cgshaders/Texturing/CgTextureD.dproj
  54. 0 33
      Examples/Demos/cgshaders/Texturing/cg_texture_fp.cg
  55. 0 48
      Examples/Demos/cgshaders/Texturing/cg_texture_vp.cg
  56. 43 43
      Examples/Demos/cgshaders/cgshaders.groupproj
  57. 0 0
      Examples/Demos/computing/Computing.groupproj
  58. 0 0
      Examples/Demos/computing/FastFT.jpg
  59. 0 0
      Examples/Demos/computing/FastFourierTransformation/FastFourierD.dpr
  60. 0 0
      Examples/Demos/computing/FastFourierTransformation/FastFourierD.dproj
  61. 0 0
      Examples/Demos/computing/FastFourierTransformation/fFourier_D.dfm
  62. 0 0
      Examples/Demos/computing/FastFourierTransformation/fFourier_D.pas
  63. 0 0
      Examples/Demos/computing/FastFourierTransformation/uCPUFFT.pas
  64. 0 0
      Examples/Demos/computing/PostProcessing.jpg
  65. 0 0
      Examples/Demos/computing/PostProcessing/PostProcessingD.dpr
  66. 0 0
      Examples/Demos/computing/PostProcessing/PostProcessingD.dproj
  67. 0 0
      Examples/Demos/computing/PostProcessing/PostProcessing_kernel.cu
  68. 0 0
      Examples/Demos/computing/PostProcessing/fPostProcessingD.dfm
  69. 0 0
      Examples/Demos/computing/PostProcessing/fPostProcessingD.pas
  70. 0 0
      Examples/Demos/computing/ScalarProduct/ScalarProductD.dpr
  71. 0 0
      Examples/Demos/computing/ScalarProduct/ScalarProductD.dproj
  72. 0 0
      Examples/Demos/computing/ScalarProduct/ScalarProduct_kernel.cu
  73. 0 0
      Examples/Demos/computing/ScalarProduct/fScalarProductD.dfm
  74. 0 0
      Examples/Demos/computing/ScalarProduct/fScalarProductD.pas
  75. 0 0
      Examples/Demos/computing/SimpleCUDATexture/SimpleTextureD.dpr
  76. 0 0
      Examples/Demos/computing/SimpleCUDATexture/SimpleTextureD.dproj
  77. 0 0
      Examples/Demos/computing/SimpleCUDATexture/SimpleTexture_kernel.cu
  78. 0 0
      Examples/Demos/computing/SimpleCUDATexture/fSimpleTexD.dfm
  79. 0 0
      Examples/Demos/computing/SimpleCUDATexture/fSimpleTexD.pas
  80. 0 0
      Examples/Demos/computing/StableFluids/FluidsD.dpr
  81. 0 0
      Examples/Demos/computing/StableFluids/FluidsD.dproj
  82. 0 0
      Examples/Demos/computing/StableFluids/Fluids_kernels.cu
  83. 0 0
      Examples/Demos/computing/StableFluids/fFluidsD.dfm
  84. 0 0
      Examples/Demos/computing/StableFluids/fFluidsD.pas
  85. 0 0
      Examples/Demos/computing/VertexDataGeneration/Simple kernel.cu
  86. 0 0
      Examples/Demos/computing/VertexDataGeneration/VertexGeneration.dpr
  87. 0 0
      Examples/Demos/computing/VertexDataGeneration/VertexGeneration.dproj
  88. 0 0
      Examples/Demos/computing/VertexDataGeneration/fVertexGenD.dfm
  89. 0 0
      Examples/Demos/computing/VertexDataGeneration/fVertexGenD.pas
  90. 0 0
      Examples/Demos/computing/aComputing.htm
  91. 5 5
      Examples/Demos/meshes/actor/ActorD.dpr
  92. 25 25
      Packages/GLScene.groupproj
  93. 4 18
      Packages/GLScene_Cg_DT.dproj
  94. 9 16
      Packages/GLScene_Cg_RT.dproj
  95. 5 5
      Packages/GLScene_GPU_DT.dpk
  96. 3 17
      Packages/GLScene_GPU_DT.dproj
  97. 0 0
      Packages/GLScene_GPU_RT.dpk
  98. 2 12
      Packages/GLScene_GPU_RT.dproj
  99. 2 0
      Packages/GLScene_Physics_RT.dproj
  100. 8 4
      Packages/GLScene_RT.dproj

+ 0 - 0
Examples/Demos/cgshaders/BlinnSheen/Head256.3ds → Examples/Assets/Model/Head256.3ds


+ 0 - 0
Examples/Demos/cgshaders/Reflect/plane.3ds → Examples/Assets/Model/plane.3ds


+ 0 - 0
Examples/Demos/cgshaders/BlinnSheen/NormalMapp_fp.cg → Examples/Assets/Shader/NormalMapp_fp.cg


+ 0 - 0
Examples/Demos/cgshaders/BlinnSheen/NormalMapp_vp.cg → Examples/Assets/Shader/NormalMapp_vp.cg


+ 0 - 0
Examples/Demos/cgshaders/BumpMapping/bumpmapping_fp.cg → Examples/Assets/Shader/bumpmapping_fp.cg


+ 0 - 0
Examples/Demos/cgshaders/BumpMapping/bumpmapping_vp.cg → Examples/Assets/Shader/bumpmapping_vp.cg


+ 0 - 0
Examples/Demos/cgshaders/Distortion/filterF.c → Examples/Assets/Shader/filterF.c


+ 0 - 0
Examples/Demos/cgshaders/Distortion/filterV.c → Examples/Assets/Shader/filterV.c


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Shaders/fragment_background.cg → Examples/Assets/Shader/fragment_bkground.cg


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Shaders/fragment_clouds.cg → Examples/Assets/Shader/fragment_clouds.cg


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Shaders/fragment_moon.cg → Examples/Assets/Shader/fragment_moon.cg


+ 0 - 0
Examples/Demos/cgshaders/Reflect/reflect_fp.cg → Examples/Assets/Shader/reflect_fp.cg


+ 0 - 0
Examples/Demos/cgshaders/Reflect/reflect_vp.cg → Examples/Assets/Shader/reflect_vp.cg


+ 0 - 0
Examples/Demos/cgshaders/BlinnSheen/Head256.tga → Examples/Assets/Texture/Head256.tga


+ 0 - 0
Examples/Demos/cgshaders/BlinnSheen/HeadN256.tga → Examples/Assets/Texture/HeadN256.tga


+ 0 - 0
Examples/Demos/cgshaders/BlinnSheen/HeadS256.tga → Examples/Assets/Texture/HeadS256.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/bg_day.tga → Examples/Assets/Texture/tx_day.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/tx_masser_three_wan.tga → Examples/Assets/Texture/tx_masser_three_wan.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/bg_night.tga → Examples/Assets/Texture/tx_night.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/tx_secunda_three_wan.tga → Examples/Assets/Texture/tx_secunda_three_wan.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/tx_sky_clear.tga → Examples/Assets/Texture/tx_sky_clear.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/tx_sky_cloudy.tga → Examples/Assets/Texture/tx_sky_cloudy.tga


+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/sun.tga → Examples/Assets/Texture/tx_sun.tga


+ 0 - 0
Examples/Demos/cgshaders/BumpMapping/c2_normal.jpg → Examples/Assets/Texture/walkwaynorm.jpg


+ 1 - 1
Examples/Demos/cgshaders/BlinnSheen/Cg_BlinnSheen.dpr → Examples/Demos/cgshaders/BlinnSheen/CgBlinnSheen.dpr

@@ -1,5 +1,5 @@
 { : Advanced Normal/Bump shading with CgShaders.<p>}
 { : Advanced Normal/Bump shading with CgShaders.<p>}
-program Cg_BlinnSheen;
+program CgBlinnSheen;
 
 
 uses
 uses
   Forms,
   Forms,

+ 5 - 19
Examples/Demos/cgshaders/BlinnSheen/Cg_BlinnSheen.dproj → Examples/Demos/cgshaders/BlinnSheen/CgBlinnSheen.dproj

@@ -1,7 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <PropertyGroup>
     <PropertyGroup>
         <ProjectGuid>{5A94F909-E3C6-4849-BB7B-6E80464E121E}</ProjectGuid>
         <ProjectGuid>{5A94F909-E3C6-4849-BB7B-6E80464E121E}</ProjectGuid>
-        <MainSource>Cg_BlinnSheen.dpr</MainSource>
+        <MainSource>CgBlinnSheen.dpr</MainSource>
         <Base>True</Base>
         <Base>True</Base>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <TargetedPlatforms>1</TargetedPlatforms>
         <TargetedPlatforms>1</TargetedPlatforms>
@@ -52,7 +52,7 @@
         <VerInfo_Locale>1049</VerInfo_Locale>
         <VerInfo_Locale>1049</VerInfo_Locale>
         <DCC_E>false</DCC_E>
         <DCC_E>false</DCC_E>
         <DCC_F>false</DCC_F>
         <DCC_F>false</DCC_F>
-        <SanitizedProjectName>Cg_BlinnSheen</SanitizedProjectName>
+        <SanitizedProjectName>CgBlinnSheen</SanitizedProjectName>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
         <DCC_ImageBase>00400000</DCC_ImageBase>
         <DCC_ImageBase>00400000</DCC_ImageBase>
         <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
         <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
@@ -102,8 +102,6 @@
         <DCCReference Include="fBlinnSheen.pas">
         <DCCReference Include="fBlinnSheen.pas">
             <Form>Form1</Form>
             <Form>Form1</Form>
         </DCCReference>
         </DCCReference>
-        <None Include="NormalMapp_fp.cg"/>
-        <None Include="NormalMapp_vp.cg"/>
         <BuildConfiguration Include="Base">
         <BuildConfiguration Include="Base">
             <Key>Base</Key>
             <Key>Base</Key>
         </BuildConfiguration>
         </BuildConfiguration>
@@ -122,7 +120,7 @@
         <BorlandProject>
         <BorlandProject>
             <Delphi.Personality>
             <Delphi.Personality>
                 <Source>
                 <Source>
-                    <Source Name="MainSource">Cg_BlinnSheen.dpr</Source>
+                    <Source Name="MainSource">CgBlinnSheen.dpr</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl not found</Excluded_Packages>
@@ -137,21 +135,9 @@
                 <Platform value="Win64">False</Platform>
                 <Platform value="Win64">False</Platform>
             </Platforms>
             </Platforms>
             <Deployment Version="3">
             <Deployment Version="3">
-                <DeployFile LocalName="Cg_BlinnSheen.exe" Configuration="Debug" Class="ProjectOutput">
+                <DeployFile LocalName="CgBlinnSheen.exe" Configuration="Debug" Class="ProjectOutput">
                     <Platform Name="Win32">
                     <Platform Name="Win32">
-                        <RemoteName>Cg_BlinnSheen.exe</RemoteName>
-                        <Overwrite>true</Overwrite>
-                    </Platform>
-                </DeployFile>
-                <DeployFile LocalName="NormalMapp_fp.cg" Configuration="Debug" Class="ProjectFile">
-                    <Platform Name="Win32">
-                        <RemoteDir>.\</RemoteDir>
-                        <Overwrite>true</Overwrite>
-                    </Platform>
-                </DeployFile>
-                <DeployFile LocalName="NormalMapp_vp.cg" Configuration="Debug" Class="ProjectFile">
-                    <Platform Name="Win32">
-                        <RemoteDir>.\</RemoteDir>
+                        <RemoteName>CgBlinnSheen.exe</RemoteName>
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>

+ 0 - 112
Examples/Demos/cgshaders/BlinnSheen/Unit1.dfm

@@ -1,112 +0,0 @@
-object Form1: TForm1
-  Left = 192
-  Top = 114
-  Caption = 'Cg Normal/Bump Blinn Shading Demo'
-  ClientHeight = 483
-  ClientWidth = 529
-  Color = clBtnFace
-  Font.Charset = DEFAULT_CHARSET
-  Font.Color = clWindowText
-  Font.Height = -14
-  Font.Name = 'MS Sans Serif'
-  Font.Style = []
-  Position = poScreenCenter
-  OnCreate = FormCreate
-  OnMouseWheel = FormMouseWheel
-  PixelsPerInch = 120
-  TextHeight = 16
-  object GLSceneViewer1: TGLSceneViewer
-    Left = 0
-    Top = 0
-    Width = 529
-    Height = 483
-    Margins.Left = 4
-    Margins.Top = 4
-    Margins.Right = 4
-    Margins.Bottom = 4
-    Camera = GLCamera1
-    Buffer.BackgroundColor = clGray
-    FieldOfView = 156.605575561523400000
-    PenAsTouch = False
-    Align = alClient
-    OnMouseDown = GLSceneViewer1MouseDown
-    OnMouseMove = GLSceneViewer1MouseMove
-    TabOrder = 0
-  end
-  object CheckBox1: TCheckBox
-    Left = 400
-    Top = 10
-    Width = 121
-    Height = 21
-    Margins.Left = 4
-    Margins.Top = 4
-    Margins.Right = 4
-    Margins.Bottom = 4
-    Caption = 'BumpShader'
-    Checked = True
-    State = cbChecked
-    TabOrder = 1
-    OnClick = CheckBox1Click
-  end
-  object GLScene1: TGLScene
-    Left = 24
-    Top = 8
-    object GLDummyCube1: TGLDummyCube
-      CubeSize = 1.000000000000000000
-    end
-    object GLFreeForm1: TGLFreeForm
-      Material.MaterialLibrary = GLMaterialLibrary1
-      Material.LibMaterialName = 'CgShaderMat'
-      BehavioursData = {
-        0458434F4C02010201060B54474C42496E657274696102001200000000020002
-        00050000000000000080FF3F0200080500000000000000000000050000000000
-        0000000000050000000000000000000008020008020008}
-    end
-    object GLCamera1: TGLCamera
-      DepthOfView = 100.000000000000000000
-      FocalLength = 50.000000000000000000
-      TargetObject = GLDummyCube1
-      Position.Coordinates = {000000000000C040000070410000803F}
-      Direction.Coordinates = {00000000000000000000803F00000000}
-      object GLLightSource1: TGLLightSource
-        ConstAttenuation = 1.000000000000000000
-        SpotCutOff = 180.000000000000000000
-      end
-    end
-  end
-  object CgBumpShader: TCgShader
-    VertexProgram.OnApply = CgBumpShaderApplyVP
-    FragmentProgram.OnApply = CgBumpShaderApplyFP
-    FragmentProgram.OnUnApply = CgBumpShaderUnApplyFP
-    OnApplyVP = CgBumpShaderApplyVP
-    OnApplyFP = CgBumpShaderApplyFP
-    OnUnApplyFP = CgBumpShaderUnApplyFP
-    OnInitialize = CgBumpShaderInitialize
-    Left = 112
-    Top = 72
-  end
-  object GLMaterialLibrary1: TGLMaterialLibrary
-    Materials = <
-      item
-        Name = 'CgShaderMat'
-        Tag = 0
-        Material.Texture.Disabled = False
-        Shader = CgBumpShader
-      end>
-    Left = 112
-    Top = 8
-  end
-  object GLCadencer1: TGLCadencer
-    Scene = GLScene1
-    OnProgress = GLCadencer1Progress
-    Left = 24
-    Top = 72
-  end
-  object AsyncTimer1: TGLAsyncTimer
-    Enabled = True
-    OnTimer = AsyncTimer1Timer
-    ThreadPriority = tpNormal
-    Left = 24
-    Top = 128
-  end
-end

+ 0 - 246
Examples/Demos/cgshaders/BlinnSheen/Unit1.pas

@@ -1,246 +0,0 @@
-unit Unit1;
-
-interface
-
-uses
-  Winapi.Windows,
-  Winapi.Messages,
-  System.SysUtils,
-  System.Classes,
-  System.Math,
-  Vcl.Graphics,
-  Vcl.Controls,
-  Vcl.Forms,
-  Vcl.Dialogs,
-  Vcl.StdCtrls,
-  Vcl.Imaging.Jpeg,
-   
-  GLS.Scene,
-  GLS.Objects,
-  GLS.Cadencer,
-  GLS.VectorTypes,
-  GLS.Texture,
-  CG.Shader,
-  GLS.SceneViewer,
-  GLS.VectorFileObjects,
-  GLS.AsyncTimer,
-  GLS.VectorGeometry,
-  GLS.Material,
-  GLS.Coordinates,
-  
-  GLS.BaseClasses,
-  GLS.Behaviours,
-  GLS.FileMD2,
-  GLS.FileTGA,
-  GLS.File3DS,
-  GLS.PersistentClasses,
-
-  Cg.GL;
-
-type
-  TForm1 = class(TForm)
-    GLScene1: TGLScene;
-    GLSceneViewer1: TGLSceneViewer;
-    CgBumpShader: TCgShader;
-    GLMaterialLibrary1: TGLMaterialLibrary;
-    GLCadencer1: TGLCadencer;
-    GLCamera1: TGLCamera;
-    GLDummyCube1: TGLDummyCube;
-    GLLightSource1: TGLLightSource;
-    AsyncTimer1: TGLAsyncTimer;
-    GLFreeForm1: TGLFreeForm;
-    CheckBox1: TCheckBox;
-    procedure GLSceneViewer1MouseDown(Sender: TObject; Button: TMouseButton;
-      Shift: TShiftState; X, Y: Integer);
-    procedure GLSceneViewer1MouseMove(Sender: TObject; Shift: TShiftState;
-      X, Y: Integer);
-    procedure CgBumpShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
-    procedure FormCreate(Sender: TObject);
-    procedure CgBumpShaderInitialize(CgShader: TCustomCgShader);
-    procedure CgBumpShaderApplyFP(CgProgram: TCgProgram; Sender: TObject);
-    procedure CgBumpShaderUnApplyFP(CgProgram: TCgProgram);
-    procedure AsyncTimer1Timer(Sender: TObject);
-    procedure FormMouseWheel(Sender: TObject; Shift: TShiftState;
-      WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
-    procedure GLCadencer1Progress(Sender: TObject;
-      const deltaTime, newTime: Double);
-    procedure CheckBox1Click(Sender: TObject);
-  private
-     
-  public
-     
-    mx, my: Integer;
-  end;
-
-var
-  Form1: TForm1;
-
-implementation
-
-{$R *.dfm}
-
-procedure TForm1.FormCreate(Sender: TObject);
-var
-  i: Integer;
-begin
-  // Load the vertex and fragment Cg programs
-  CgBumpShader.VertexProgram.LoadFromFile('NormalMapp_vp.cg');
-  CgBumpShader.FragmentProgram.LoadFromFile('NormalMapp_fp.cg');
-
-  GLFreeForm1.LoadFromFile('Head256.3ds');
-
-
-  // Load the texture
-
-  for i := 0 to GLFreeForm1.MeshObjects.Count - 1 do
-  begin
-    GLFreeForm1.MeshObjects[i].BuildTangentSpace;
-    GLFreeForm1.MeshObjects[i].TangentsTexCoordIndex := 1;
-    GLFreeForm1.MeshObjects[i].BinormalsTexCoordIndex := 2;
-  end;
-  { }
-  GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
-
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[0]
-    .Texture.Disabled := False;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[0].Texture.TextureMode :=
-    tmModulate;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[0]
-    .Texture.Image.LoadFromFile('Head256.tga');
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[1]
-    .Texture.Disabled := False;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[1].Texture.TextureMode :=
-    tmModulate;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[1]
-    .Texture.Image.LoadFromFile('HeadN256.tga');
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[2]
-    .Texture.Disabled := False;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[2].Texture.TextureMode :=
-    tmModulate;
-  GLMaterialLibrary1.Materials[0].Material.TextureEx[2]
-    .Texture.Image.LoadFromFile('HeadS256.tga');
-
-  { }
-
-end;
-
-procedure TForm1.CgBumpShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
-var
-  ap: array [0 .. 2] of single;
-begin
-  // Apply the per frame uniform parameters
-  with CgProgram do
-  begin
-    ap[0] := GLLightSource1.AbsolutePosition.X;
-    ap[1] := GLLightSource1.AbsolutePosition.Y;
-    ap[2] := GLLightSource1.AbsolutePosition.Z;
-    ParamByName('modelViewProj').SetAsStateMatrix
-      (CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
-    ParamByName('modelView').SetAsStateMatrix(CG_GL_MODELVIEW_MATRIX,
-      CG_GL_MATRIX_IDENTITY);
-    // ParamByName('vLightPosition').SetAsVector(ap);
-    ap[0] := GLCamera1.AbsolutePosition.X;
-    ap[1] := GLCamera1.AbsolutePosition.Y;
-    ap[2] := GLCamera1.AbsolutePosition.Z;
-    // ParamByName('vEyePosition').SetAsVector(ap);
-
-    ParamByName('bumpScale').SetAsScalar(1);
-    // ParamByName('ModelViewIT').SetAsStateMatrix( CG_GL_MODELVIEW_MATRIX, CG_GL_MATRIX_INVERSE_TRANSPOSE);
-  end;
-end;
-
-procedure TForm1.CgBumpShaderInitialize(CgShader: TCustomCgShader);
-var
-  am: array [0 .. 2] of single;
-begin
-  // Set up the LightDiffuseColor parameter
-  am[0] := GLLightSource1.Diffuse.Red;
-  am[1] := GLLightSource1.Diffuse.Green;
-  am[2] := GLLightSource1.Diffuse.Blue;
-  // CgBumpShader.FragmentProgram.ParamByName('LightDiffuseColor').SetAsVector(am);
-
-end;
-
-procedure TForm1.CgBumpShaderApplyFP(CgProgram: TCgProgram; Sender: TObject);
-var
-  am: array [0 .. 2] of single;
-begin
-  // Set up the LightDiffuseColor parameter
-  // am[0]:=GLLightSource1.Diffuse.Red;
-  // am[1]:=GLLightSource1.Diffuse.Green;
-  // am[2]:=GLLightSource1.Diffuse.Blue;
-  // CgBumpShader.FragmentProgram.ParamByName('LightDiffuseColor').SetAsVector(am);
-  // Enable the LightDiffuseColor for use in the fragment
-  // program
-  // CgProgram.ParamByName('LightDiffuseColor').EnableClientState;
-end;
-
-procedure TForm1.CgBumpShaderUnApplyFP(CgProgram: TCgProgram);
-begin
-  // Disable the LightDiffuseColor
-  // CgProgram.ParamByName('LightDiffuseColor').DisableClientState;
-end;
-
-procedure TForm1.GLSceneViewer1MouseDown(Sender: TObject; Button: TMouseButton;
-  Shift: TShiftState; X, Y: Integer);
-begin
-  mx := X;
-  my := Y;
-end;
-
-procedure TForm1.GLSceneViewer1MouseMove(Sender: TObject; Shift: TShiftState;
-  X, Y: Integer);
-begin
-  if ssLeft in Shift then
-    GLCamera1.MoveAroundTarget(my - Y, mx - X);
-  mx := X;
-  my := Y;
-end;
-
-procedure TForm1.AsyncTimer1Timer(Sender: TObject);
-begin
-  Form1.Caption := Format('Cg Normal/Bump Blinn Shading Demo - %.2f FPS',
-    [GLSceneViewer1.FramesPerSecond]);
-  GLSceneViewer1.ResetPerformanceMonitor;
-end;
-
-procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;
-  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
-begin
-  GLCamera1.AdjustDistanceToTarget(Power(1.1, WheelDelta / 120));
-end;
-
-procedure TForm1.GLCadencer1Progress(Sender: TObject;
-  const deltaTime, newTime: Double);
-var
-  am: array [0 .. 2] of single;
-begin
-  // Set up the texture sampler parameter
-  { am[0]:=GLLightSource1.Diffuse.Red;
-    am[1]:=GLLightSource1.Diffuse.Green;
-    am[2]:=GLLightSource1.Diffuse.Blue;
-    CgBumpShader.FragmentProgram.ParamByName('LightDiffuseColor').SetAsVector(am);
-    CgBumpShader.VertexProgram.ParamByName('modelViewProjMatrix').SetAsStateMatrix( CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
-    CgBumpShader.VertexProgram.ParamByName('vLightPosition').SetAsVector(GLLightSource1.Position.AsAffineVector);
-    { }
-end;
-
-procedure TForm1.CheckBox1Click(Sender: TObject);
-begin
-  If CheckBox1.Checked then
-  begin
-    CgBumpShader.Enabled := True;
-    GLFreeForm1.Material.LibMaterialName :=
-      GLMaterialLibrary1.Materials[0].Name;
-  end
-  Else
-  begin
-    CgBumpShader.Enabled := False;
-    GLFreeForm1.Material.LibMaterialName := '';
-  end;
-
-end;
-
-end.

+ 10 - 8
Examples/Demos/cgshaders/BlinnSheen/fBlinnSheen.pas

@@ -27,13 +27,14 @@ uses
   GLS.VectorGeometry,
   GLS.VectorGeometry,
   GLS.Material,
   GLS.Material,
   GLS.Coordinates,
   GLS.Coordinates,
-  
+
   GLS.BaseClasses,
   GLS.BaseClasses,
   GLS.Behaviours,
   GLS.Behaviours,
   GLS.FileMD2,
   GLS.FileMD2,
   GLS.FileTGA,
   GLS.FileTGA,
   GLS.File3DS,
   GLS.File3DS,
   GLS.PersistentClasses,
   GLS.PersistentClasses,
+  GLS.Utils,
 
 
   Cg.GL;
   Cg.GL;
 
 
@@ -83,22 +84,26 @@ procedure TForm1.FormCreate(Sender: TObject);
 var
 var
   i: Integer;
   i: Integer;
 begin
 begin
+  var Path: TFileName := GetCurrentAssetPath();
+  SetCurrentDir(Path + '\shader');
+
   // Load the vertex and fragment Cg programs
   // Load the vertex and fragment Cg programs
   CgBumpShader.VertexProgram.LoadFromFile('NormalMapp_vp.cg');
   CgBumpShader.VertexProgram.LoadFromFile('NormalMapp_vp.cg');
   CgBumpShader.FragmentProgram.LoadFromFile('NormalMapp_fp.cg');
   CgBumpShader.FragmentProgram.LoadFromFile('NormalMapp_fp.cg');
 
 
+  SetCurrentDir(Path + '\model');
   GLFreeForm1.LoadFromFile('Head256.3ds');
   GLFreeForm1.LoadFromFile('Head256.3ds');
 
 
 
 
   // Load the texture
   // Load the texture
-
+  SetCurrentDir(Path + '\texture');
   for i := 0 to GLFreeForm1.MeshObjects.Count - 1 do
   for i := 0 to GLFreeForm1.MeshObjects.Count - 1 do
   begin
   begin
     GLFreeForm1.MeshObjects[i].BuildTangentSpace;
     GLFreeForm1.MeshObjects[i].BuildTangentSpace;
     GLFreeForm1.MeshObjects[i].TangentsTexCoordIndex := 1;
     GLFreeForm1.MeshObjects[i].TangentsTexCoordIndex := 1;
     GLFreeForm1.MeshObjects[i].BinormalsTexCoordIndex := 2;
     GLFreeForm1.MeshObjects[i].BinormalsTexCoordIndex := 2;
   end;
   end;
-  { }
+
   GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
   GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
   GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
   GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
   GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
   GLMaterialLibrary1.Materials[0].Material.TextureEx.Add;
@@ -121,9 +126,6 @@ begin
     tmModulate;
     tmModulate;
   GLMaterialLibrary1.Materials[0].Material.TextureEx[2]
   GLMaterialLibrary1.Materials[0].Material.TextureEx[2]
     .Texture.Image.LoadFromFile('HeadS256.tga');
     .Texture.Image.LoadFromFile('HeadS256.tga');
-
-  { }
-
 end;
 end;
 
 
 procedure TForm1.CgBumpShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
 procedure TForm1.CgBumpShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
@@ -218,13 +220,13 @@ var
   am: array [0 .. 2] of single;
   am: array [0 .. 2] of single;
 begin
 begin
   // Set up the texture sampler parameter
   // Set up the texture sampler parameter
-  { am[0]:=GLLightSource1.Diffuse.Red;
+  (* am[0]:=GLLightSource1.Diffuse.Red;
     am[1]:=GLLightSource1.Diffuse.Green;
     am[1]:=GLLightSource1.Diffuse.Green;
     am[2]:=GLLightSource1.Diffuse.Blue;
     am[2]:=GLLightSource1.Diffuse.Blue;
     CgBumpShader.FragmentProgram.ParamByName('LightDiffuseColor').SetAsVector(am);
     CgBumpShader.FragmentProgram.ParamByName('LightDiffuseColor').SetAsVector(am);
     CgBumpShader.VertexProgram.ParamByName('modelViewProjMatrix').SetAsStateMatrix( CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
     CgBumpShader.VertexProgram.ParamByName('modelViewProjMatrix').SetAsStateMatrix( CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
     CgBumpShader.VertexProgram.ParamByName('vLightPosition').SetAsVector(GLLightSource1.Position.AsAffineVector);
     CgBumpShader.VertexProgram.ParamByName('vLightPosition').SetAsVector(GLLightSource1.Position.AsAffineVector);
-    { }
+   *)
 end;
 end;
 
 
 procedure TForm1.CheckBox1Click(Sender: TObject);
 procedure TForm1.CheckBox1Click(Sender: TObject);

+ 7 - 2
Examples/Demos/cgshaders/BumpMapping/Cg_BumpMapping.dpr → Examples/Demos/cgshaders/BumpMapping/CgBumpMapping.dpr

@@ -1,8 +1,13 @@
-program Cg_BumpMapping;
+(*
+Bump Mapping
+Author: Antic (edited by Da Stranger)
+Date:  09 June 2006
+*)
+program CgBumpMapping;
 
 
 uses
 uses
   Forms,
   Forms,
-  fBumpMap in 'fBumpMap.pas' {BumpDemo_frm};
+  fBumpMap in 'fBumpMap.pas';
 
 
 {$R *.res}
 {$R *.res}
 
 

+ 5 - 3
Examples/Demos/cgshaders/BumpMapping/Cg_BumpMapping.dproj → Examples/Demos/cgshaders/BumpMapping/CgBumpMapping.dproj

@@ -1,7 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <PropertyGroup>
     <PropertyGroup>
         <ProjectGuid>{E04BE963-263A-47FF-8BD3-A17C04451B6A}</ProjectGuid>
         <ProjectGuid>{E04BE963-263A-47FF-8BD3-A17C04451B6A}</ProjectGuid>
-        <MainSource>Cg_BumpMapping.dpr</MainSource>
+        <MainSource>CgBumpMapping.dpr</MainSource>
         <Base>True</Base>
         <Base>True</Base>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <TargetedPlatforms>1</TargetedPlatforms>
         <TargetedPlatforms>1</TargetedPlatforms>
@@ -41,7 +41,7 @@
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base)'!=''">
     <PropertyGroup Condition="'$(Base)'!=''">
         <DCC_K>false</DCC_K>
         <DCC_K>false</DCC_K>
-        <SanitizedProjectName>Cg_BumpMapping</SanitizedProjectName>
+        <SanitizedProjectName>CgBumpMapping</SanitizedProjectName>
         <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
         <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
         <DCC_N>false</DCC_N>
         <DCC_N>false</DCC_N>
         <DCC_ImageBase>00400000</DCC_ImageBase>
         <DCC_ImageBase>00400000</DCC_ImageBase>
@@ -109,7 +109,7 @@
         <BorlandProject>
         <BorlandProject>
             <Delphi.Personality>
             <Delphi.Personality>
                 <Source>
                 <Source>
-                    <Source Name="MainSource">Cg_BumpMapping.dpr</Source>
+                    <Source Name="MainSource">CgBumpMapping.dpr</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_SDL_DT.bpl not found</Excluded_Packages>
@@ -123,9 +123,11 @@
                 <Platform value="Win32">True</Platform>
                 <Platform value="Win32">True</Platform>
                 <Platform value="Win64">False</Platform>
                 <Platform value="Win64">False</Platform>
             </Platforms>
             </Platforms>
+            <Deployment> </Deployment>
         </BorlandProject>
         </BorlandProject>
         <ProjectFileVersion>12</ProjectFileVersion>
         <ProjectFileVersion>12</ProjectFileVersion>
     </ProjectExtensions>
     </ProjectExtensions>
     <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
     <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
     <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
     <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
+    <Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
 </Project>
 </Project>

二進制
Examples/Demos/cgshaders/BumpMapping/c2_tex.jpg


二進制
Examples/Demos/cgshaders/BumpMapping/c_normal.jpg


二進制
Examples/Demos/cgshaders/BumpMapping/c_tex.jpg


+ 0 - 2
Examples/Demos/cgshaders/BumpMapping/description.txt

@@ -1,2 +0,0 @@
-Author: Antic (edited by Da Stranger)
-Date:  09 June 2006

+ 20 - 1
Examples/Demos/cgshaders/BumpMapping/fBumpMap.dfm

@@ -25,7 +25,6 @@ object BumpDemo_frm: TBumpDemo_frm
     FieldOfView = 145.189712524414100000
     FieldOfView = 145.189712524414100000
     PenAsTouch = False
     PenAsTouch = False
     Align = alClient
     Align = alClient
-    OnMouseMove = SceneViewerMouseMove
     TabOrder = 0
     TabOrder = 0
   end
   end
   object Shaders_ctrl: TPageControl
   object Shaders_ctrl: TPageControl
@@ -163,4 +162,24 @@ object BumpDemo_frm: TBumpDemo_frm
     Left = 440
     Left = 440
     Top = 72
     Top = 72
   end
   end
+  object GLSimpleNavigation1: TGLSimpleNavigation
+    Form = Owner
+    GLSceneViewer = SceneViewer
+    FormCaption = 'Cg BumpMapping - %FPS'
+    KeyCombinations = <
+      item
+        ShiftState = [ssLeft, ssRight]
+        Action = snaZoom
+      end
+      item
+        ShiftState = [ssLeft]
+        Action = snaMoveAroundTarget
+      end
+      item
+        ShiftState = [ssRight]
+        Action = snaMoveAroundTarget
+      end>
+    Left = 688
+    Top = 120
+  end
 end
 end

+ 12 - 6
Examples/Demos/cgshaders/BumpMapping/fBumpMap.pas

@@ -29,7 +29,8 @@ uses
   GLS.Material,
   GLS.Material,
   GLS.Coordinates,
   GLS.Coordinates,
   GLS.BaseClasses,
   GLS.BaseClasses,
-  GLS.TextureFormat;
+  GLS.TextureFormat,
+  GLS.Utils, GLS.SimpleNavigation;
 
 
 type
 type
   TBumpDemo_frm = class(TForm)
   TBumpDemo_frm = class(TForm)
@@ -54,6 +55,7 @@ type
     Cube_2: TGLCube;
     Cube_2: TGLCube;
     Timer: TGLAsyncTimer;
     Timer: TGLAsyncTimer;
     GLSphere1: TGLSphere;
     GLSphere1: TGLSphere;
+    GLSimpleNavigation1: TGLSimpleNavigation;
     procedure VP_cbClick(Sender: TObject);
     procedure VP_cbClick(Sender: TObject);
     procedure FP_cbClick(Sender: TObject);
     procedure FP_cbClick(Sender: TObject);
     procedure FP_btnClick(Sender: TObject);
     procedure FP_btnClick(Sender: TObject);
@@ -108,15 +110,19 @@ end;
 
 
 procedure TBumpDemo_frm.FormCreate(Sender: TObject);
 procedure TBumpDemo_frm.FormCreate(Sender: TObject);
 begin
 begin
-  SetCurrentDir(ExtractFilePath(ParamStr(0)));
+  var Path: TFileName := GetCurrentAssetPath();
+  SetCurrentDir(Path + '\shader');
   FP_Memo.Lines.LoadFromFile('BumpMapping_fp.cg');
   FP_Memo.Lines.LoadFromFile('BumpMapping_fp.cg');
   VP_Memo.Lines.LoadFromFile('BumpMapping_vp.cg');
   VP_Memo.Lines.LoadFromFile('BumpMapping_vp.cg');
   with MaterialLibrary do
   with MaterialLibrary do
     begin
     begin
-      AddTextureMaterial('c_tex','c_tex.jpg');
-      AddTextureMaterial('c_normal','c_normal.jpg');
-      AddTextureMaterial('c2_tex','c2_tex.jpg');
-      AddTextureMaterial('c2_normal','c2_normal.jpg');
+      SetCurrentDir(Path + '\map');
+      AddTextureMaterial('c_tex','earth.jpg');
+
+      SetCurrentDir(Path + '\texture');
+      AddTextureMaterial('c_normal','earthnormals.jpg');
+      AddTextureMaterial('c2_tex','walkway.jpg');
+      AddTextureMaterial('c2_normal','walkwaynorm.jpg');
       Materials[0].Material.Texture.FilteringQuality := tfAnisotropic;
       Materials[0].Material.Texture.FilteringQuality := tfAnisotropic;
       Materials[1].Material.Texture.FilteringQuality := tfAnisotropic;
       Materials[1].Material.Texture.FilteringQuality := tfAnisotropic;
       Materials[2].Material.Texture.FilteringQuality := tfAnisotropic;
       Materials[2].Material.Texture.FilteringQuality := tfAnisotropic;

+ 1 - 1
Examples/Demos/cgshaders/Distortion/DistortionTexture.dpr → Examples/Demos/cgshaders/Distortion/CgDistTexture.dpr

@@ -13,7 +13,7 @@
   itself is behind that plane.
   itself is behind that plane.
 
 
 }
 }
-program DistortionTexture;
+program CgDistTexture;
 
 
 uses
 uses
   Forms,
   Forms,

+ 35 - 37
Examples/Demos/cgshaders/Reflect/Reflect.dproj → Examples/Demos/cgshaders/Distortion/CgDistTexture.dproj

@@ -1,7 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <PropertyGroup>
     <PropertyGroup>
-        <ProjectGuid>{37D4D061-195E-4B80-8B7D-2B2C4076404A}</ProjectGuid>
-        <MainSource>Reflect.dpr</MainSource>
+        <ProjectGuid>{947705F9-5FC7-425C-8CD2-9043FB185DAA}</ProjectGuid>
+        <MainSource>CgDistTexture.dpr</MainSource>
         <Base>True</Base>
         <Base>True</Base>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <TargetedPlatforms>1</TargetedPlatforms>
         <TargetedPlatforms>1</TargetedPlatforms>
@@ -40,25 +40,25 @@
         <Base>true</Base>
         <Base>true</Base>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base)'!=''">
     <PropertyGroup Condition="'$(Base)'!=''">
-        <DCC_N>false</DCC_N>
-        <DCC_ImageBase>00400000</DCC_ImageBase>
-        <DCC_S>false</DCC_S>
-        <DCC_F>false</DCC_F>
-        <SanitizedProjectName>Reflect</SanitizedProjectName>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
+        <DCC_K>false</DCC_K>
         <VerInfo_Locale>1049</VerInfo_Locale>
         <VerInfo_Locale>1049</VerInfo_Locale>
+        <SanitizedProjectName>CgDistTexture</SanitizedProjectName>
+        <DCC_N>false</DCC_N>
         <DCC_E>false</DCC_E>
         <DCC_E>false</DCC_E>
-        <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
-        <DCC_K>false</DCC_K>
+        <DCC_S>false</DCC_S>
+        <DCC_F>false</DCC_F>
+        <DCC_ImageBase>00400000</DCC_ImageBase>
+        <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base_Win32)'!=''">
     <PropertyGroup Condition="'$(Base_Win32)'!=''">
         <UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
         <UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
         <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
         <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
-        <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
-        <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
         <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
         <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
         <VerInfo_Locale>1033</VerInfo_Locale>
         <VerInfo_Locale>1033</VerInfo_Locale>
+        <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
+        <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(ModuleName);FileDescription=$(ModuleName);ProductName=$(ModuleName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(ModuleName);FileDescription=$(ModuleName);ProductName=$(ModuleName)</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base_Win64)'!=''">
     <PropertyGroup Condition="'$(Base_Win64)'!=''">
@@ -66,32 +66,32 @@
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1)'!=''">
     <PropertyGroup Condition="'$(Cfg_1)'!=''">
-        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
-        <DCC_DebugInformation>0</DCC_DebugInformation>
         <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
         <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
         <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
         <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
+        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
+        <DCC_DebugInformation>0</DCC_DebugInformation>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2)'!=''">
     <PropertyGroup Condition="'$(Cfg_2)'!=''">
-        <DCC_Optimize>false</DCC_Optimize>
-        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
         <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
         <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
+        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
+        <DCC_Optimize>false</DCC_Optimize>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
         <BT_BuildType>Debug</BT_BuildType>
         <BT_BuildType>Debug</BT_BuildType>
+        <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
+        <VerInfo_Locale>1033</VerInfo_Locale>
+        <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
+        <Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
+        <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
+        <AppDPIAwarenessMode>none</AppDPIAwarenessMode>
     </PropertyGroup>
     </PropertyGroup>
     <ItemGroup>
     <ItemGroup>
         <DelphiCompile Include="$(MainSource)">
         <DelphiCompile Include="$(MainSource)">
             <MainSource>MainSource</MainSource>
             <MainSource>MainSource</MainSource>
         </DelphiCompile>
         </DelphiCompile>
-        <DCCReference Include="fReflect.pas">
+        <DCCReference Include="fDistTexture.pas">
             <Form>Form1</Form>
             <Form>Form1</Form>
         </DCCReference>
         </DCCReference>
-        <None Include="reflect_vp.cg">
-            <ContainerId>File</ContainerId>
-        </None>
-        <None Include="reflect_fp.cg">
-            <ContainerId>File</ContainerId>
-        </None>
         <BuildConfiguration Include="Base">
         <BuildConfiguration Include="Base">
             <Key>Base</Key>
             <Key>Base</Key>
         </BuildConfiguration>
         </BuildConfiguration>
@@ -110,29 +110,27 @@
         <BorlandProject>
         <BorlandProject>
             <Delphi.Personality>
             <Delphi.Personality>
                 <Source>
                 <Source>
-                    <Source Name="MainSource">Reflect.dpr</Source>
+                    <Source Name="MainSource">CgDistTexture.dpr</Source>
                 </Source>
                 </Source>
+                <Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\bcbofficexp280.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k280.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp280.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+                </Excluded_Packages>
             </Delphi.Personality>
             </Delphi.Personality>
             <Platforms>
             <Platforms>
                 <Platform value="Win32">True</Platform>
                 <Platform value="Win32">True</Platform>
                 <Platform value="Win64">False</Platform>
                 <Platform value="Win64">False</Platform>
             </Platforms>
             </Platforms>
             <Deployment Version="3">
             <Deployment Version="3">
-                <DeployFile LocalName="Reflect.exe" Configuration="Debug" Class="ProjectOutput">
-                    <Platform Name="Win32">
-                        <RemoteName>Reflect.exe</RemoteName>
-                        <Overwrite>true</Overwrite>
-                    </Platform>
-                </DeployFile>
-                <DeployFile LocalName="reflect_fp.cg" Configuration="Debug" Class="ProjectFile">
-                    <Platform Name="Win32">
-                        <RemoteDir>.\</RemoteDir>
-                        <Overwrite>true</Overwrite>
-                    </Platform>
-                </DeployFile>
-                <DeployFile LocalName="reflect_vp.cg" Configuration="Debug" Class="ProjectFile">
+                <DeployFile LocalName="CgDistTexture.exe" Configuration="Debug" Class="ProjectOutput">
                     <Platform Name="Win32">
                     <Platform Name="Win32">
-                        <RemoteDir>.\</RemoteDir>
+                        <RemoteName>CgDistTexture.exe</RemoteName>
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>

二進制
Examples/Demos/cgshaders/Distortion/background.bmp


+ 1 - 1
Examples/Demos/cgshaders/Distortion/fDistTexture.dfm

@@ -1,7 +1,7 @@
 object Form1: TForm1
 object Form1: TForm1
   Left = 375
   Left = 375
   Top = 237
   Top = 237
-  Caption = 'Cg_Grayscale Texture Distortion'
+  Caption = 'Cg Texture Distortion'
   ClientHeight = 613
   ClientHeight = 613
   ClientWidth = 951
   ClientWidth = 951
   Color = clBtnFace
   Color = clBtnFace

+ 24 - 26
Examples/Demos/cgshaders/Distortion/fDistTexture.pas

@@ -24,12 +24,13 @@ uses
   CG.Shader,
   CG.Shader,
   GLS.Material,
   GLS.Material,
   GLS.Coordinates,
   GLS.Coordinates,
-  
+
   GLS.BaseClasses,
   GLS.BaseClasses,
   GLS.RenderContextInfo,
   GLS.RenderContextInfo,
+  GLS.Utils,
 
 
-  Cg.Import,
-  Cg.GL;
+  CG.Import,
+  CG.GL;
 
 
 type
 type
   TForm1 = class(TForm)
   TForm1 = class(TForm)
@@ -45,14 +46,11 @@ type
     GLPlane1: TGLPlane;
     GLPlane1: TGLPlane;
     backGround: TGLPlane;
     backGround: TGLPlane;
     procedure FormCreate(Sender: TObject);
     procedure FormCreate(Sender: TObject);
-    procedure GLDirectOpenGL1Render(Sender: TObject;
-      var rci: TGLRenderContextInfo);
-    procedure GLCadencer1Progress(Sender: TObject;
-      const deltaTime, newTime: Double);
+    procedure GLDirectOpenGL1Render(Sender: TObject; var rci: TGLRenderContextInfo);
+    procedure GLCadencer1Progress(Sender: TObject; const deltaTime, newTime: Double);
     procedure filterShaderApplyFP(CgProgram: TCgProgram; Sender: TObject);
     procedure filterShaderApplyFP(CgProgram: TCgProgram; Sender: TObject);
     procedure filterShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
     procedure filterShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
-    procedure viewerMouseMove(Sender: TObject; Shift: TShiftState;
-      X, Y: Integer);
+    procedure viewerMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
   private
   private
   end;
   end;
 
 
@@ -60,22 +58,26 @@ var
   Form1: TForm1;
   Form1: TForm1;
   refract: TGLTextureHandle;
   refract: TGLTextureHandle;
 
 
-//------------------------------------------
+  // ------------------------------------------
 implementation
 implementation
-//------------------------------------------
+
+// ------------------------------------------
 
 
 {$R *.dfm}
 {$R *.dfm}
 
 
 procedure TForm1.FormCreate(Sender: TObject);
 procedure TForm1.FormCreate(Sender: TObject);
 begin
 begin
+  var Path: TFileName := GetCurrentAssetPath();
+  SetCurrentDir(Path + '\shader');
+
   // Load the shader
   // Load the shader
   filterShader.VertexProgram.LoadFromFile('filterV.c');
   filterShader.VertexProgram.LoadFromFile('filterV.c');
   filterShader.FragmentProgram.LoadFromFile('filterF.c');
   filterShader.FragmentProgram.LoadFromFile('filterF.c');
 
 
   // Load the texture for the background plane
   // Load the texture for the background plane
-  matLib.Materials[1].Material.Texture.Image.LoadFromFile('backGround.bmp');
-
-end; // formCreate
+  SetCurrentDir(Path + '\texture');
+  matLib.Materials[1].Material.Texture.Image.LoadFromFile('parquet.bmp');
+end;
 
 
 (*
 (*
   Initialize refract texture used for the screen filter. Remember
   Initialize refract texture used for the screen filter. Remember
@@ -99,15 +101,14 @@ begin
     must be modified this case so you need to recreate the texture, otherwise
     must be modified this case so you need to recreate the texture, otherwise
     it crashes. I was too lazy for that so that's why you can't resize
     it crashes. I was too lazy for that so that's why you can't resize
     the form *)
     the form *)
-  glCopyTexImage2d(GL_TEXTURE_RECTANGLE_NV, 0, GL_RGBA8, 0, 0,
-    Form1.viewer.ClientWidth, Form1.viewer.ClientHeight, 0);
+  glCopyTexImage2d(GL_TEXTURE_RECTANGLE_NV, 0, GL_RGBA8, 0, 0, Form1.viewer.ClientWidth,
+    Form1.viewer.ClientHeight, 0);
 end; // initialize
 end; // initialize
 
 
 var
 var
   initialized: boolean = false;
   initialized: boolean = false;
 
 
-procedure TForm1.GLDirectOpenGL1Render(Sender: TObject;
-  var rci: TGLRenderContextInfo);
+procedure TForm1.GLDirectOpenGL1Render(Sender: TObject; var rci: TGLRenderContextInfo);
 begin
 begin
   if not initialized then
   if not initialized then
   begin
   begin
@@ -121,13 +122,12 @@ begin
 
 
   // Take a snapshot for the refract texture
   // Take a snapshot for the refract texture
   glBindTexture(GL_TEXTURE_RECTANGLE_NV, refract.Handle);
   glBindTexture(GL_TEXTURE_RECTANGLE_NV, refract.Handle);
-  glCopyTexSubImage2D(GL_TEXTURE_RECTANGLE_NV, 0, 0, 0, 0, 0,
-    viewer.ClientWidth, viewer.ClientHeight);
+  glCopyTexSubImage2D(GL_TEXTURE_RECTANGLE_NV, 0, 0, 0, 0, 0, viewer.ClientWidth,
+    viewer.ClientHeight);
   glDisable(GL_TEXTURE_RECTANGLE_NV);
   glDisable(GL_TEXTURE_RECTANGLE_NV);
 end; // Render
 end; // Render
 
 
-procedure TForm1.GLCadencer1Progress(Sender: TObject;
-  const deltaTime, newTime: Double);
+procedure TForm1.GLCadencer1Progress(Sender: TObject; const deltaTime, newTime: Double);
 begin
 begin
   GLCube1.PitchAngle := GLCube1.PitchAngle + 0.3;
   GLCube1.PitchAngle := GLCube1.PitchAngle + 0.3;
   GLCube1.TurnAngle := GLCube1.TurnAngle + 0.5;
   GLCube1.TurnAngle := GLCube1.TurnAngle + 0.5;
@@ -158,13 +158,11 @@ procedure TForm1.filterShaderApplyVP(CgProgram: TCgProgram; Sender: TObject);
 begin
 begin
   with CgProgram do
   with CgProgram do
   begin
   begin
-    paramByName('MVP').SetAsStateMatrix(CG_GL_MODELVIEW_PROJECTION_MATRIX,
-      CG_GL_MATRIX_IDENTITY);
+    paramByName('MVP').SetAsStateMatrix(CG_GL_MODELVIEW_PROJECTION_MATRIX, CG_GL_MATRIX_IDENTITY);
   end;
   end;
 end; // apply Vertex program
 end; // apply Vertex program
 
 
-procedure TForm1.viewerMouseMove(Sender: TObject; Shift: TShiftState;
-  X, Y: Integer);
+procedure TForm1.viewerMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
 begin
 begin
   cursorX := X / viewer.ClientWidth;
   cursorX := X / viewer.ClientWidth;
   cursorY := 1 - (Y / viewer.ClientHeight);
   cursorY := 1 - (Y / viewer.ClientHeight);

+ 1 - 1
Examples/Demos/cgshaders/Reflect/Reflect.dpr → Examples/Demos/cgshaders/Reflect/CgReflect.dpr

@@ -1,5 +1,5 @@
 { Simple Cg Shader Cubemap Demo (incomplete)}
 { Simple Cg Shader Cubemap Demo (incomplete)}
-program Reflect;
+program CgReflect;
 
 
 
 
 uses
 uses

+ 19 - 19
Examples/Demos/cgshaders/Distortion/DistortionTexture.dproj → Examples/Demos/cgshaders/Reflect/CgReflect.dproj

@@ -1,7 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <PropertyGroup>
     <PropertyGroup>
-        <ProjectGuid>{947705F9-5FC7-425C-8CD2-9043FB185DAA}</ProjectGuid>
-        <MainSource>DistortionTexture.dpr</MainSource>
+        <ProjectGuid>{37D4D061-195E-4B80-8B7D-2B2C4076404A}</ProjectGuid>
+        <MainSource>CgReflect.dpr</MainSource>
         <Base>True</Base>
         <Base>True</Base>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <TargetedPlatforms>1</TargetedPlatforms>
         <TargetedPlatforms>1</TargetedPlatforms>
@@ -40,25 +40,25 @@
         <Base>true</Base>
         <Base>true</Base>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base)'!=''">
     <PropertyGroup Condition="'$(Base)'!=''">
-        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
-        <DCC_K>false</DCC_K>
-        <VerInfo_Locale>1049</VerInfo_Locale>
-        <SanitizedProjectName>DistortionTexture</SanitizedProjectName>
         <DCC_N>false</DCC_N>
         <DCC_N>false</DCC_N>
-        <DCC_E>false</DCC_E>
+        <DCC_ImageBase>00400000</DCC_ImageBase>
         <DCC_S>false</DCC_S>
         <DCC_S>false</DCC_S>
         <DCC_F>false</DCC_F>
         <DCC_F>false</DCC_F>
-        <DCC_ImageBase>00400000</DCC_ImageBase>
-        <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
+        <SanitizedProjectName>CgReflect</SanitizedProjectName>
+        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=</VerInfo_Keys>
+        <VerInfo_Locale>1049</VerInfo_Locale>
+        <DCC_E>false</DCC_E>
+        <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
+        <DCC_K>false</DCC_K>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base_Win32)'!=''">
     <PropertyGroup Condition="'$(Base_Win32)'!=''">
         <UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
         <UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
         <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
         <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
+        <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
+        <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
         <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
         <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
         <VerInfo_Locale>1033</VerInfo_Locale>
         <VerInfo_Locale>1033</VerInfo_Locale>
-        <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
-        <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(ModuleName);FileDescription=$(ModuleName);ProductName=$(ModuleName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(ModuleName);FileDescription=$(ModuleName);ProductName=$(ModuleName)</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base_Win64)'!=''">
     <PropertyGroup Condition="'$(Base_Win64)'!=''">
@@ -66,15 +66,15 @@
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
         <UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1)'!=''">
     <PropertyGroup Condition="'$(Cfg_1)'!=''">
-        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
-        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
         <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
         <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
         <DCC_DebugInformation>0</DCC_DebugInformation>
         <DCC_DebugInformation>0</DCC_DebugInformation>
+        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
+        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2)'!=''">
     <PropertyGroup Condition="'$(Cfg_2)'!=''">
-        <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
-        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
         <DCC_Optimize>false</DCC_Optimize>
         <DCC_Optimize>false</DCC_Optimize>
+        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
+        <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
         <BT_BuildType>Debug</BT_BuildType>
         <BT_BuildType>Debug</BT_BuildType>
@@ -83,7 +83,7 @@
         <DelphiCompile Include="$(MainSource)">
         <DelphiCompile Include="$(MainSource)">
             <MainSource>MainSource</MainSource>
             <MainSource>MainSource</MainSource>
         </DelphiCompile>
         </DelphiCompile>
-        <DCCReference Include="fDistTexture.pas">
+        <DCCReference Include="fReflect.pas">
             <Form>Form1</Form>
             <Form>Form1</Form>
         </DCCReference>
         </DCCReference>
         <BuildConfiguration Include="Base">
         <BuildConfiguration Include="Base">
@@ -104,7 +104,7 @@
         <BorlandProject>
         <BorlandProject>
             <Delphi.Personality>
             <Delphi.Personality>
                 <Source>
                 <Source>
-                    <Source Name="MainSource">DistortionTexture.dpr</Source>
+                    <Source Name="MainSource">CgReflect.dpr</Source>
                 </Source>
                 </Source>
             </Delphi.Personality>
             </Delphi.Personality>
             <Platforms>
             <Platforms>
@@ -112,9 +112,9 @@
                 <Platform value="Win64">False</Platform>
                 <Platform value="Win64">False</Platform>
             </Platforms>
             </Platforms>
             <Deployment Version="3">
             <Deployment Version="3">
-                <DeployFile LocalName="DistortionTexture.exe" Configuration="Debug" Class="ProjectOutput">
+                <DeployFile LocalName="CgReflect.exe" Configuration="Debug" Class="ProjectOutput">
                     <Platform Name="Win32">
                     <Platform Name="Win32">
-                        <RemoteName>DistortionTexture.exe</RemoteName>
+                        <RemoteName>CgReflect.exe</RemoteName>
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>

+ 38 - 39
Examples/Demos/cgshaders/Reflect/fReflect.pas

@@ -27,7 +27,7 @@ uses
   Cg.Import,
   Cg.Import,
   Cg.GL, 
   Cg.GL, 
   GLS.VectorGeometry, 
   GLS.VectorGeometry, 
-  GLS.Cadencer, 
+  GLS.Cadencer,
   GLS.VectorFileObjects, 
   GLS.VectorFileObjects, 
   GLS.File3DS,
   GLS.File3DS,
   GLS.Graph, 
   GLS.Graph, 
@@ -35,6 +35,7 @@ uses
   GLS.GeomObjects, 
   GLS.GeomObjects, 
   GLS.Material, 
   GLS.Material, 
   GLS.Coordinates,
   GLS.Coordinates,
+  GLS.Utils,
    
    
   GLS.BaseClasses;
   GLS.BaseClasses;
 
 
@@ -125,10 +126,10 @@ type
     procedure CgShader1ApplyFP(CgProgram: TCgProgram; Sender: TObject);
     procedure CgShader1ApplyFP(CgProgram: TCgProgram; Sender: TObject);
     procedure CgShader1ApplyVP(CgProgram: TCgProgram; Sender: TObject);
     procedure CgShader1ApplyVP(CgProgram: TCgProgram; Sender: TObject);
   private
   private
-     
+
     procedure CreateCubeMap;
     procedure CreateCubeMap;
   public
   public
-     
+
     mx, my: Integer;
     mx, my: Integer;
   end;
   end;
 
 
@@ -140,23 +141,47 @@ implementation
 
 
 {$R *.dfm}
 {$R *.dfm}
 
 
+procedure TForm1.FormCreate(Sender: TObject);
+begin
+  var Path: TFileName := GetCurrentAssetPath();
+  SetCurrentDir(Path + '\model');
+
+  // load a flat plane model for the water FreeForm
+  plane.LoadFromFile('plane.3ds');
+
+ // Load Cg shaders for proggy
+  SetCurrentDir(Path + '\shader');
+  with CgShader1 do
+  begin
+    VertexProgram.LoadFromFile('reflect_vp.cg');
+    MemoVertCode.Lines.Assign(VertexProgram.Code);
+    FragmentProgram.LoadFromFile('reflect_fp.cg');
+    MemoFragCode.Lines.Assign(FragmentProgram.Code);
+
+    VertexProgram.Enabled := false;
+    FragmentProgram.Enabled := false;
+  end;
+
+  ButtonApplyFP.Enabled := false;
+  ButtonApplyVP.Enabled := false;
+
+  ref := 0;
+
+  CreateCubeMap;
+end;
+
+
 procedure TForm1.CgShader1ApplyFP(CgProgram: TCgProgram; Sender: TObject);
 procedure TForm1.CgShader1ApplyFP(CgProgram: TCgProgram; Sender: TObject);
 begin
 begin
   with CgProgram, GLMaterialLibrary1 do
   with CgProgram, GLMaterialLibrary1 do
   begin
   begin
     ParamByName('reflectivity').SetAsScalar(ref); // float
     ParamByName('reflectivity').SetAsScalar(ref); // float
 
 
-    with ParamByName('decalMap') do
-    begin
-      SetAsTexture2D(materials[1].Material.Texture.Handle); // sampler2D
-      EnableTexture;
-    end;
+    ParamByName('decalMap').SetAsTexture2D(materials[1].Material.Texture.Handle); // sampler2D
+    ParamByName('decalMap').EnableTexture;
 
 
-    with ParamByName('environmentMap') do
-    begin
-      SetAsTextureCUBE(materials[0].Material.Texture.Handle); // samplerCUBE
-      EnableTexture;
-    end;
+    ParamByName('environmentMap').SetAsTextureCUBE(materials[0].Material.Texture.Handle); // samplerCUBE
+    ParamByName('environmentMap').EnableTexture;
   end;
   end;
 end;
 end;
 
 
@@ -183,32 +208,6 @@ begin
   end;
   end;
 end;
 end;
 
 
-procedure TForm1.FormCreate(Sender: TObject);
-begin
-  // load a flat plane model for the water FreeForm
-  plane.LoadFromFile('plane.3ds');
-
-  // Load Cg proggy
-  with CgShader1 do
-  begin
-    VertexProgram.LoadFromFile('reflect_vp.cg');
-    MemoVertCode.Lines.Assign(VertexProgram.Code);
-
-    FragmentProgram.LoadFromFile('reflect_fp.cg');
-    MemoFragCode.Lines.Assign(FragmentProgram.Code);
-
-    VertexProgram.Enabled := false;
-    FragmentProgram.Enabled := false;
-  end;
-
-  ButtonApplyFP.Enabled := false;
-  ButtonApplyVP.Enabled := false;
-
-  ref := 0;
-
-  CreateCubeMap;
-end;
-
 procedure TForm1.CreateCubeMap;
 procedure TForm1.CreateCubeMap;
 begin
 begin
   GLDummyCube2.Visible := false;
   GLDummyCube2.Visible := false;

+ 0 - 0
Examples/Demos/cgshaders/SkyClouds/Textures/sky.jpg → Examples/Demos/cgshaders/SkyClouds.jpg


+ 20 - 0
Examples/Demos/cgshaders/SkyClouds/CgSkyClouds.dpr

@@ -0,0 +1,20 @@
+(*
+cg Sky Shaders, key:
+d - day
+n - night
+c - clear weather
+s - cloudy weather
+*)
+program CgSkyClouds;
+
+uses
+  Forms,
+  fSkyClouds in 'fSkyClouds.pas';
+
+{$R *.res}
+
+begin
+  Application.Initialize;
+  Application.CreateForm(TMainForm, MainForm);
+  Application.Run;
+end.

+ 5 - 5
Examples/Demos/cgshaders/SkyClouds/SkyClouds.dproj → Examples/Demos/cgshaders/SkyClouds/CgSkyClouds.dproj

@@ -1,7 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     <PropertyGroup>
     <PropertyGroup>
         <ProjectGuid>{EA7F30EE-DB23-4B90-A0DB-670BEB006B55}</ProjectGuid>
         <ProjectGuid>{EA7F30EE-DB23-4B90-A0DB-670BEB006B55}</ProjectGuid>
-        <MainSource>SkyClouds.dpr</MainSource>
+        <MainSource>CgSkyClouds.dpr</MainSource>
         <Base>True</Base>
         <Base>True</Base>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <Config Condition="'$(Config)'==''">Debug</Config>
         <TargetedPlatforms>1</TargetedPlatforms>
         <TargetedPlatforms>1</TargetedPlatforms>
@@ -52,7 +52,7 @@
         <Base>true</Base>
         <Base>true</Base>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Base)'!=''">
     <PropertyGroup Condition="'$(Base)'!=''">
-        <SanitizedProjectName>SkyClouds</SanitizedProjectName>
+        <SanitizedProjectName>CgSkyClouds</SanitizedProjectName>
         <DCC_E>false</DCC_E>
         <DCC_E>false</DCC_E>
         <DCC_S>false</DCC_S>
         <DCC_S>false</DCC_S>
         <DCC_ImageBase>00400000</DCC_ImageBase>
         <DCC_ImageBase>00400000</DCC_ImageBase>
@@ -134,7 +134,7 @@
         <BorlandProject>
         <BorlandProject>
             <Delphi.Personality>
             <Delphi.Personality>
                 <Source>
                 <Source>
-                    <Source Name="MainSource">SkyClouds.dpr</Source>
+                    <Source Name="MainSource">CgSkyClouds.dpr</Source>
                 </Source>
                 </Source>
                 <VersionInfo>
                 <VersionInfo>
                     <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
                     <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
@@ -176,9 +176,9 @@
                 <Platform value="Win64">False</Platform>
                 <Platform value="Win64">False</Platform>
             </Platforms>
             </Platforms>
             <Deployment Version="3">
             <Deployment Version="3">
-                <DeployFile LocalName="SkyClouds.exe" Configuration="Debug" Class="ProjectOutput">
+                <DeployFile LocalName="CgSkyClouds.exe" Configuration="Debug" Class="ProjectOutput">
                     <Platform Name="Win32">
                     <Platform Name="Win32">
-                        <RemoteName>SkyClouds.exe</RemoteName>
+                        <RemoteName>CgSkyClouds.exe</RemoteName>
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>

+ 0 - 4
Examples/Demos/cgshaders/SkyClouds/Readme.txt

@@ -1,4 +0,0 @@
-d - day 
-n - night
-c - clear weather
-s - cloudy

+ 0 - 13
Examples/Demos/cgshaders/SkyClouds/SkyClouds.dpr

@@ -1,13 +0,0 @@
-program SkyClouds;
-
-uses
-  Forms,
-  fSkyClouds in 'fSkyClouds.pas' {MainForm};
-
-{$R *.res}
-
-begin
-  Application.Initialize;
-  Application.CreateForm(TMainForm, MainForm);
-  Application.Run;
-end.

+ 31 - 6
Examples/Demos/cgshaders/SkyClouds/fSkyClouds.dfm

@@ -1,7 +1,7 @@
 object MainForm: TMainForm
 object MainForm: TMainForm
   Left = 436
   Left = 436
   Top = 247
   Top = 247
-  Caption = 'MainForm'
+  Caption = 'Sky Clouds'
   ClientHeight = 515
   ClientHeight = 515
   ClientWidth = 792
   ClientWidth = 792
   Color = clBtnFace
   Color = clBtnFace
@@ -12,25 +12,23 @@ object MainForm: TMainForm
   Font.Style = []
   Font.Style = []
   Position = poScreenCenter
   Position = poScreenCenter
   OnCreate = FormCreate
   OnCreate = FormCreate
-  OnMouseWheel = FormMouseWheel
   TextHeight = 13
   TextHeight = 13
   object GLSV: TGLSceneViewer
   object GLSV: TGLSceneViewer
-    Left = 74
+    Left = 105
     Top = 0
     Top = 0
-    Width = 718
+    Width = 687
     Height = 515
     Height = 515
     Camera = cam
     Camera = cam
     FieldOfView = 141.469467163085900000
     FieldOfView = 141.469467163085900000
     PenAsTouch = False
     PenAsTouch = False
     Align = alClient
     Align = alClient
     OnMouseDown = GLSVMouseDown
     OnMouseDown = GLSVMouseDown
-    OnMouseMove = GLSVMouseMove
     TabOrder = 0
     TabOrder = 0
   end
   end
   object Panel1: TPanel
   object Panel1: TPanel
     Left = 0
     Left = 0
     Top = 0
     Top = 0
-    Width = 74
+    Width = 105
     Height = 515
     Height = 515
     Align = alLeft
     Align = alLeft
     Alignment = taRightJustify
     Alignment = taRightJustify
@@ -70,6 +68,14 @@ object MainForm: TMainForm
       Height = 13
       Height = 13
       Caption = 'Keys:'
       Caption = 'Keys:'
     end
     end
+    object PanelFPS: TPanel
+      Left = 3
+      Top = 136
+      Width = 96
+      Height = 41
+      Caption = 'FPS'
+      TabOrder = 0
+    end
   end
   end
   object GLScene: TGLScene
   object GLScene: TGLScene
     Left = 120
     Left = 120
@@ -172,4 +178,23 @@ object MainForm: TMainForm
     Left = 554
     Left = 554
     Top = 244
     Top = 244
   end
   end
+  object GLSimpleNavigation1: TGLSimpleNavigation
+    Form = Owner
+    GLSceneViewer = GLSV
+    KeyCombinations = <
+      item
+        ShiftState = [ssLeft, ssRight]
+        Action = snaZoom
+      end
+      item
+        ShiftState = [ssLeft]
+        Action = snaMoveAroundTarget
+      end
+      item
+        ShiftState = [ssRight]
+        Action = snaMoveAroundTarget
+      end>
+    Left = 136
+    Top = 224
+  end
 end
 end

+ 23 - 19
Examples/Demos/cgshaders/SkyClouds/fSkyClouds.pas

@@ -27,11 +27,12 @@ uses
   CG.Shader,
   CG.Shader,
   GLS.FileTGA,
   GLS.FileTGA,
   GLS.Keyboard,
   GLS.Keyboard,
-  XPMan,
   GLS.Material,
   GLS.Material,
   GLS.Coordinates,
   GLS.Coordinates,
-  
-  GLS.BaseClasses;
+  GLS.BaseClasses,
+  GLS.Utils,
+
+  GLS.SimpleNavigation;
 
 
 type
 type
 
 
@@ -60,6 +61,8 @@ type
     Label3: TLabel;
     Label3: TLabel;
     Label4: TLabel;
     Label4: TLabel;
     Label5: TLabel;
     Label5: TLabel;
+    GLSimpleNavigation1: TGLSimpleNavigation;
+    PanelFPS: TPanel;
     procedure CgCloudsApplyVP(CgProgram: TCgProgram; Sender: TObject);
     procedure CgCloudsApplyVP(CgProgram: TCgProgram; Sender: TObject);
     procedure CgSunUnApplyFP(CgProgram: TCgProgram);
     procedure CgSunUnApplyFP(CgProgram: TCgProgram);
     procedure CgSunApplyFP(CgProgram: TCgProgram; Sender: TObject);
     procedure CgSunApplyFP(CgProgram: TCgProgram; Sender: TObject);
@@ -92,7 +95,7 @@ type
 
 
 var
 var
   MainForm: TMainForm;
   MainForm: TMainForm;
-  dirSelf, dirTextures, dirShaders: String;
+  dirSelf, dirTextures, dirShaders: TFileName;
 
 
 const
 const
   Coeff = 0.1;
   Coeff = 0.1;
@@ -105,9 +108,10 @@ implementation
 // ---------------------------FormCreate--------------------
 // ---------------------------FormCreate--------------------
 procedure TMainForm.FormCreate(Sender: TObject);
 procedure TMainForm.FormCreate(Sender: TObject);
 begin
 begin
-  GetDir(0, dirSelf);
-  dirTextures := dirSelf + '\Textures\';
-  dirShaders := dirSelf + '\Shaders\';
+  // GetDir(0, dirSelf);
+  dirSelf := GetCurrentAssetPath();  // current assets
+  dirTextures := dirSelf + '\texture\';
+  dirShaders := dirSelf + '\shader\';
 
 
   CreateMaterials;
   CreateMaterials;
   AssignMaterials;
   AssignMaterials;
@@ -120,7 +124,7 @@ begin
 
 
   WeatherMode := 0;
   WeatherMode := 0;
   ClientWidth := 1024;
   ClientWidth := 1024;
-  ClientHeight := 768;
+  ClientHeight := 712;
   Position := poScreenCenter;
   Position := poScreenCenter;
   GLSV.Align := alClient;
   GLSV.Align := alClient;
   Timer.Enabled := True;
   Timer.Enabled := True;
@@ -130,17 +134,17 @@ end;
 procedure TMainForm.CreateMaterials;
 procedure TMainForm.CreateMaterials;
 begin
 begin
   CgBackground.FragmentProgram.LoadFromFile
   CgBackground.FragmentProgram.LoadFromFile
-    (dirShaders + 'fragment_background.cg');
+    (dirShaders + 'fragment_bkground.cg');
   CgClouds.FragmentProgram.LoadFromFile(dirShaders + 'fragment_clouds.cg');
   CgClouds.FragmentProgram.LoadFromFile(dirShaders + 'fragment_clouds.cg');
   CgMasser.FragmentProgram.LoadFromFile(dirShaders + 'fragment_moon.cg');
   CgMasser.FragmentProgram.LoadFromFile(dirShaders + 'fragment_moon.cg');
   CgSecunda.FragmentProgram.LoadFromFile(dirShaders + 'fragment_moon.cg');
   CgSecunda.FragmentProgram.LoadFromFile(dirShaders + 'fragment_moon.cg');
   CgSun.FragmentProgram.LoadFromFile(dirShaders + 'fragment_moon.cg');
   CgSun.FragmentProgram.LoadFromFile(dirShaders + 'fragment_moon.cg');
 
 
   // day background
   // day background
-  MatLib.AddTextureMaterial('bg_day', dirTextures + 'bg_day.tga');
+  MatLib.AddTextureMaterial('day', dirTextures + 'tx_day.tga');
 
 
   // night background
   // night background
-  MatLib.AddTextureMaterial('bg_night', dirTextures + 'bg_night.tga');
+  MatLib.AddTextureMaterial('night', dirTextures + 'tx_night.tga');
 
 
   // main skybox material
   // main skybox material
   with MatLib.Materials.Add do
   with MatLib.Materials.Add do
@@ -165,7 +169,7 @@ begin
   MatLib.AddTextureMaterial('masser', dirTextures + 'tx_masser_three_wan.tga');
   MatLib.AddTextureMaterial('masser', dirTextures + 'tx_masser_three_wan.tga');
   MatLib.AddTextureMaterial('secunda',
   MatLib.AddTextureMaterial('secunda',
     dirTextures + 'tx_secunda_three_wan.tga');
     dirTextures + 'tx_secunda_three_wan.tga');
-  MatLib.AddTextureMaterial('sun', dirTextures + 'sun.tga');
+  MatLib.AddTextureMaterial('sun', dirTextures + 'tx_sun.tga');
 
 
   with MatLib.Materials.Add do
   with MatLib.Materials.Add do
   begin
   begin
@@ -256,7 +260,7 @@ end;
 // ---------------------------TimerTimer--------------------
 // ---------------------------TimerTimer--------------------
 procedure TMainForm.TimerTimer(Sender: TObject);
 procedure TMainForm.TimerTimer(Sender: TObject);
 begin
 begin
-  Caption := GLSV.FramesPerSecondText(2);
+  PanelFPS.Caption := GLSV.FramesPerSecondText(2);
   GLSV.ResetPerformanceMonitor;
   GLSV.ResetPerformanceMonitor;
 end;
 end;
 
 
@@ -327,13 +331,13 @@ end;
 // ---------------------------HandleKeys--------------------
 // ---------------------------HandleKeys--------------------
 procedure TMainForm.HandleKeys;
 procedure TMainForm.HandleKeys;
 begin
 begin
-  if IsKeyDown('c') then
+  if IsKeyDown('c') then           // weather1
     WeatherMode := 0
     WeatherMode := 0
-  else if IsKeyDown('s') then
+  else if IsKeyDown('s') then      // weather2
     WeatherMode := 1
     WeatherMode := 1
-  else if IsKeyDown('n') then
+  else if IsKeyDown('n') then      // night
     DayMode := 2
     DayMode := 2
-  else if IsKeyDown('d') then
+  else if IsKeyDown('d') then      // day
     DayMode := 1
     DayMode := 1
   else
   else
 
 
@@ -346,12 +350,12 @@ var
 begin
 begin
   with CgProgram.ParamByName('channel1') do
   with CgProgram.ParamByName('channel1') do
   begin
   begin
-    SetAsTexture2d(MatLib.LibMaterialByName('bg_day').Material.Texture.Handle);
+    SetAsTexture2d(MatLib.LibMaterialByName('day').Material.Texture.Handle);
     EnableTexture;
     EnableTexture;
   end;
   end;
   with CgProgram.ParamByName('channel2') do
   with CgProgram.ParamByName('channel2') do
   begin
   begin
-    SetAsTexture2d(MatLib.LibMaterialByName('bg_night')
+    SetAsTexture2d(MatLib.LibMaterialByName('night')
       .Material.Texture.Handle);
       .Material.Texture.Handle);
     EnableTexture;
     EnableTexture;
   end;
   end;

+ 14 - 0
Examples/Demos/cgshaders/Texturing/CgTextureD.dproj

@@ -128,6 +128,8 @@
         <DCCReference Include="fCgTextureD.pas">
         <DCCReference Include="fCgTextureD.pas">
             <Form>FormCgTexture</Form>
             <Form>FormCgTexture</Form>
         </DCCReference>
         </DCCReference>
+        <None Include="..\..\..\Assets\Shader\cg_texture_fp.cg"/>
+        <None Include="..\..\..\Assets\Shader\cg_texture_vp.cg"/>
         <BuildConfiguration Include="Base">
         <BuildConfiguration Include="Base">
             <Key>Base</Key>
             <Key>Base</Key>
         </BuildConfiguration>
         </BuildConfiguration>
@@ -174,6 +176,18 @@
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>
+                <DeployFile LocalName="..\..\..\Assets\Shader\cg_texture_fp.cg" Configuration="Debug" Class="ProjectFile">
+                    <Platform Name="Win32">
+                        <RemoteDir>.\</RemoteDir>
+                        <Overwrite>true</Overwrite>
+                    </Platform>
+                </DeployFile>
+                <DeployFile LocalName="..\..\..\Assets\Shader\cg_texture_vp.cg" Configuration="Debug" Class="ProjectFile">
+                    <Platform Name="Win32">
+                        <RemoteDir>.\</RemoteDir>
+                        <Overwrite>true</Overwrite>
+                    </Platform>
+                </DeployFile>
                 <DeployFile LocalName="CgTextureD.exe" Configuration="Debug" Class="ProjectOutput">
                 <DeployFile LocalName="CgTextureD.exe" Configuration="Debug" Class="ProjectOutput">
                     <Platform Name="Win32">
                     <Platform Name="Win32">
                         <RemoteName>CgTextureD.exe</RemoteName>
                         <RemoteName>CgTextureD.exe</RemoteName>

+ 0 - 33
Examples/Demos/cgshaders/Texturing/cg_texture_fp.cg

@@ -1,33 +0,0 @@
-//
-// Fragment Program
-//
-// - Blends four textures
-//
-
-struct vert2Frag
-{
-    float4 Position : POSITION;
-    float4 Tex0     : TEXCOORD0;
-    float4 Tex1     : TEXCOORD1;
-    float4 Tex2     : TEXCOORD2;
-    float4 Tex3     : TEXCOORD3;
-};
-
-fragout main( vert2Frag IN,
-              uniform sampler2D Map0,
-              uniform sampler2D Map1,
-              uniform sampler2D Map2,
-              uniform sampler2D Map3,
-			  uniform float4 weights
-            )
-{
-    fragout OUT;
-
-    OUT.col  = f4tex2D(Map0,IN.Tex0.xyz) * weights[0];
-    OUT.col += f4tex2D(Map1,IN.Tex1.xyz) * weights[1];
-    OUT.col += f4tex2D(Map2,IN.Tex2.xyz) * weights[2];
-    OUT.col += f4tex2D(Map3,IN.Tex3.xyz) * weights[3];
-
-    return OUT;
-}
-

+ 0 - 48
Examples/Demos/cgshaders/Texturing/cg_texture_vp.cg

@@ -1,48 +0,0 @@
-//
-// Vertex Program
-//
-// - Calculates texture coordinate offsets
-//
-
-struct appin
-{
-    float4 Pos  : POSITION;
-    float4 Tex  : TEXCOORD0;
-};
-
-struct vertout
-{
-    float4 HPosition : POSITION;
-    float4 Tex0      : TEXCOORD0;
-    float4 Tex1      : TEXCOORD1;
-    float4 Tex2      : TEXCOORD2;
-    float4 Tex3      : TEXCOORD3;
-};
-
-vertout main( appin IN,
-              uniform float4x4 ModelViewProj,
-              uniform float4   shifts
-            )
-{
-    vertout OUT;
-
-    OUT.HPosition = mul(ModelViewProj, IN.Pos);
-
-    OUT.Tex0.x = IN.Tex.x + shifts[0];
-    OUT.Tex0.y = IN.Tex.y;
-    OUT.Tex0.z = IN.Tex.z;
-
-    OUT.Tex1.x = IN.Tex.x;
-    OUT.Tex1.y = IN.Tex.y + shifts[1];
-    OUT.Tex1.z = IN.Tex.z;
-
-    OUT.Tex2.x = IN.Tex.x + shifts[2];
-    OUT.Tex2.y = IN.Tex.y;
-    OUT.Tex2.z = IN.Tex.z;
-
-    OUT.Tex3.x = IN.Tex.x;
-    OUT.Tex3.y = IN.Tex.y + shifts[3];
-    OUT.Tex3.z = IN.Tex.z;
-
-    return OUT;
-}

+ 43 - 43
Examples/Demos/cgshaders/cgshaders.groupproj

@@ -9,6 +9,9 @@
         <Projects Include="BombShader\BombShaderC.cbproj">
         <Projects Include="BombShader\BombShaderC.cbproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
+        <Projects Include="BlinnSheen\CgBlinnSheen.dproj">
+            <Dependencies/>
+        </Projects>
         <Projects Include="cellshading\CgCellShaderD.dproj">
         <Projects Include="cellshading\CgCellShaderD.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
@@ -27,19 +30,16 @@
         <Projects Include="texturing\CgTextureC.cbproj">
         <Projects Include="texturing\CgTextureC.cbproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="BlinnSheen\Cg_BlinnSheen.dproj">
+        <Projects Include="BumpMapping\CgBumpMapping.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="BumpMapping\Cg_BumpMapping.dproj">
+        <Projects Include="Distortion\CgDistTexture.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="Distortion\DistortionTexture.dproj">
+        <Projects Include="Reflect\CgReflect.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="Reflect\Reflect.dproj">
-            <Dependencies/>
-        </Projects>
-        <Projects Include="SkyClouds\SkyClouds.dproj">
+        <Projects Include="SkyClouds\CgSkyClouds.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
     </ItemGroup>
     </ItemGroup>
@@ -68,6 +68,15 @@
     <Target Name="BombShaderC:Make">
     <Target Name="BombShaderC:Make">
         <MSBuild Projects="BombShader\BombShaderC.cbproj" Targets="Make"/>
         <MSBuild Projects="BombShader\BombShaderC.cbproj" Targets="Make"/>
     </Target>
     </Target>
+    <Target Name="CgBlinnSheen">
+        <MSBuild Projects="BlinnSheen\CgBlinnSheen.dproj"/>
+    </Target>
+    <Target Name="CgBlinnSheen:Clean">
+        <MSBuild Projects="BlinnSheen\CgBlinnSheen.dproj" Targets="Clean"/>
+    </Target>
+    <Target Name="CgBlinnSheen:Make">
+        <MSBuild Projects="BlinnSheen\CgBlinnSheen.dproj" Targets="Make"/>
+    </Target>
     <Target Name="CgCellShaderD">
     <Target Name="CgCellShaderD">
         <MSBuild Projects="cellshading\CgCellShaderD.dproj"/>
         <MSBuild Projects="cellshading\CgCellShaderD.dproj"/>
     </Target>
     </Target>
@@ -122,59 +131,50 @@
     <Target Name="CgTextureC:Make">
     <Target Name="CgTextureC:Make">
         <MSBuild Projects="texturing\CgTextureC.cbproj" Targets="Make"/>
         <MSBuild Projects="texturing\CgTextureC.cbproj" Targets="Make"/>
     </Target>
     </Target>
-    <Target Name="Cg_BlinnSheen">
-        <MSBuild Projects="BlinnSheen\Cg_BlinnSheen.dproj"/>
-    </Target>
-    <Target Name="Cg_BlinnSheen:Clean">
-        <MSBuild Projects="BlinnSheen\Cg_BlinnSheen.dproj" Targets="Clean"/>
-    </Target>
-    <Target Name="Cg_BlinnSheen:Make">
-        <MSBuild Projects="BlinnSheen\Cg_BlinnSheen.dproj" Targets="Make"/>
-    </Target>
-    <Target Name="Cg_BumpMapping">
-        <MSBuild Projects="BumpMapping\Cg_BumpMapping.dproj"/>
+    <Target Name="CgBumpMapping">
+        <MSBuild Projects="BumpMapping\CgBumpMapping.dproj"/>
     </Target>
     </Target>
-    <Target Name="Cg_BumpMapping:Clean">
-        <MSBuild Projects="BumpMapping\Cg_BumpMapping.dproj" Targets="Clean"/>
+    <Target Name="CgBumpMapping:Clean">
+        <MSBuild Projects="BumpMapping\CgBumpMapping.dproj" Targets="Clean"/>
     </Target>
     </Target>
-    <Target Name="Cg_BumpMapping:Make">
-        <MSBuild Projects="BumpMapping\Cg_BumpMapping.dproj" Targets="Make"/>
+    <Target Name="CgBumpMapping:Make">
+        <MSBuild Projects="BumpMapping\CgBumpMapping.dproj" Targets="Make"/>
     </Target>
     </Target>
-    <Target Name="DistortionTexture">
-        <MSBuild Projects="Distortion\DistortionTexture.dproj"/>
+    <Target Name="CgDistTexture">
+        <MSBuild Projects="Distortion\CgDistTexture.dproj"/>
     </Target>
     </Target>
-    <Target Name="DistortionTexture:Clean">
-        <MSBuild Projects="Distortion\DistortionTexture.dproj" Targets="Clean"/>
+    <Target Name="CgDistTexture:Clean">
+        <MSBuild Projects="Distortion\CgDistTexture.dproj" Targets="Clean"/>
     </Target>
     </Target>
-    <Target Name="DistortionTexture:Make">
-        <MSBuild Projects="Distortion\DistortionTexture.dproj" Targets="Make"/>
+    <Target Name="CgDistTexture:Make">
+        <MSBuild Projects="Distortion\CgDistTexture.dproj" Targets="Make"/>
     </Target>
     </Target>
-    <Target Name="Reflect">
-        <MSBuild Projects="Reflect\Reflect.dproj"/>
+    <Target Name="CgReflect">
+        <MSBuild Projects="Reflect\CgReflect.dproj"/>
     </Target>
     </Target>
-    <Target Name="Reflect:Clean">
-        <MSBuild Projects="Reflect\Reflect.dproj" Targets="Clean"/>
+    <Target Name="CgReflect:Clean">
+        <MSBuild Projects="Reflect\CgReflect.dproj" Targets="Clean"/>
     </Target>
     </Target>
-    <Target Name="Reflect:Make">
-        <MSBuild Projects="Reflect\Reflect.dproj" Targets="Make"/>
+    <Target Name="CgReflect:Make">
+        <MSBuild Projects="Reflect\CgReflect.dproj" Targets="Make"/>
     </Target>
     </Target>
-    <Target Name="SkyClouds">
-        <MSBuild Projects="SkyClouds\SkyClouds.dproj"/>
+    <Target Name="CgSkyClouds">
+        <MSBuild Projects="SkyClouds\CgSkyClouds.dproj"/>
     </Target>
     </Target>
-    <Target Name="SkyClouds:Clean">
-        <MSBuild Projects="SkyClouds\SkyClouds.dproj" Targets="Clean"/>
+    <Target Name="CgSkyClouds:Clean">
+        <MSBuild Projects="SkyClouds\CgSkyClouds.dproj" Targets="Clean"/>
     </Target>
     </Target>
-    <Target Name="SkyClouds:Make">
-        <MSBuild Projects="SkyClouds\SkyClouds.dproj" Targets="Make"/>
+    <Target Name="CgSkyClouds:Make">
+        <MSBuild Projects="SkyClouds\CgSkyClouds.dproj" Targets="Make"/>
     </Target>
     </Target>
     <Target Name="Build">
     <Target Name="Build">
-        <CallTarget Targets="BombShaderD;BombShaderC;CgCellShaderD;CgCellShaderC;CgSimpleD;CgSimpleC;CgTextureD;CgTextureC;Cg_BlinnSheen;Cg_BumpMapping;DistortionTexture;Reflect;SkyClouds"/>
+        <CallTarget Targets="BombShaderD;BombShaderC;CgBlinnSheen;CgCellShaderD;CgCellShaderC;CgSimpleD;CgSimpleC;CgTextureD;CgTextureC;CgBumpMapping;CgDistTexture;CgReflect;CgSkyClouds"/>
     </Target>
     </Target>
     <Target Name="Clean">
     <Target Name="Clean">
-        <CallTarget Targets="BombShaderD:Clean;BombShaderC:Clean;CgCellShaderD:Clean;CgCellShaderC:Clean;CgSimpleD:Clean;CgSimpleC:Clean;CgTextureD:Clean;CgTextureC:Clean;Cg_BlinnSheen:Clean;Cg_BumpMapping:Clean;DistortionTexture:Clean;Reflect:Clean;SkyClouds:Clean"/>
+        <CallTarget Targets="BombShaderD:Clean;BombShaderC:Clean;CgBlinnSheen:Clean;CgCellShaderD:Clean;CgCellShaderC:Clean;CgSimpleD:Clean;CgSimpleC:Clean;CgTextureD:Clean;CgTextureC:Clean;CgBumpMapping:Clean;CgDistTexture:Clean;CgReflect:Clean;CgSkyClouds:Clean"/>
     </Target>
     </Target>
     <Target Name="Make">
     <Target Name="Make">
-        <CallTarget Targets="BombShaderD:Make;BombShaderC:Make;CgCellShaderD:Make;CgCellShaderC:Make;CgSimpleD:Make;CgSimpleC:Make;CgTextureD:Make;CgTextureC:Make;Cg_BlinnSheen:Make;Cg_BumpMapping:Make;DistortionTexture:Make;Reflect:Make;SkyClouds:Make"/>
+        <CallTarget Targets="BombShaderD:Make;BombShaderC:Make;CgBlinnSheen:Make;CgCellShaderD:Make;CgCellShaderC:Make;CgSimpleD:Make;CgSimpleC:Make;CgTextureD:Make;CgTextureC:Make;CgBumpMapping:Make;CgDistTexture:Make;CgReflect:Make;CgSkyClouds: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>

+ 0 - 0
external/GPU/Samples/Computing.groupproj → Examples/Demos/computing/Computing.groupproj


+ 0 - 0
external/GPU/Samples/FastFT.jpg → Examples/Demos/computing/FastFT.jpg


+ 0 - 0
external/GPU/Samples/FastFourierTransformation/FastFourierD.dpr → Examples/Demos/computing/FastFourierTransformation/FastFourierD.dpr


+ 0 - 0
external/GPU/Samples/FastFourierTransformation/FastFourierD.dproj → Examples/Demos/computing/FastFourierTransformation/FastFourierD.dproj


+ 0 - 0
external/GPU/Samples/FastFourierTransformation/fFourier_D.dfm → Examples/Demos/computing/FastFourierTransformation/fFourier_D.dfm


+ 0 - 0
external/GPU/Samples/FastFourierTransformation/fFourier_D.pas → Examples/Demos/computing/FastFourierTransformation/fFourier_D.pas


+ 0 - 0
external/GPU/Samples/FastFourierTransformation/uCPUFFT.pas → Examples/Demos/computing/FastFourierTransformation/uCPUFFT.pas


+ 0 - 0
external/GPU/Samples/PostProcessing.jpg → Examples/Demos/computing/PostProcessing.jpg


+ 0 - 0
external/GPU/Samples/PostProcessing/PostProcessingD.dpr → Examples/Demos/computing/PostProcessing/PostProcessingD.dpr


+ 0 - 0
external/GPU/Samples/PostProcessing/PostProcessingD.dproj → Examples/Demos/computing/PostProcessing/PostProcessingD.dproj


+ 0 - 0
external/GPU/Samples/PostProcessing/PostProcessing_kernel.cu → Examples/Demos/computing/PostProcessing/PostProcessing_kernel.cu


+ 0 - 0
external/GPU/Samples/PostProcessing/fPostProcessingD.dfm → Examples/Demos/computing/PostProcessing/fPostProcessingD.dfm


+ 0 - 0
external/GPU/Samples/PostProcessing/fPostProcessingD.pas → Examples/Demos/computing/PostProcessing/fPostProcessingD.pas


+ 0 - 0
external/GPU/Samples/ScalarProduct/ScalarProductD.dpr → Examples/Demos/computing/ScalarProduct/ScalarProductD.dpr


+ 0 - 0
external/GPU/Samples/ScalarProduct/ScalarProductD.dproj → Examples/Demos/computing/ScalarProduct/ScalarProductD.dproj


+ 0 - 0
external/GPU/Samples/ScalarProduct/ScalarProduct_kernel.cu → Examples/Demos/computing/ScalarProduct/ScalarProduct_kernel.cu


+ 0 - 0
external/GPU/Samples/ScalarProduct/fScalarProductD.dfm → Examples/Demos/computing/ScalarProduct/fScalarProductD.dfm


+ 0 - 0
external/GPU/Samples/ScalarProduct/fScalarProductD.pas → Examples/Demos/computing/ScalarProduct/fScalarProductD.pas


+ 0 - 0
external/GPU/Samples/SimpleCUDATexture/SimpleTextureD.dpr → Examples/Demos/computing/SimpleCUDATexture/SimpleTextureD.dpr


+ 0 - 0
external/GPU/Samples/SimpleCUDATexture/SimpleTextureD.dproj → Examples/Demos/computing/SimpleCUDATexture/SimpleTextureD.dproj


+ 0 - 0
external/GPU/Samples/SimpleCUDATexture/SimpleTexture_kernel.cu → Examples/Demos/computing/SimpleCUDATexture/SimpleTexture_kernel.cu


+ 0 - 0
external/GPU/Samples/SimpleCUDATexture/fSimpleTexD.dfm → Examples/Demos/computing/SimpleCUDATexture/fSimpleTexD.dfm


+ 0 - 0
external/GPU/Samples/SimpleCUDATexture/fSimpleTexD.pas → Examples/Demos/computing/SimpleCUDATexture/fSimpleTexD.pas


+ 0 - 0
external/GPU/Samples/StableFluids/FluidsD.dpr → Examples/Demos/computing/StableFluids/FluidsD.dpr


+ 0 - 0
external/GPU/Samples/StableFluids/FluidsD.dproj → Examples/Demos/computing/StableFluids/FluidsD.dproj


+ 0 - 0
external/GPU/Samples/StableFluids/Fluids_kernels.cu → Examples/Demos/computing/StableFluids/Fluids_kernels.cu


+ 0 - 0
external/GPU/Samples/StableFluids/fFluidsD.dfm → Examples/Demos/computing/StableFluids/fFluidsD.dfm


+ 0 - 0
external/GPU/Samples/StableFluids/fFluidsD.pas → Examples/Demos/computing/StableFluids/fFluidsD.pas


+ 0 - 0
external/GPU/Samples/VertexDataGeneration/Simple kernel.cu → Examples/Demos/computing/VertexDataGeneration/Simple kernel.cu


+ 0 - 0
external/GPU/Samples/VertexDataGeneration/VertexGeneration.dpr → Examples/Demos/computing/VertexDataGeneration/VertexGeneration.dpr


+ 0 - 0
external/GPU/Samples/VertexDataGeneration/VertexGeneration.dproj → Examples/Demos/computing/VertexDataGeneration/VertexGeneration.dproj


+ 0 - 0
external/GPU/Samples/VertexDataGeneration/fVertexGenD.dfm → Examples/Demos/computing/VertexDataGeneration/fVertexGenD.dfm


+ 0 - 0
external/GPU/Samples/VertexDataGeneration/fVertexGenD.pas → Examples/Demos/computing/VertexDataGeneration/fVertexGenD.pas


+ 0 - 0
external/GPU/Samples/aComputing.htm → Examples/Demos/computing/aComputing.htm


+ 5 - 5
Examples/Demos/meshes/actor/ActorD.dpr

@@ -1,6 +1,6 @@
-{: This sample illustrates basic actor use.
+(* This sample illustrates basic actor using.
 
 
-	I'm using the GLScene built-in Actor Load from File, Load Texture,
+   Use the GLScene built-in Actor Load from File, Load Texture,
    add one weapon, and animate both. The sensation is how both are one.
    add one weapon, and animate both. The sensation is how both are one.
    Both weapon and actor are just TGLActor objects, the role is different.
    Both weapon and actor are just TGLActor objects, the role is different.
    In the sample, it is possible change the animation of the actor and
    In the sample, it is possible change the animation of the actor and
@@ -21,13 +21,13 @@
    The stuff used for this sample is free, and information about this is in
    The stuff used for this sample is free, and information about this is in
    the waste.txt text file (see "media" directory).
    the waste.txt text file (see "media" directory).
 
 
-   Special Thanks to Eric Grange an Roger Cao for your help
-}
+   Special Thanks to Eric Grange an Roger Cao for help
+*)
 program ActorD;
 program ActorD;
 
 
 uses
 uses
   Forms,
   Forms,
-  fActorD in 'fActorD.pas' {FormActor};
+  fActorD in 'fActorD.pas';
 
 
 {$R *.RES}
 {$R *.RES}
 
 

+ 25 - 25
Packages/GLScene.groupproj

@@ -21,16 +21,16 @@
         <Projects Include="GLScene_Physics_DT.dproj">
         <Projects Include="GLScene_Physics_DT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="..\External\GPU\Packages\GLScene_GPU_RT.dproj">
+        <Projects Include="GLScene_Cg_RT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="..\External\GPU\Packages\GLScene_GPU_DT.dproj">
+        <Projects Include="GLScene_Cg_DT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="GLScene_Cg_RT.dproj">
+        <Projects Include="GLScene_GPU_RT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
-        <Projects Include="GLScene_Cg_DT.dproj">
+        <Projects Include="GLScene_GPU_DT.dproj">
             <Dependencies/>
             <Dependencies/>
         </Projects>
         </Projects>
     </ItemGroup>
     </ItemGroup>
@@ -95,24 +95,6 @@
     <Target Name="GLScene_Physics_DT:Make">
     <Target Name="GLScene_Physics_DT:Make">
         <MSBuild Projects="GLScene_Physics_DT.dproj" Targets="Make"/>
         <MSBuild Projects="GLScene_Physics_DT.dproj" Targets="Make"/>
     </Target>
     </Target>
-    <Target Name="GLScene_GPU_RT">
-        <MSBuild Projects="..\External\GPU\Packages\GLScene_GPU_RT.dproj"/>
-    </Target>
-    <Target Name="GLScene_GPU_RT:Clean">
-        <MSBuild Projects="..\External\GPU\Packages\GLScene_GPU_RT.dproj" Targets="Clean"/>
-    </Target>
-    <Target Name="GLScene_GPU_RT:Make">
-        <MSBuild Projects="..\External\GPU\Packages\GLScene_GPU_RT.dproj" Targets="Make"/>
-    </Target>
-    <Target Name="GLScene_GPU_DT">
-        <MSBuild Projects="..\External\GPU\Packages\GLScene_GPU_DT.dproj"/>
-    </Target>
-    <Target Name="GLScene_GPU_DT:Clean">
-        <MSBuild Projects="..\External\GPU\Packages\GLScene_GPU_DT.dproj" Targets="Clean"/>
-    </Target>
-    <Target Name="GLScene_GPU_DT:Make">
-        <MSBuild Projects="..\External\GPU\Packages\GLScene_GPU_DT.dproj" Targets="Make"/>
-    </Target>
     <Target Name="GLScene_Cg_RT">
     <Target Name="GLScene_Cg_RT">
         <MSBuild Projects="GLScene_Cg_RT.dproj"/>
         <MSBuild Projects="GLScene_Cg_RT.dproj"/>
     </Target>
     </Target>
@@ -131,14 +113,32 @@
     <Target Name="GLScene_Cg_DT:Make">
     <Target Name="GLScene_Cg_DT:Make">
         <MSBuild Projects="GLScene_Cg_DT.dproj" Targets="Make"/>
         <MSBuild Projects="GLScene_Cg_DT.dproj" Targets="Make"/>
     </Target>
     </Target>
+    <Target Name="GLScene_GPU_RT">
+        <MSBuild Projects="GLScene_GPU_RT.dproj"/>
+    </Target>
+    <Target Name="GLScene_GPU_RT:Clean">
+        <MSBuild Projects="GLScene_GPU_RT.dproj" Targets="Clean"/>
+    </Target>
+    <Target Name="GLScene_GPU_RT:Make">
+        <MSBuild Projects="GLScene_GPU_RT.dproj" Targets="Make"/>
+    </Target>
+    <Target Name="GLScene_GPU_DT">
+        <MSBuild Projects="GLScene_GPU_DT.dproj"/>
+    </Target>
+    <Target Name="GLScene_GPU_DT:Clean">
+        <MSBuild Projects="GLScene_GPU_DT.dproj" Targets="Clean"/>
+    </Target>
+    <Target Name="GLScene_GPU_DT:Make">
+        <MSBuild Projects="GLScene_GPU_DT.dproj" Targets="Make"/>
+    </Target>
     <Target Name="Build">
     <Target Name="Build">
-        <CallTarget Targets="GLScene_RT;GLScene_DT;GLScene_Sounds_RT;GLScene_Sounds_DT;GLScene_Physics_RT;GLScene_Physics_DT;GLScene_GPU_RT;GLScene_GPU_DT;GLScene_Cg_RT;GLScene_Cg_DT"/>
+        <CallTarget Targets="GLScene_RT;GLScene_DT;GLScene_Sounds_RT;GLScene_Sounds_DT;GLScene_Physics_RT;GLScene_Physics_DT;GLScene_Cg_RT;GLScene_Cg_DT;GLScene_GPU_RT;GLScene_GPU_DT"/>
     </Target>
     </Target>
     <Target Name="Clean">
     <Target Name="Clean">
-        <CallTarget Targets="GLScene_RT:Clean;GLScene_DT:Clean;GLScene_Sounds_RT:Clean;GLScene_Sounds_DT:Clean;GLScene_Physics_RT:Clean;GLScene_Physics_DT:Clean;GLScene_GPU_RT:Clean;GLScene_GPU_DT:Clean;GLScene_Cg_RT:Clean;GLScene_Cg_DT:Clean"/>
+        <CallTarget Targets="GLScene_RT:Clean;GLScene_DT:Clean;GLScene_Sounds_RT:Clean;GLScene_Sounds_DT:Clean;GLScene_Physics_RT:Clean;GLScene_Physics_DT:Clean;GLScene_Cg_RT:Clean;GLScene_Cg_DT:Clean;GLScene_GPU_RT:Clean;GLScene_GPU_DT:Clean"/>
     </Target>
     </Target>
     <Target Name="Make">
     <Target Name="Make">
-        <CallTarget Targets="GLScene_RT:Make;GLScene_DT:Make;GLScene_Sounds_RT:Make;GLScene_Sounds_DT:Make;GLScene_Physics_RT:Make;GLScene_Physics_DT:Make;GLScene_GPU_RT:Make;GLScene_GPU_DT:Make;GLScene_Cg_RT:Make;GLScene_Cg_DT:Make"/>
+        <CallTarget Targets="GLScene_RT:Make;GLScene_DT:Make;GLScene_Sounds_RT:Make;GLScene_Sounds_DT:Make;GLScene_Physics_RT:Make;GLScene_Physics_DT:Make;GLScene_Cg_RT:Make;GLScene_Cg_DT:Make;GLScene_GPU_RT:Make;GLScene_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>

+ 4 - 18
Packages/GLScene_Cg_DT.dproj

@@ -28,12 +28,6 @@
         <CfgParent>Base</CfgParent>
         <CfgParent>Base</CfgParent>
         <Base>true</Base>
         <Base>true</Base>
     </PropertyGroup>
     </PropertyGroup>
-    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
-        <Cfg_1_Win32>true</Cfg_1_Win32>
-        <CfgParent>Cfg_1</CfgParent>
-        <Cfg_1>true</Cfg_1>
-        <Base>true</Base>
-    </PropertyGroup>
     <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
     <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
         <Cfg_1_Win64>true</Cfg_1_Win64>
         <Cfg_1_Win64>true</Cfg_1_Win64>
         <CfgParent>Cfg_1</CfgParent>
         <CfgParent>Cfg_1</CfgParent>
@@ -94,12 +88,6 @@
         <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
         <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
         <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
         <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
     </PropertyGroup>
     </PropertyGroup>
-    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-    </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
@@ -109,10 +97,6 @@
         <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
         <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
@@ -155,6 +139,8 @@
                     <Source Name="MainSource">GLScene_Cg_DT.dpk</Source>
                     <Source Name="MainSource">GLScene_Cg_DT.dpk</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
@@ -179,12 +165,12 @@
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>
-                <DeployFile LocalName="$(BDS)\Redist\iossimulator\libPCRE.dylib" Class="DependencyModule">
+                <DeployFile LocalName="$(BDS)\Redist\iossimulator\libpcre.dylib" Class="DependencyModule">
                     <Platform Name="iOSSimulator">
                     <Platform Name="iOSSimulator">
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>
                 </DeployFile>
                 </DeployFile>
-                <DeployFile LocalName="$(BDS)\Redist\iossimulator\libpcre.dylib" Class="DependencyModule">
+                <DeployFile LocalName="$(BDS)\Redist\iossimulator\libPCRE.dylib" Class="DependencyModule">
                     <Platform Name="iOSSimulator">
                     <Platform Name="iOSSimulator">
                         <Overwrite>true</Overwrite>
                         <Overwrite>true</Overwrite>
                     </Platform>
                     </Platform>

+ 9 - 16
Packages/GLScene_Cg_RT.dproj

@@ -8,7 +8,7 @@
         <AppType>Package</AppType>
         <AppType>Package</AppType>
         <FrameworkType>VCL</FrameworkType>
         <FrameworkType>VCL</FrameworkType>
         <ProjectVersion>19.4</ProjectVersion>
         <ProjectVersion>19.4</ProjectVersion>
-        <Platform Condition="'$(Platform)'==''">Win32</Platform>
+        <Platform Condition="'$(Platform)'==''">Win64</Platform>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
     <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
         <Base>true</Base>
         <Base>true</Base>
@@ -98,16 +98,12 @@
     <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
         <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
+        <DCC_BpiOutput>..\lib\$(Platform)</DCC_BpiOutput>
+        <DCC_HppOutput>..\include\$(Platform)</DCC_HppOutput>
+        <DCC_ObjOutput>..\lib\$(Platform)</DCC_ObjOutput>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2)'!=''">
     <PropertyGroup Condition="'$(Cfg_2)'!=''">
         <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
         <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
@@ -115,19 +111,14 @@
         <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
         <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
+        <DCC_BpiOutput>..\lib\$(Platform)</DCC_BpiOutput>
+        <DCC_HppOutput>..\include\$(Platform)</DCC_HppOutput>
+        <DCC_ObjOutput>..\lib\$(Platform)</DCC_ObjOutput>
     </PropertyGroup>
     </PropertyGroup>
     <ItemGroup>
     <ItemGroup>
         <DelphiCompile Include="$(MainSource)">
         <DelphiCompile Include="$(MainSource)">
@@ -163,6 +154,8 @@
                     <Source Name="MainSource">GLScene_Cg_RT.dpk</Source>
                     <Source Name="MainSource">GLScene_Cg_RT.dpk</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>

+ 5 - 5
external/GPU/Packages/GLScene_GPU_DT.dpk → Packages/GLScene_GPU_DT.dpk

@@ -10,21 +10,21 @@ package GLScene_GPU_DT;
 {$EXTENDEDSYNTAX ON}
 {$EXTENDEDSYNTAX ON}
 {$IMPORTEDDATA ON}
 {$IMPORTEDDATA ON}
 {$IOCHECKS ON}
 {$IOCHECKS ON}
-{$LOCALSYMBOLS OFF}
+{$LOCALSYMBOLS ON}
 {$LONGSTRINGS ON}
 {$LONGSTRINGS ON}
 {$OPENSTRINGS ON}
 {$OPENSTRINGS ON}
-{$OPTIMIZATION ON}
+{$OPTIMIZATION OFF}
 {$OVERFLOWCHECKS OFF}
 {$OVERFLOWCHECKS OFF}
 {$RANGECHECKS OFF}
 {$RANGECHECKS OFF}
-{$REFERENCEINFO OFF}
+{$REFERENCEINFO ON}
 {$SAFEDIVIDE OFF}
 {$SAFEDIVIDE OFF}
-{$STACKFRAMES OFF}
+{$STACKFRAMES ON}
 {$TYPEDADDRESS OFF}
 {$TYPEDADDRESS OFF}
 {$VARSTRINGCHECKS ON}
 {$VARSTRINGCHECKS ON}
 {$WRITEABLECONST OFF}
 {$WRITEABLECONST OFF}
 {$MINENUMSIZE 1}
 {$MINENUMSIZE 1}
 {$IMAGEBASE $400000}
 {$IMAGEBASE $400000}
-{$DEFINE RELEASE}
+{$DEFINE DEBUG}
 {$ENDIF IMPLICITBUILDING}
 {$ENDIF IMPLICITBUILDING}
 {$DESCRIPTION 'GLScene GPU Computing'}
 {$DESCRIPTION 'GLScene GPU Computing'}
 {$DESIGNONLY}
 {$DESIGNONLY}

+ 3 - 17
external/GPU/Packages/GLScene_GPU_DT.dproj → Packages/GLScene_GPU_DT.dproj

@@ -28,12 +28,6 @@
         <CfgParent>Base</CfgParent>
         <CfgParent>Base</CfgParent>
         <Base>true</Base>
         <Base>true</Base>
     </PropertyGroup>
     </PropertyGroup>
-    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
-        <Cfg_1_Win32>true</Cfg_1_Win32>
-        <CfgParent>Cfg_1</CfgParent>
-        <Cfg_1>true</Cfg_1>
-        <Base>true</Base>
-    </PropertyGroup>
     <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
     <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
         <Cfg_1_Win64>true</Cfg_1_Win64>
         <Cfg_1_Win64>true</Cfg_1_Win64>
         <CfgParent>Cfg_1</CfgParent>
         <CfgParent>Cfg_1</CfgParent>
@@ -94,12 +88,6 @@
         <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
         <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
         <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
         <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
     </PropertyGroup>
     </PropertyGroup>
-    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
-    </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
@@ -109,11 +97,7 @@
         <DCC_Optimize>false</DCC_Optimize>
         <DCC_Optimize>false</DCC_Optimize>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
@@ -134,7 +118,7 @@
         <DCCReference Include="..\Source\CUDA.PropEditors.pas"/>
         <DCCReference Include="..\Source\CUDA.PropEditors.pas"/>
         <DCCReference Include="..\Source\CUDA.Register.pas"/>
         <DCCReference Include="..\Source\CUDA.Register.pas"/>
         <DCCReference Include="..\Source\CUDA.EditorFm.pas"/>
         <DCCReference Include="..\Source\CUDA.EditorFm.pas"/>
-        <RcCompile Include="..\..\..\Resources\GLSceneGPU.rc">
+        <RcCompile Include="..\Resources\GLSceneGPU.rc">
             <Form>GLSceneGPU.res</Form>
             <Form>GLSceneGPU.res</Form>
         </RcCompile>
         </RcCompile>
         <BuildConfiguration Include="Base">
         <BuildConfiguration Include="Base">
@@ -158,6 +142,8 @@
                     <Source Name="MainSource">GLScene_GPU_DT.dpk</Source>
                     <Source Name="MainSource">GLScene_GPU_DT.dpk</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>

+ 0 - 0
external/GPU/Packages/GLScene_GPU_RT.dpk → Packages/GLScene_GPU_RT.dpk


+ 2 - 12
external/GPU/Packages/GLScene_GPU_RT.dproj → Packages/GLScene_GPU_RT.dproj

@@ -100,10 +100,6 @@
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
@@ -114,19 +110,11 @@
         <DCC_Optimize>false</DCC_Optimize>
         <DCC_Optimize>false</DCC_Optimize>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
         <DCC_CBuilderOutput>All</DCC_CBuilderOutput>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
     </PropertyGroup>
     </PropertyGroup>
     <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
     <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
         <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
-        <DCC_BpiOutput>..\..\..\lib\$(Platform)</DCC_BpiOutput>
-        <DCC_HppOutput>..\..\..\include\$(Platform)</DCC_HppOutput>
-        <DCC_ObjOutput>..\..\..\lib\$(Platform)</DCC_ObjOutput>
-        <DCC_DcuOutput>..\..\..\lib\$(Platform)</DCC_DcuOutput>
     </PropertyGroup>
     </PropertyGroup>
     <ItemGroup>
     <ItemGroup>
         <DelphiCompile Include="$(MainSource)">
         <DelphiCompile Include="$(MainSource)">
@@ -174,6 +162,8 @@
                     <Source Name="MainSource">GLScene_GPU_RT.dpk</Source>
                     <Source Name="MainSource">GLScene_GPU_RT.dpk</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>

+ 2 - 0
Packages/GLScene_Physics_RT.dproj

@@ -185,6 +185,8 @@
                     <Source Name="MainSource">GLScene_Physics_RT.dpk</Source>
                     <Source Name="MainSource">GLScene_Physics_RT.dpk</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
                     <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>

+ 8 - 4
Packages/GLScene_RT.dproj

@@ -397,10 +397,14 @@
                     <Source Name="MainSource">GLScene_RT.dpk</Source>
                     <Source Name="MainSource">GLScene_RT.dpk</Source>
                 </Source>
                 </Source>
                 <Excluded_Packages>
                 <Excluded_Packages>
-                    <Excluded_Packages Name="$(BDSBIN)\bcboffice2k260.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
-                    <Excluded_Packages Name="$(BDSBIN)\bcbofficexp260.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
-                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k260.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
-                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp260.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\VirtualTreesD22.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GLScene_Newton_DT.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBComps.bpl">Geoblock - Components</Excluded_Packages>
+                    <Excluded_Packages Name="C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl">File C:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\GBE3D.bpl not found</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\bcboffice2k280.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\bcbofficexp280.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k280.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
+                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp280.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
                 </Excluded_Packages>
                 </Excluded_Packages>
             </Delphi.Personality>
             </Delphi.Personality>
             <Platforms>
             <Platforms>

部分文件因文件數量過多而無法顯示