Skip to content

editorGlobalsPhysicsAddOn

Class: PhysicsAddOn

This is the base class for physics add ons. Methods do nothing by default and therefore aren't abstract.

Hierarchy

  • PhysicsAddOn

CannonAddOn

AccelerometerAddOn

CollisionSoundAddOn

Index

Constructors

Properties

Methods

Constructors

constructor

+ new PhysicsAddOn(modelSubnode: Object3D, renderContext: RenderContext): PhysicsAddOn

Defined in src/physics/addOns/PhysicsAddOn.ts:15

Parameters:

Name Type
modelSubnode Object3D
renderContext RenderContext

Returns: PhysicsAddOn

Properties

Protected compositeModel

compositeModel: CompositeModel

Defined in src/physics/addOns/PhysicsAddOn.ts:15


Protected modelSubnode

modelSubnode: Object3D

Defined in src/physics/addOns/PhysicsAddOn.ts:11


Protected physicsContext

physicsContext: PhysicsContext

Defined in src/physics/addOns/PhysicsAddOn.ts:14


Protected renderContext

renderContext: RenderContext

Defined in src/physics/addOns/PhysicsAddOn.ts:12


Protected threeNode

threeNode: Object3D = null

Defined in src/physics/addOns/PhysicsAddOn.ts:13

Methods

destroy

destroy(): void

Defined in src/physics/addOns/PhysicsAddOn.ts:93

This is called after the AddOn was removed. Perform all cleanup here.

Returns: void


Abstract getName

getName(): string

Defined in src/physics/addOns/PhysicsAddOn.ts:26

Returns: string

Name of this AddOn


getPriority

getPriority(): number

Defined in src/physics/addOns/PhysicsAddOn.ts:32

enforce a certain rendering and physics-step order. AddOns with higher priority will be rendered & executed before AddOns with a lower priority

Returns: number


getThreeNode

getThreeNode(): Object3D

Defined in src/physics/addOns/PhysicsAddOn.ts:68

Returns: Object3D


initializeCompositeModel

initializeCompositeModel(compositeModel: CompositeModel): void

Defined in src/physics/addOns/PhysicsAddOn.ts:86

You should override this method to be notified when the compositeModel is set. This may be called multiple times during the lifecycle of an AddOn with different parameters.

Parameters:

Name Type Description
compositeModel CompositeModel the compositeModel, guaranteed to not be null or undefined

Returns: void


initializeThreeNode

initializeThreeNode(threeNode: Object3D): void

Defined in src/physics/addOns/PhysicsAddOn.ts:77

You should override this method to set up the scene. Create all the objects you need and add() them to threeNode.

Parameters:

Name Type Description
threeNode Object3D the parent node

Returns: void


render

render(): void

Defined in src/physics/addOns/PhysicsAddOn.ts:50

Update the view with the new values calculated in step.

Returns: void


requiresContinuousRendering

requiresContinuousRendering(): boolean

Defined in src/physics/addOns/PhysicsAddOn.ts:104

Returns: boolean


setCompositeModel

setCompositeModel(compositeModel: CompositeModel): void

Defined in src/physics/addOns/PhysicsAddOn.ts:63

Parameters:

Name Type
compositeModel CompositeModel

Returns: void


setPhysicsContext

setPhysicsContext(physicsContext: PhysicsContext): void

Defined in src/physics/addOns/PhysicsAddOn.ts:59

Parameters:

Name Type
physicsContext PhysicsContext

Returns: void


setThreeNode

setThreeNode(threeNode: Object3D): void

Defined in src/physics/addOns/PhysicsAddOn.ts:54

Parameters:

Name Type
threeNode Object3D

Returns: void


step

step(elapsedTime: number): void

Defined in src/physics/addOns/PhysicsAddOn.ts:43

Advance the simulation by elapsedTime. Hint: Do not update the view in this method, because this might be called multiple times per rendered frame.

Parameters:

Name Type Description
elapsedTime number the time delta in seconds

Returns: void


updateSiblings

updateSiblings(addOns: PhysicsAddOn[]): void

Defined in src/physics/addOns/PhysicsAddOn.ts:100

This is called when the physics addOns change to allow interaction between addOns.

Parameters:

Name Type
addOns PhysicsAddOn[]

Returns: void