summaryrefslogtreecommitdiff
path: root/ui/gameMainWindow.h
blob: 594843d8a0a474b9aa6b945ab866ce77c2fc3547 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include "chronology.h"
#include "gfx/gl/sceneRenderer.h"
#include "window.h"
#include <cstddef>

class GameMainWindow : public Window, SceneRenderer, public SceneProvider {
public:
	GameMainWindow(size_t w, size_t h);
	~GameMainWindow() override;

	void tick(TickDuration) override;

	void render() const override;

	NO_MOVE(GameMainWindow);
	NO_COPY(GameMainWindow);

private:
	void content(const SceneShader &) const override;
	void environment(const SceneShader &, const SceneRenderer &) const override;
	void lights(const SceneShader &) const override;
	void shadows(const ShadowMapper &) const override;
};