Documentation / scene / FBMWaveGenerator
Class: FBMWaveGenerator
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:14
FBM wave generator.
Extends
Disposable
Implements
Constructors
Constructor
new FBMWaveGenerator():
FBMWaveGenerator
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:25
Creates a new Gerstner wave generator.
Returns
FBMWaveGenerator
Overrides
Disposable.constructor
Accessors
disposed
Get Signature
get disposed():
boolean
Defined in: libs/base/dist/index.d.ts:6065
Returns
boolean
Implementation of
Inherited from
Disposable.disposed
numOctaves
Get Signature
get numOctaves():
number
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:47
Number of octaves
Returns
number
Set Signature
set numOctaves(
val):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:50
Parameters
val
number
Returns
void
amplitude
Get Signature
get amplitude():
number
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:57
Wave amplitude
Returns
number
Set Signature
set amplitude(
val):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:60
Parameters
val
number
Returns
void
frequency
Get Signature
get frequency():
number
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:67
Wave frequency
Returns
number
Set Signature
set frequency(
val):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:70
Parameters
val
number
Returns
void
wind
Get Signature
get wind():
Immutable<Vector2>
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:77
Wind velocity
Returns
Immutable<Vector2>
Set Signature
set wind(
val):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:80
Parameters
val
Immutable<Vector2>
Returns
void
Methods
on()
on<
K>(type,listener,context?):void
Defined in: libs/base/dist/index.d.ts:594
IEventTarget.on
Type Parameters
K
K extends "dispose"
Parameters
type
K
listener
EventListener<{ dispose: []; }, K>
context?
unknown
Returns
void
Implementation of
Inherited from
Disposable.on
once()
once<
K>(type,listener,context?):void
Defined in: libs/base/dist/index.d.ts:598
IEventTarget.once
Type Parameters
K
K extends "dispose"
Parameters
type
K
listener
EventListener<{ dispose: []; }, K>
context?
unknown
Returns
void
Implementation of
Inherited from
Disposable.once
off()
off<
K>(type,listener?,context?):void
Defined in: libs/base/dist/index.d.ts:602
IEventTarget.off
Type Parameters
K
K extends "dispose"
Parameters
type
K
listener?
EventListener<{ dispose: []; }>
context?
unknown
Returns
void
Implementation of
Inherited from
Disposable.off
dispatchEvent()
dispatchEvent<
K>(type, ...args):void
Defined in: libs/base/dist/index.d.ts:606
IEventTarget.dispatchEvent
Type Parameters
K
K extends "dispose"
Parameters
type
K
args
...object[K]
Returns
void
Implementation of
Inherited from
Disposable.dispatchEvent
dispose()
dispose():
void
Defined in: libs/base/dist/index.d.ts:6066
Dispose the wave generator.
Returns
void
Implementation of
Inherited from
Disposable.dispose
onDispose()
protectedonDispose():void
Defined in: libs/base/dist/index.d.ts:6067
Returns
void
Inherited from
Disposable.onDispose
clone()
clone():
FBMWaveGenerator
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:35
Create a new instance from this
Returns
FBMWaveGenerator
The created instance
Implementation of
update()
update():
void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:291
Update the wave generator.
Returns
void
Implementation of
needUpdate()
needUpdate():
boolean
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:293
Wether this wave generator's update() method should be called this frame
Returns
boolean
true if this wave generator's update() method should be called this frame
Implementation of
calcClipmapTileAABB()
calcClipmapTileAABB(
minX,maxX,minZ,maxZ,y,outAABB):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:297
Parameters
minX
number
Minimum X position of the clipmap tile.
maxX
number
Maximum X position of the clipmap tile.
minZ
number
Minimum Z position of the clipmap tile.
maxZ
number
Maximum Z position of the clipmap tile.
y
number
Y position of the water surface.
outAABB
AABB
Output AABB.
Returns
void
Implementation of
WaveGenerator.calcClipmapTileAABB
calcFragmentNormal()
calcFragmentNormal(
scope,xz):PBShaderExp
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:303
Parameters
scope
PBInsideFunctionScope
Global scope of the shader program.
xz
PBShaderExp
XZ position.
Returns
PBShaderExp
Implementation of
WaveGenerator.calcFragmentNormal
calcFragmentNormalAndFoam()
calcFragmentNormalAndFoam(
scope,xz):PBShaderExp
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:323
Calculate fragment normal and foam.
Parameters
scope
PBInsideFunctionScope
Global scope of the shader program.
xz
PBShaderExp
XZ position.
Returns
PBShaderExp
Implementation of
WaveGenerator.calcFragmentNormalAndFoam
setupUniforms()
setupUniforms(
scope,uniformGroup):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:327
Setup uniforms for the shader program.
Parameters
scope
PBGlobalScope
Global scope of the shader program.
uniformGroup
number
Bind group index for uniform values
Returns
void
Implementation of
calcVertexPositionAndNormal()
calcVertexPositionAndNormal(
scope,inPos,outPos,outNormal):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:376
Calculate vertex position and normal.
Parameters
scope
PBInsideFunctionScope
Global scope of the shader program.
inPos
PBShaderExp
Input position.
outPos
PBShaderExp
Output position.
outNormal
PBShaderExp
Output normal.
Returns
void
Implementation of
WaveGenerator.calcVertexPositionAndNormal
applyWaterBindGroup()
applyWaterBindGroup(
bindGroup):void
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:385
Apply water bind group.
Parameters
bindGroup
BindGroup
Bind group to apply.
Returns
void
Implementation of
WaveGenerator.applyWaterBindGroup
isOk()
isOk():
boolean
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:394
Check if the wave generator is ok.
Returns
boolean
Implementation of
getHash()
getHash():
string
Defined in: libs/scene/src/render/fbm_wavegenerator.ts:398
Get the shader hash of the wave generator.
Returns
string