diff --git a/src/client/graphics/GameRenderer.ts b/src/client/graphics/GameRenderer.ts index 1410cdbbd..381e679b6 100644 --- a/src/client/graphics/GameRenderer.ts +++ b/src/client/graphics/GameRenderer.ts @@ -37,6 +37,7 @@ import { StructureLayer } from "./layers/StructureLayer"; import { TeamStats } from "./layers/TeamStats"; import { TerrainLayer } from "./layers/TerrainLayer"; import { TerritoryLayer } from "./layers/TerritoryLayer"; +import { TerritoryWebGLStatus } from "./layers/TerritoryWebGLStatus"; import { UILayer } from "./layers/UILayer"; import { UnitDisplay } from "./layers/UnitDisplay"; import { UnitLayer } from "./layers/UnitLayer"; @@ -220,6 +221,18 @@ export function createRenderer( performanceOverlay.eventBus = eventBus; performanceOverlay.userSettings = userSettings; + let territoryWebGLStatus = document.querySelector( + "territory-webgl-status", + ) as TerritoryWebGLStatus; + if (!(territoryWebGLStatus instanceof TerritoryWebGLStatus)) { + territoryWebGLStatus = document.createElement( + "territory-webgl-status", + ) as TerritoryWebGLStatus; + document.body.appendChild(territoryWebGLStatus); + } + territoryWebGLStatus.eventBus = eventBus; + territoryWebGLStatus.userSettings = userSettings; + const alertFrame = document.querySelector("alert-frame") as AlertFrame; if (!(alertFrame instanceof AlertFrame)) { console.error("alert frame not found"); @@ -237,6 +250,7 @@ export function createRenderer( // Try to group layers by the return value of shouldTransform. // Not grouping the layers may cause excessive calls to context.save() and context.restore(). const layers: Layer[] = [ + territoryWebGLStatus, new TerrainLayer(game, transformHandler), new TerritoryLayer(game, eventBus, transformHandler, userSettings), new RailroadLayer(game, transformHandler), @@ -380,7 +394,8 @@ export class GameRenderer { const layerStart = FrameProfiler.start(); layer.renderLayer?.(this.context); - FrameProfiler.end(layer.constructor?.name ?? "UnknownLayer", layerStart); + const name = layer.constructor?.name ?? "UnknownLayer"; + FrameProfiler.end(name, layerStart); } handleTransformState(false, isTransformActive); // Ensure context is clean after rendering this.transformHandler.resetChanged();