Files
esengine/source/src/Graphics/Renderers/DefaultRenderer.ts

29 lines
950 B
TypeScript
Raw Normal View History

2021-05-27 18:32:38 +08:00
///<reference path="Renderer.ts" />
module es {
export class DefaultRenderer extends Renderer {
constructor(renderOrder: number = 0, camera: ICamera = null) {
super(renderOrder, camera);
}
2021-07-02 20:59:44 +08:00
2021-05-27 18:32:38 +08:00
public render(scene: Scene): void {
2021-06-11 16:20:01 +08:00
if (!this.renderDirty)
return;
this.renderDirty = false;
2021-05-27 18:32:38 +08:00
let cam = this.camera ? this.camera : scene.camera;
this.beginRender(cam);
2021-07-02 20:59:44 +08:00
2021-05-27 18:32:38 +08:00
for (let i = 0; i < scene.renderableComponents.count; i ++) {
let renderable = scene.renderableComponents.get(i);
if (renderable.enabled && renderable.isVisibleFromCamera(scene.camera))
this.renderAfterStateCheck(renderable, cam);
}
2021-07-02 20:59:44 +08:00
2021-05-28 15:45:45 +08:00
if (this.shouldDebugRender && es.Core.debugRenderEndabled) {
2021-05-27 18:32:38 +08:00
this.debugRender(scene);
2021-05-28 15:45:45 +08:00
}
2021-07-02 20:59:44 +08:00
2021-05-27 18:32:38 +08:00
this.endRender();
}
}
}