World 负责管理整个游戏的生命周期

Hierarchy (view full)

Implements

Constructors

Properties

Accessors

Methods

Constructors

Properties

DefaultAvatarClass: typeof Avatar = Avatar

SDK 收到他人同步信息时,用该类创建avatar,可被覆盖

camera: Camera = ...

镜头管理

Deprecated

使用 getCamera 方法

d_allowDropFrame: boolean = false
d_dropFrameCout: number = 0
d_dropFrameTarget: number = 0
d_isInDropFrame: boolean = true
decoder: Decoder
joystick: JoyStick = ...

摇杆 @deprecated,使用 getJoystick 方法

lastEnterTime?: number
preCreateScannerManager?: PreCreateScannerManager
preload: Preload = ...

预加载模块

Deprecated

使用 getPreload 方法

renderDropRate: number = 0.0
serverless: Serverless = ...

无网模块

textGroup: TextGroup = ...

文字聊天群组

Deprecated

使用 getTextGroup 方法

topics: Record<"pause" | "skinChanged" | "pathChanged" | "reconnecting" | "disconnected" | "reconnected" | "repeatLogin" | "userKicked" | "enteringForReconnect" | "firstEnteringRoom" | "roomSwitched" | "pointUnReachable" | "pointReachable" | "enqueuing" | "resume" | "renderError" | "fatalError" | "queueVerifyFailed" | "collectActorSuccess" | "_metaFrameUpdate", ITopic<any>[]> = ...
voiceGroup: VoiceGroup = ...

语音群组

Deprecated

使用 getVoiceGroup 方法

Accessors

  • get actorsMap(): Map<string, IExtendedActor>
  • 获取所有被创建的 Actors

    Returns Map<string, IExtendedActor>

  • get avatars(): Avatar[]
  • 主角 + 同步Avatar 列表

    Returns Avatar[]

  • get disableClickNavigation(): boolean
  • Returns boolean

  • set disableClickNavigation(disableClickNavigation): void
  • Parameters

    • disableClickNavigation: boolean

    Returns void

  • get enableMSAA(): boolean
  • 获取是否开启 MSAA

    Returns boolean

  • set enableMSAA(val): void
  • 设置是否开启 MSAA

    Parameters

    • val: boolean

    Returns void

  • get panoramaFov(): number
  • Returns number

  • set panoramaFov(value): void
  • Parameters

    • value: number

    Returns void

  • get paused(): boolean
  • Returns boolean

  • get useGDVId(): boolean
  • Returns boolean

