用途:指导在 PixiJS v8 中创建和配置 Application。Application 是便捷包装器,持有渲染器、根 stage 容器、canvas 以及 Ticker/Resize 插件。v8 中构造函数不接受参数,全部配置传给异步 app.init(),由它通过 autoDetectRenderer 实例化渲染器。
主要能力与用法:基本流程为 const app = new Application(); 然后 await app.init({ resizeTo: window, background: "#1099bb", antialias: true, preference: "webgl", autoDensity: true, resolution: window.devicePixelRatio }); 最后 document.body.appendChild(app.canvas);。生命周期为构造、init、渲染、destroy;destroy 第一个参数转发给 renderer.destroy,传 { removeView: true } 移除 canvas,releaseGlobalResources: true 用于释放全局池。
常用属性:app.stage(根容器)、app.renderer、app.canvas、app.screen,以及 app.domContainerRoot。ResizePlugin 通过 resizeTo 监听窗口缩放并调用 renderer.resize(),配套 app.resize()、app.queueResize()、app.cancelResize()。TickerPlugin 创建 app.ticker 并按帧调用 app.render(),可用 app.start()/app.stop() 与 ticker.add / addOnce,回调中可读 ticker.deltaTime、deltaMS、FPS。设 autoStart: false 可改为手动渲染循环,自行调用 app.render()。
可选能力:CullerPlugin 需先 extensions.add(CullerPlugin) 注册,可跳过屏幕外容器,容器需设 cullable。自定义插件通过注册带静态 init、destroy 且 extension = ExtensionType.Application 的类实现,插件按注册顺序初始化、逆序销毁。
常见错误与限制:v8 中向构造函数传参会失效并告警;app.view 已更名为 app.canvas;在 init 的 Promise 解析前访问 renderer、canvas、screen 会得到 undefined。更多完整选项见官方 references/application-options.md。