gg-world overview
Table of contents
- utils
- GgWorld (class)
- init (method)
- start (method)
- pauseWorld (method)
- resumeWorld (method)
- createClock (method)
- dispose (method)
- addPrimitiveRigidBody (method)
- addEntity (method)
- removeEntity (method)
- onGgStaticInitialized (method)
- registerConsoleCommands (method)
- visualScene (property)
- physicsWorld (property)
- worldClock (property)
- keyboardInput (property)
- name (property)
- children (property)
- tickListeners (property)
- tickStarted$ (property)
- tickForwardTo$ (property)
- tickForwardedTo$ (property)
- paused$ (property)
- disposed$ (property)
- GgWorldSceneTypeDocPPatch (type alias)
- GgWorldSceneTypeDocVPatch (type alias)
- GgWorldSceneTypeRepo (type alias)
- GgWorldTypeDocPPatch (type alias)
- GgWorldTypeDocRepo (type alias)
- GgWorldTypeDocVPatch (type alias)
- PhysicsTypeDocRepo (type alias)
- VisualTypeDocRepo (type alias)
utils
GgWorld (class)
Signature
export declare class GgWorld<D, R, TypeDoc, SceneTypeDoc> {
protected constructor(args: {
visualScene?: SceneTypeDoc['visualScene']
physicsWorld?: SceneTypeDoc['physicsWorld']
})
}
init (method)
Signature
public async init()
start (method)
Signature
public start()
pauseWorld (method)
Signature
public pauseWorld()
resumeWorld (method)
Signature
public resumeWorld()
createClock (method)
Signature
public createClock(autoStart: boolean): PausableClock
dispose (method)
Signature
public dispose(): void
addPrimitiveRigidBody (method)
Signature
abstract addPrimitiveRigidBody(
descr: unknown, // type defined in subclasses
position?: D,
rotation?: R,
material?: unknown, // type defined in subclasses
): IPositionable<D, R> & IRenderableEntity<D, R, TypeDoc>;
addEntity (method)
Signature
public addEntity(entity: IEntity): void
removeEntity (method)
Signature
public removeEntity(entity: IEntity, dispose = false): void
onGgStaticInitialized (method)
Signature
private onGgStaticInitialized()
registerConsoleCommands (method)
Signature
protected registerConsoleCommands(ggstatic: {
registerConsoleCommand: (
world: GgWorld<any, any> | null,
command: string,
handler: (...args: string[]) => Promise<string>,
doc?: string,
) => void;
})
visualScene (property)
Signature
readonly visualScene: SceneTypeDoc["visualScene"]
physicsWorld (property)
Signature
readonly physicsWorld: SceneTypeDoc["physicsWorld"]
worldClock (property)
Signature
readonly worldClock: PausableClock
keyboardInput (property)
Signature
readonly keyboardInput: KeyboardInput
name (property)
Signature
name: string
children (property)
Signature
readonly children: IEntity<any, any, GgWorldTypeDocRepo<any, any>>[]
tickListeners (property)
Signature
readonly tickListeners: IEntity<any, any, GgWorldTypeDocRepo<any, any>>[]
tickStarted$ (property)
Signature
readonly tickStarted$: any
tickForwardTo$ (property)
Signature
readonly tickForwardTo$: any
tickForwardedTo$ (property)
Signature
readonly tickForwardedTo$: any
paused$ (property)
Signature
readonly paused$: any
disposed$ (property)
Signature
readonly disposed$: any
GgWorldSceneTypeDocPPatch (type alias)
Signature
export type GgWorldSceneTypeDocPPatch<
D,
R,
PTypeDoc extends PhysicsTypeDocRepo<D, R>,
PW extends IPhysicsWorldComponent<D, R, PTypeDoc> | null
> = Omit<GgWorldSceneTypeRepo<D, R>, 'physicsWorld'> & { physicsWorld: PW }
GgWorldSceneTypeDocVPatch (type alias)
Signature
export type GgWorldSceneTypeDocVPatch<
D,
R,
VTypeDoc extends VisualTypeDocRepo2D,
VS extends IVisualScene2dComponent<VTypeDoc> | null
> = Omit<GgWorldSceneTypeRepo<D, R>, 'visualScene'> & { visualScene: VS }
GgWorldSceneTypeRepo (type alias)
Signature
export type GgWorldSceneTypeRepo<D, R, TypeDoc extends GgWorldTypeDocRepo<D, R> = GgWorldTypeDocRepo<D, R>> = {
visualScene: IVisualSceneComponent<D, R, TypeDoc['vTypeDoc']> | null
physicsWorld: IPhysicsWorldComponent<D, R, TypeDoc['pTypeDoc']> | null
}
GgWorldTypeDocPPatch (type alias)
Signature
export type GgWorldTypeDocPPatch<D, R, PTypeDoc extends PhysicsTypeDocRepo<D, R>> = Omit<
GgWorldTypeDocRepo<D, R>,
'pTypeDoc'
> & {
pTypeDoc: PTypeDoc
}
GgWorldTypeDocRepo (type alias)
Signature
export type GgWorldTypeDocRepo<D, R> = {
vTypeDoc: VisualTypeDocRepo<D, R>
pTypeDoc: PhysicsTypeDocRepo<D, R>
}
GgWorldTypeDocVPatch (type alias)
Signature
export type GgWorldTypeDocVPatch<D, R, VTypeDoc extends VisualTypeDocRepo<D, R>> = Omit<
GgWorldTypeDocRepo<D, R>,
'vTypeDoc'
> & {
vTypeDoc: VTypeDoc
}
PhysicsTypeDocRepo (type alias)
Signature
export type PhysicsTypeDocRepo<D, R> = {
factory: unknown
rigidBody: IRigidBodyComponent<D, R>
trigger: ITriggerComponent<D, R>
}
VisualTypeDocRepo (type alias)
Signature
export type VisualTypeDocRepo<D, R> = {
factory: unknown
displayObject: IDisplayObjectComponent<D, R>
renderer: IRendererComponent<D, R>
rendererExtraOpts: {}
}