Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Game

包含游戏主体信息并负责驱动游戏的游戏对象。

Hierarchy

  • any
    • Game

Index

Type aliases

Static OnStart

OnStart: () => void

Type declaration

    • (): void
    • Returns void

Properties

_configLoaded

_configLoaded: boolean = false

Private _engineInited

_engineInited: boolean = false

Private _frameTime

_frameTime: number

Private _gfxDevice

_gfxDevice: Device | null = null

Private _inited

_inited: boolean = false

Private _intervalId

_intervalId: number | null = null

_isCloning

_isCloning: boolean = false

Private _lastTime

_lastTime: number

_paused

_paused: boolean = true

persistRootNodes

persistRootNodes: {}

Type declaration

Private _rendererInitialized

_rendererInitialized: boolean = false

canvas

canvas: HTMLCanvasElement | null = null

游戏的画布。

collisionMatrix

collisionMatrix: never[] = []

config

config: NormalizedGameConfig = {} as NormalizedGameConfig

当前的游戏配置 注意:请不要直接修改这个对象,它不会有任何效果。

container

container: HTMLDivElement | null = null

游戏画布的容器。

eventTargetOn

eventTargetOn: any = super.on

eventTargetOnce

eventTargetOnce: any = super.once

frame

frame: Record<string, unknown> | null = null

游戏画布的外框,container 的父容器。

groupList

groupList: any[] = []

onStart

onStart: OnStart | null = null

当引擎完成启动后的回调函数。

method

onStart

renderType

renderType: number = -1

游戏的渲染器类型。

Static EVENT_ENGINE_INITED

EVENT_ENGINE_INITED: string = "engine_inited"

在引擎初始化之后触发的事件,此时您能够使用引擎所有的类。
它在 Cocos Creator v1.x 版本中名字为 EVENT_RENDERER_INITED,在 v2.0 更名为 EVENT_ENGINE_INITED 并在 Cocos Creator v3.0 中将 EVENT_RENDERER_INITED 用作为渲染器初始化的事件。

Static EVENT_GAME_INITED

EVENT_GAME_INITED: string = "game_inited"

游戏启动后的触发事件,此时加载所有的引擎对象和游戏脚本。

Static EVENT_HIDE

EVENT_HIDE: string = "game_on_hide"

游戏进入后台时触发的事件。
请注意,在 WEB 平台,这个事件不一定会 100% 触发,这完全取决于浏览器的回调行为。
在原生平台,它对应的是应用被切换到后台事件,下拉菜单和上拉状态栏等不一定会触发这个事件,这取决于系统行为。

example
import { game, audioEngine } from 'cc';
game.on(Game.EVENT_HIDE, function () {
    audioEngine.pauseMusic();
    audioEngine.pauseAllEffects();
});

Static Readonly EVENT_LOW_MEMORY

EVENT_LOW_MEMORY: string = "game_on_low_memory"

程序在内存不足时触发的事件。
该事件只会在 iOS/Android 平台触发。

Static Readonly EVENT_RENDERER_INITED

EVENT_RENDERER_INITED: string = "renderer_inited"

在渲染器初始化之后触发的事件,此事件在 EVENT_ENGINE_INITED 之前触发,此时开始可使用 gfx 渲染框架。

Static EVENT_RESTART

EVENT_RESTART: string = "game_on_restart"

调用restart后,触发事件

Static Readonly EVENT_SHOW

EVENT_SHOW: string = "game_on_show"

游戏进入前台运行时触发的事件。
请注意,在 WEB 平台,这个事件不一定会 100% 触发,这完全取决于浏览器的回调行为。
在原生平台,它对应的是应用被切换到前台事件。

Static RENDER_TYPE_CANVAS

RENDER_TYPE_CANVAS: number = 0

使用 Web Canvas 2d API 作为渲染器后端。

Static RENDER_TYPE_OPENGL

RENDER_TYPE_OPENGL: number = 2

使用 OpenGL API 作为渲染器后端。

Static RENDER_TYPE_WEBGL

