Class: FScene
A scene which contains the components, the Three.js scene and the Rapier world.
Example
import { FCuboid, FGameCamera, FScene } from '@fibbojs/3d'
(async () => {
// Initialize the scene
const scene = new FScene()
scene.init()
await scene.initPhysics()
// Create a ground
const ground = new FCuboid(scene)
ground.transform.setScale(15, 0.1, 15)
ground.transform.setPosition(0, -0.1, 0)
ground.initCollider()
ground.setColor(0x1F1F1F)
// Create a cube
const cube = new FCuboid(scene)
cube.initRigidBody()
// Attach a camera to the cube
scene.camera = new FGameCamera(scene, { target: cube })
})()
Extends
FScene
Constructors
new FScene()
new FScene(
options
?):FScene
Parameters
• options?: FSceneOptions
Returns
Overrides
FSceneCore.constructor
Defined in
Methods
addCollider()
addCollider(
collider
):void
Parameters
• collider: FCollider
Returns
void
Defined in
addComponent()
addComponent(
component
):void
Add a component to the scene.
Parameters
• component: FComponent
Returns
void
Overrides
FSceneCore.addComponent
Defined in
addHandle()
addHandle(
handle
,component
):void
Parameters
• handle: number
• component: FComponent
Returns
void
Defined in
addLight()
addLight(
light
):void
Add a light to the scene.
Parameters
• light: FLight
Returns
void
Overrides
FSceneCore.addLight
Defined in
addRigidBody()
addRigidBody(
rigidBody
):void
Parameters
• rigidBody: FRigidBody
Returns
void
Defined in
frame()
frame(
delta
):void
Compute a frame with the given delta time. By default, it is called every frame, but this behavior can be changed by giving the autoLoop
option as false
when creating the scene.
Parameters
• delta: number
The time in seconds since the last frame.
Returns
void
Inherited from
FSceneCore.frame
Defined in
core/dist/index.d.ts:149
handleCollision()
handleCollision(
handle1
,handle2
,start
):void
Handle a collision event between two colliders.
Parameters
• handle1: number
The handle of the first collider
• handle2: number
The handle of the second collider
• start: boolean
If the collision has started or ended
Returns
void
Defined in
init()
init():
void
Returns
void
Defined in
initPhysics()
initPhysics():
Promise
<void
>
Returns
Promise
<void
>
Defined in
onComponentAdded()
onComponentAdded(
callback
):void
Add a callback to be called when a component is added to the scene.
Parameters
• callback
Returns
void
Inherited from
FSceneCore.onComponentAdded
Defined in
core/dist/index.d.ts:157
onComponentRemoved()
onComponentRemoved(
callback
):void
Add a callback to be called when a component is removed from the scene.
Parameters
• callback
Returns
void
Inherited from
FSceneCore.onComponentRemoved
Defined in
core/dist/index.d.ts:161
onFrame()
onFrame(
callback
):void
Add a callback to be called when a frame is rendered.
Parameters
• callback
Returns
void
Inherited from
FSceneCore.onFrame
Defined in
core/dist/index.d.ts:153
onLightAdded()
onLightAdded(
callback
):void
Add a callback to be called when a light is added to the scene.
Parameters
• callback
Returns
void
Inherited from
FSceneCore.onLightAdded
Defined in
core/dist/index.d.ts:170
onLightRemoved()
onLightRemoved(
callback
):void
Add a callback to be called when a light is removed from the scene.
Parameters
• callback
Returns
void
Inherited from
FSceneCore.onLightRemoved
Defined in
core/dist/index.d.ts:174
onReady()
onReady(
callback
):void
Add a callback to be called when the scene is ready. The scene is ready when the init
method has finished.
Parameters
• callback
Returns
void
Inherited from
FSceneCore.onReady
Defined in
core/dist/index.d.ts:166
removeCollider()
removeCollider(
collider
):void
Parameters
• collider: FCollider
Returns
void
Defined in
removeComponent()
removeComponent(
component
):void
Remove a component from the scene.
Parameters
• component: FComponent
Returns
void
Overrides
FSceneCore.removeComponent
Defined in
removeHandle()
removeHandle(
handle
):void
Parameters
• handle: number
Returns
void
Defined in
removeLight()
removeLight(
light
):void
Remove a light from the scene.
Parameters
• light: FLight
Returns
void
Overrides
FSceneCore.removeLight
Defined in
removeRigidBody()
removeRigidBody(
rigidBody
):void
Parameters
• rigidBody: FRigidBody
Returns
void
Defined in
Properties
THREE
THREE:
__module
Defined in
__CALLBACKS_ON_COMPONENT_ADDED__
__CALLBACKS_ON_COMPONENT_ADDED__: (
component
) =>void
[]
Callbacks for when a component is added to the scene.
Inherited from
FSceneCore.__CALLBACKS_ON_COMPONENT_ADDED__
Defined in
core/dist/index.d.ts:110
__CALLBACKS_ON_COMPONENT_REMOVED__
__CALLBACKS_ON_COMPONENT_REMOVED__: (
component
) =>void
[]
Callbacks for when a component is remove from the scene.
Inherited from
FSceneCore.__CALLBACKS_ON_COMPONENT_REMOVED__
Defined in
core/dist/index.d.ts:114
__CALLBACKS_ON_FRAME__
__CALLBACKS_ON_FRAME__: (
delta
) =>void
[]
Callbacks for when a frame is rendered.
Inherited from
FSceneCore.__CALLBACKS_ON_FRAME__
Defined in
core/dist/index.d.ts:106
__CALLBACKS_ON_LIGHT_ADDED__
__CALLBACKS_ON_LIGHT_ADDED__: (
light
) =>void
[]
Callbacks for when a light is added to the scene.
Inherited from
FSceneCore.__CALLBACKS_ON_LIGHT_ADDED__
Defined in
core/dist/index.d.ts:122
__CALLBACKS_ON_LIGHT_REMOVED__
__CALLBACKS_ON_LIGHT_REMOVED__: (
light
) =>void
[]
Callbacks for when a light is added to the scene.
Inherited from
FSceneCore.__CALLBACKS_ON_LIGHT_REMOVED__
Defined in
core/dist/index.d.ts:126
__CALLBACKS_ON_READY__
__CALLBACKS_ON_READY__: () =>
void
[]
Callbacks for when the scene is ready.
Inherited from
FSceneCore.__CALLBACKS_ON_READY__
Defined in
core/dist/index.d.ts:118
__DOM_NODE__
__DOM_NODE__:
HTMLElement
DOM element that the renderer will be appended to
Inherited from
FSceneCore.__DOM_NODE__
Defined in
core/dist/index.d.ts:83
__ENABLE_SHADOWS__
__ENABLE_SHADOWS__:
boolean
Defined in
__IS_2D__
__IS_2D__:
boolean
Inherited from
FSceneCore.__IS_2D__
Defined in
core/dist/index.d.ts:79
__IS_3D__
__IS_3D__:
boolean
=true
Internal flags
Overrides
FSceneCore.__IS_3D__
Defined in
__RAPIER_TO_COMPONENT__
__RAPIER_TO_COMPONENT__:
Map
<number
,FComponent
>
Overrides
FSceneCore.__RAPIER_TO_COMPONENT__
Defined in
camera
camera:
FCamera
Defined in
colliders
colliders:
FCollider
[]
Defined in
components
components:
FComponent
[]
The components in the scene.
Overrides
FSceneCore.components
Defined in
eventQueue
eventQueue:
EventQueue
Overrides
FSceneCore.eventQueue
Defined in
gravity
gravity:
FVector3
Overrides
FSceneCore.gravity
Defined in
lights
lights:
FLight
[]
The lights in the scene.
Overrides
FSceneCore.lights
Defined in
renderer
renderer:
WebGLRenderer
Defined in
rigidBodies
rigidBodies:
FRigidBody
[]
Defined in
scene
scene:
Scene
Defined in
world
world:
World
Overrides
FSceneCore.world