Skip to content

gg-world overview


Table of contents


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: {}
}