Methods

  • 进入全景图的后处理

    Returns void

  • 切换用户角色骨骼模型

    Parameters

    Returns Promise<void>

    Throws

  • 检测机型支持 可多次调用

    Returns Promise<void>

  • 取消定时任务 timeout和interval均可

    Parameters

    • timerHandle: number

      设置定时任务时返回的handle

    Returns void

  • 取消定时任务 timeout和interval均可

    Parameters

    • timerHandle: number

      设置定时任务时返回的handle

    Returns void

  • 销毁世界

    Returns void

  • 移除所有的监听事件

    Returns void

  • 删除当前环境光

    Returns void

  • 排队接口

    Returns Promise<unknown>

  • 根据 Actor id获取 Actor 实例

    Type Parameters

    • T extends IExtendedActor

    Parameters

    • id: string

    Returns null | T

  • 根据 Actor uuId获取 Actor 实例

    Type Parameters

    • T extends IExtendedActor

    Parameters

    • uuid: string

    Returns null | T

  • 获取actorViewer

    Returns ActorViewer

  • 根据 Actor 类型获取 Actor 实例集合。内部实现是使用的 instanceof

    Type Parameters

    • T extends IExtendedActor

    Parameters

    • ActorClass: ConstructorType<T>

    Returns T[]

  • 获取关联的 HTTP 接口

    Parameters

    • isPublic: boolean = false

      是否为公共接口,默认false

    Returns string

  • 获取是否接受云端同步信息

    Returns boolean

  • 获取镜头实例

    Returns Camera

  • Returns ClickingEvent

  • 获取当前房间

    Returns Room

  • 获取FPS检测器

    Returns FPSDetector

  • 获取 npc 的引用,传入的 AvatarClass 必须是 Avatar 的子类 TODO: 若新建了多个npc如何管理

    Type Parameters

    Parameters

    • Optional instance: Avatar | ConstructorType<T>

    Returns T

  • Returns Gyroscope

  • Returns JoyStick

  • 使用的网络质量检测基准,默认值是基于 xrtc 模块的网络探测逻辑

    Parameters

    • Optional networkDetectorType: default | rtt

      ENetworkDetectorType

    Returns NetworkDetector

  • Parameters

    • npcId: string

      建议使用NPC出生点的bomId作为npcID

    • npcOptions: {
          avatarId?: string;
          birthPoint: IOrientedObject;
          fromPrecreate?: boolean;
          npcConfig: IAavatarAniAndCompConfig;
          npcName?: string;
          priority?: number;
          roomId?: string;
          scale?: {
              x: number;
              y: number;
              z: number;
          };
      }

      npc配置信息,默认优先级为1

      • Optional avatarId?: string
      • birthPoint: IOrientedObject
      • Optional fromPrecreate?: boolean
      • npcConfig: IAavatarAniAndCompConfig
      • Optional npcName?: string
      • Optional priority?: number
      • Optional roomId?: string
      • Optional scale?: {
            x: number;
            y: number;
            z: number;
        }
        • x: number
        • y: number
        • z: number
    • Optional ActorClass: ConstructorType<Avatar>

    Returns undefined | Avatar

  • 获取玩家 Avatar 的引用,传入的 AvatarClass 必须是 Avatar 的子类

    Type Parameters

    Parameters

    • Optional AvatarClass: ConstructorType<T>

    Returns T

  • 获取预加载实例

    Returns Preload

  • 获取 Room 实例 TODO: 传入错误 roomId 是否返回空还是 throw error

    Type Parameters

    Parameters

    • roomId: string
    • Optional RoomClass: ConstructorType<T>
    • Optional options: IRoomOptions

    Returns null | T

  • 获取已经加载过的 Room

    Returns Room[]

  • Returns RotationEvent

  • 获取后台提供的当前时间

    Returns Promise<string[]>

    返回[UNIX秒级时间戳,格式化后的时间]

  • 获取 Stats 实例

    Returns Stats

  • 获取 TextGroup

    Returns TextGroup

  • 获取语音组实例

    Returns VoiceGroup

  • 获取语音组V2实例

    Returns VoiceGroupV2

  • Returns undefined | HTMLElement

  • 获取一个 World 副本 TODO:

    Parameters

    • userNumLimit: number = 30

    Returns Promise<string>

  • 世界和网络初始化,建议在预加载完成之后调用

    Returns Promise<void>

  • 保持与后台的心跳,不会被剔出房间

    Returns void

  • Returns void

  • 移除监听事件

    Type Parameters

    • K extends "pause" | "skinChanged" | "pathChanged" | "reconnecting" | "disconnected" | "reconnected" | "repeatLogin" | "userKicked" | "enteringForReconnect" | "firstEnteringRoom" | "roomSwitched" | "pointUnReachable" | "pointReachable" | "enqueuing" | "resume" | "renderError" | "fatalError" | "queueVerifyFailed" | "collectActorSuccess" | "_metaFrameUpdate"

    Parameters

    Returns void

  • 添加事件监听器

    Type Parameters

    • K extends "pause" | "skinChanged" | "pathChanged" | "reconnecting" | "disconnected" | "reconnected" | "repeatLogin" | "userKicked" | "enteringForReconnect" | "firstEnteringRoom" | "roomSwitched" | "pointUnReachable" | "pointReachable" | "enqueuing" | "resume" | "renderError" | "fatalError" | "queueVerifyFailed" | "collectActorSuccess" | "_metaFrameUpdate"

    Parameters

    • topic: K
    • listener: IListener<(IWorldEventsMap & IInternalEvents)[K]>
    • Optional order: number

    Returns {
        unsub: (() => void);
    }

    • unsub: (() => void)
        • (): void
        • Returns void

  • 收集actor成功

    Parameters

    Returns any

  • SDK与元象服务器断开时触发

    Parameters

    Returns any

  • 排队信息

    Parameters

    Returns any

  • 重连进房

    Parameters

    Returns any

  • 致命错误,需reload页面

    Parameters

    Returns any

  • 初次进房

    Parameters

    Returns any

  • 任意房间内 Path 切换时触发

    Parameters

    Returns any

  • 世界暂停

    Parameters

    Returns any

  • 排队信息

    Parameters

    Returns any

  • SDK与元象服务器重新连接成功触发

    Parameters

    Returns any

  • SDK尝试与元象服务器重新连接时触发

    Parameters

    Returns any

  • 渲染出错触发,改用fatalError

    Parameters

    Returns any

    Deprecated

  • 元象服务器将 userId 踢下线时触发

    Parameters

    Returns any

  • 世界恢复

    Parameters

    Returns any

  • 房间切换时触发

    Parameters

    Returns any

  • 任意房间内 Skin 切换时触发

    Parameters

    Returns any

  • 使用同一个 userId 重复进入 World 时触发,旧的 world 会触发该事件

    Parameters

    Returns any

  • 添加事件监听器,单个 listener 只执行1次

    Type Parameters

    • K extends "pause" | "skinChanged" | "pathChanged" | "reconnecting" | "disconnected" | "reconnected" | "repeatLogin" | "userKicked" | "enteringForReconnect" | "firstEnteringRoom" | "roomSwitched" | "pointUnReachable" | "pointReachable" | "enqueuing" | "resume" | "renderError" | "fatalError" | "queueVerifyFailed" | "collectActorSuccess" | "_metaFrameUpdate"

    Parameters

    • topic: K
    • listener: IListener<(IWorldEventsMap & IInternalEvents)[K]>
    • Optional order: number

    Returns {
        unsub: (() => void);
    }

    • unsub: (() => void)
        • (): void
        • Returns void

  • 暂停世界更新、渲染

    Parameters

    • completely: boolean = false

    Returns void

  • 进房/切流完成的统一后处理

    Parameters

    Returns void

  • Returns Promise<void>

    Deprecated

    使用checkSupport + preInit

  • 获取调度、配置、初始化引擎等逻辑 只应调用一次,也做了多次调用的阻挡,多次调用只生效一次

    Returns Promise<void>

  • 主动重新进入世界

    Parameters

    Returns void

  • 与元象后端连接断开后,重连

    Returns Promise<void>

  • 重新排队

    Returns Promise<void>

  • 渲染画面重新适应画布大小

    Returns void

  • 继续世界更新、渲染

    Returns void

  • Parameters

    • dis: number

    Returns void

  • 设置背景图片

    Parameters

    • url: string | false

    Returns Promise<void>

  • 设置是否阻塞接受云端同步信息

    Parameters

    • state: boolean

      false 不阻塞云端同步信息, true 阻塞云端同步信息

    Returns void

  • 设置环境光(包含加载)

    Parameters

    • envFilePath: string | string[]

      环境光路径

    Returns void

  • 设置环境光强度

    Parameters

    • intensity: number

      环境光强度,引擎默认为1.5

    Returns void

  • 添加持续执行的定时任务 如果时间间隔小于1000/World.FPS(正常为40ms),则变为每Tick执行一次

    Parameters

    • fn: (() => void)

      定时任务

        • (): void
        • Returns void

    • time: number

      时间间隔,单位毫秒,建议大于40ms

    Returns number

    0 失败; >0 任务handle,可用于取消任务

  • 设置灯光包配置,包含环境光,点光源等

    Parameters

    • url: string

    Returns void

  • 设置同屏人数

    Parameters

    • lodSettings: ILodSettings[]

    Returns void

  • Parameters

    • type: "contain" | "cover"

    Returns void

  • 设置 画质

    Parameters

    Returns void

  • 设置无网模式

    Parameters

    • isServerless: boolean

    Returns void

  • 设置渲染分辨率

    Parameters

    • height: number
    • width: number

    Returns void

  • 添加定时任务

    Parameters

    • fn: (() => void)

      定时任务

        • (): void
        • Returns void

    • time: number

      时间间隔,单位毫秒

    Returns number

    0 失败; >0 任务handle,可用于取消任务

  • 设置场景可渲染物件(Richsurface、Subsequence)的可视距离,降低渲染开销 Avatar的可视距离不受此控制,使用AvatarManager.setLodSettings控制

    Parameters

    • min: number

      最近距离

    • max: number

      最远距离

    Returns void

  • 绘制水印

    Returns void

  • 当前用户是否需要排队 以下情况不用排队

    1. 当前用户前面没有排队用户
    2. 当前App未接入排队系统

    Returns boolean

  • Type Parameters

    • T extends IExtendedActor

    Parameters

    • ActorClass: ConstructorType<T>

      Actor类型

    • disposeOnRoomLeave: boolean = true

      Room Leave 时是否 dispose 该 Actor,默认 true

    • Optional params: ISpawnParameters
    • Optional preCreateOpts: IPreCreateOptions

    Returns T

  • 停止与后台保活

    Returns void

  • 用于更新上报信息header

    Parameters

    Returns void

  • Parameters

    Returns void

Generated using TypeDoc