summaryrefslogtreecommitdiff
path: root/game/scenary/light.h
blob: 0b9320c755cae80c4f2d309672c15522341fc3f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once

#include "game/worldobject.h"
#include "illuminator.h"

class Location;

class Light : public WorldObject, public InstanceLights {
	std::shared_ptr<const Illuminator> type;
	InstanceVertices<Illuminator::InstanceVertex>::InstanceProxy instance;

	void
	tick(TickDuration) override
	{
	}

	std::vector<InstanceVertices<SpotLightVertex>::InstanceProxy> spotLightInstances;
	std::vector<InstanceVertices<PointLightVertex>::InstanceProxy> pointLightInstances;

public:
	Light(std::shared_ptr<const Illuminator> type, const Location & position);
};