RENDER_TYPE_WEBGL: number = 1

使用 WebGL API 作为渲染器后端。

Accessors

frameTime

  • get frameTime(): number

inited

  • get inited(): boolean

Methods

Private ctTime

  • ctTime(id: number | undefined): void

Private determineRenderType

  • _determineRenderType(): void

Private initConfig

Private initDevice

  • _initDevice(): void

Private initEngine

  • _initEngine(): Promise<void>

Private initEvents

  • _initEvents(): void

Private runMainLoop

  • _runMainLoop(): void

Private safeEmit

  • safeEmit(event: any): void

Private setAnimFrame

  • _setAnimFrame(): void

Private setRenderPipeline

Private setRenderPipelineNShowSplash

  • _setRenderPipelineNShowSplash(): Promise<void>

Private setupRenderPipeline

  • _setupRenderPipeline(): void | Promise<void>

Private showSplashScreen

  • _showSplashScreen(): null | Promise<void>

Private stTime

  • stTime(callback: () => void): number

Private stTimeWithRAF

  • stTimeWithRAF(callback: any): number

addPersistRootNode

  • addPersistRootNode(node: Node): void
  • 声明常驻根节点,该节点不会在场景切换中被销毁。
    目标节点必须位于为层级的根节点,否则无效。

    Parameters

    • node: Node

      The node to be made persistent

    Returns void

end

  • end(): void

getFrameRate

  • getFrameRate(): number
  • 获取设置的游戏帧率(不等同于实际帧率)。

    Returns number

    frame rate

init

isPaused

  • isPaused(): boolean

isPersistRootNode

  • isPersistRootNode(node: { _persistNode: any }): boolean
  • 检查节点是否是常驻根节点。

    Parameters

    • node: { _persistNode: any }

      The node to be checked

      • _persistNode: any

    Returns boolean

on

  • on(type: string, callback: () => void, target?: any, once?: undefined | false | true): any
  • 注册 game 的特定事件类型回调。这种类型的事件应该被 emit 触发。

    Parameters

    • type: string

      A string representing the event type to listen for.

    • callback: () => void

      The callback that will be invoked when the event is dispatched.
      The callback is ignored if it is a duplicate (the callbacks are unique).

        • (): void
        • Returns void

    • Optional target: any

      The target (this object) to invoke the callback, can be null

    • Optional once: undefined | false | true

      After the first invocation, whether the callback should be unregistered.

    Returns any

    • Just returns the incoming callback so you can save the anonymous function easier.

once

  • once(type: string, callback: () => void, target?: any): any
  • 注册 game 的特定事件类型回调,回调会在第一时间被触发后删除自身。

    Parameters

    • type: string

      A string representing the event type to listen for.

    • callback: () => void

      The callback that will be invoked when the event is dispatched.
      The callback is ignored if it is a duplicate (the callbacks are unique).

        • (): void
        • Returns void

    • Optional target: any

      The target (this object) to invoke the callback, can be null

    Returns any

pause

  • pause(): void
  • 暂停游戏主循环。包含:游戏逻辑,渲染,事件处理,背景音乐和所有音效。这点和只暂停游戏逻辑的 director.pause 不同。

    Returns void

removePersistRootNode

  • removePersistRootNode(node: { _persistNode: boolean; uuid: string }): void
  • 取消常驻根节点。

    Parameters

    • node: { _persistNode: boolean; uuid: string }

      The node to be removed from persistent node list

      • _persistNode: boolean
      • uuid: string

    Returns void

restart

  • restart(): Promise<void>

resume

  • resume(): void
  • 恢复游戏主循环。包含:游戏逻辑,渲染,事件处理,背景音乐和所有音效。

    Returns void

run

  • run(onStart?: OnStart): Promise<void>
  • 运行游戏,并且指定引擎配置和 onStart 的回调。

    Parameters

    • Optional onStart: OnStart

      function to be executed after game initialized

    Returns Promise<void>

setFrameRate

  • setFrameRate(frameRate: number | string): void

step

  • step(): void

Generated using TypeDoc