Gorilla.Material.Ocean
Unit Gorilla.Material.Ocean.pasClasses
- TGorillaOceanMaterial = class ( TCustomMaterial )
- TGorillaOceanMaterialSource = class ( TMaterialSource )
TGorillaOceanMaterial
Ocean material - fully-procedural sea surface computing without textures. Providing configuration possibilities for editing color, wave behaviour and light effects.
Ancestors
Members
Fields
- private FSource :
TGorillaOceanMaterialSource
- private FTimerService :
IFMXTimerService
- private FStartTime :
Double
- private FRenderTime :
Double
- private FLastTime :
Double
- private FSeaHeight :
Single
- private FSeaChoppy :
Single
- private FSeaSpeed :
Single
- private FSeaFreq :
Single
- private FSeaBase :
TAlphaColorF
- private FSeaColor :
TAlphaColorF
- private FScale :
TPointF
- private FReflectionPower :
Single
- private FRefractionPower :
Single
- private FReflection :
TTexture
- private FRefraction :
TTexture
Methods
- public constructor Create ( const ASource : TGorillaOceanMaterialSource ) ;
- public destructor Destroy ( ) ;
- protected function GetSeaBase ( ) : TAlphaColorF ;
- protected procedure SetSeaBase ( AValue : TAlphaColorF ) ;
- protected function GetSeaColor ( ) : TAlphaColorF ;
- protected procedure SetSeaColor ( AValue : TAlphaColorF ) ;
- protected procedure SetReflection ( const Value : TTexture ) ;
- protected procedure SetRefraction ( const Value : TTexture ) ;
- protected procedure DoApply ( const Context : TContext3D ) ; override;
- protected procedure DoInitialize ( ) ; override;
Properties
- published SeaHeight : Single
- published SeaChoppy : Single
Defines how choppy the sea is displayed. Low value means less movement.
read FSeaChoppy
write FSeaChoppy - published SeaSpeed : Single
- published SeaFreq : Single
- published SeaBase : TAlphaColorF
- published SeaColor : TAlphaColorF
Defines an additional specular color which is used for color computation.
read GetSeaColor
write SetSeaColor - published Scale : TPointF
- published Reflection : TTexture
- published ReflectionPower : Single
- published Refraction : TTexture
- published RefractionPower : Single
TGorillaOceanMaterialSource
Material source with "Seascape" shader by Alexander Alekseev. This material renders an ocean with waves.
Remarks
License Creative Commons Attribution-NonCommercial- ShareAlike 3.0 Unported License. Contact: tdmaav@gmail.com Website: https://www.shadertoy.com/view/Ms2SD1Ancestors
Members
Fields
- protected FReflectionPass :
TGorillaRenderPassController
- protected FRefractionPass :
TGorillaRenderPassController
Methods
- public constructor Create ( AOwner : TComponent ) ;
- public destructor Destroy ( ) ;
- protected function GetSeaBase ( ) : TAlphaColorF ;
- protected function GetSeaChoppy ( ) : Single ;
- protected function GetSeaColor ( ) : TAlphaColorF ;
- protected function GetSeaFreq ( ) : Single ;
- protected function GetSeaHeight ( ) : Single ;
- protected function GetSeaSpeed ( ) : Single ;
- protected function GetScale ( ) : TPointF ;
- protected function GetReflectionPower ( ) : Single ;
- protected function GetRefractionPower ( ) : Single ;
- protected procedure SetSeaBase ( const Value : TAlphaColorF ) ;
- protected procedure SetSeaChoppy ( const Value : Single ) ;
- protected procedure SetSeaColor ( const Value : TAlphaColorF ) ;
- protected procedure SetSeaFreq ( const Value : Single ) ;
- protected procedure SetSeaHeight ( const Value : Single ) ;
- protected procedure SetSeaSpeed ( const Value : Single ) ;
- protected procedure SetScale ( const Value : TPointF ) ;
- protected procedure SetReflectionPower ( const Value : Single ) ;
- protected procedure SetRefractionPower ( const Value : Single ) ;
- protected procedure SetReflectionPass ( const Value : TGorillaRenderPassController ) ;
- protected procedure SetRefractionPass ( const Value : TGorillaRenderPassController ) ;
- protected function CreateMaterial ( ) : TMaterial ; override;
- protected procedure DoPassesChanged ( Sender : TObject ) ;
Properties
- published SeaHeight : Single
- published SeaChoppy : Single
Defines how choppy the sea is displayed. Low value means less movement.
read GetSeaChoppy
write SetSeaChoppy - published SeaSpeed : Single
- published SeaFreq : Single
Defines the wave frequency. This has influence on distance between each wave.
read GetSeaFreq
write SetSeaFreq - published SeaBase : TAlphaColorF
- published SeaColor : TAlphaColorF
Defines an additional specular color which is used for color computation.
read GetSeaColor
write SetSeaColor - published Scale : TPointF
- published ReflectionPass : TGorillaRenderPassController
ReflectionPass is experimental! May produce shattered result.
read FReflectionPass
write SetReflectionPass - published ReflectionPower : Single
ReflectionPass is experimental! May produce shattered result.
read GetReflectionPower
write SetReflectionPower - published RefractionPass : TGorillaRenderPassController
RefractionPass is experimental! May produce shattered result.
read FRefractionPass
write SetRefractionPass - published RefractionPower : Single
RefractionPass is experimental! May produce shattered result.
read GetRefractionPower
write SetRefractionPower