/
githubmirror
/
pixijs
Обзор
Документация
Войти
/
githubmirror
/
pixijs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
src/rendering/renderers/shared/startup/HelloSystem.ts
72 строки
2 KB
Zyie
chore: add standard/advanced tags to documentation (#11448)
03 июн 2025, 10:12
Не верифицирован
03 июн 2025, 10:12
7d91234
Код
Авторство
О чём код?
import { ExtensionType } from '../../../../extensions/Extensions'; import { sayHello } from '../../../../utils/sayHello'; import { type Renderer, RendererType } from '../../types'; import type { WebGLRenderer } from '../../gl/WebGLRenderer'; import type { System } from '../system/System'; /** * Options for the startup system. * @property {boolean} [hello=false] - Whether to log the version and type information of renderer to console. * @category rendering * @advanced */ export interface HelloSystemOptions { /** * Whether to log the version and type information of renderer to console. * @default false */ hello: boolean; } /** * A simple system responsible for initiating the renderer. * @category rendering * @advanced */ export class HelloSystem implements System<HelloSystemOptions> { /** @ignore */ public static extension = { type: [ ExtensionType.WebGLSystem, ExtensionType.WebGPUSystem, ExtensionType.CanvasSystem, ], name: 'hello', priority: -2, } as const; /** The default options for the system. */ public static defaultOptions: HelloSystemOptions = { /** {@link WebGLOptions.hello} */ hello: false, }; private readonly _renderer: Renderer; constructor(renderer: Renderer) { this._renderer = renderer; } /** * It all starts here! This initiates every system, passing in the options for any system by name. * @param options - the config for the renderer and all its systems */ public init(options: HelloSystemOptions): void { if (options.hello) { let name = this._renderer.name; if (this._renderer.type === RendererType.WEBGL) { name += ` ${(this._renderer as WebGLRenderer).context.webGLVersion}`; } sayHello(name); } } }