nerevelon5/lib/light_source.lua
2025-04-19 21:53:40 +03:00

22 lines
583 B
Lua

__LightSource = {
position = Vec3 {},
power = 0, -- in meters
color = Vec3 {}, --r, g, b
seed = 0, -- random float to make every light unique,
shader = nil,
mask = nil
}
function LightSource(position, power, color, shader, mask)
local l = {
position = position,
power = power,
color = color,
seed = math.random() * math.pi * 2,
shader = shader or AssetBundle.files.shaders.light,
mask = mask or AssetBundle.files.masks.circle
}
return setmetatable(l, { __index = __LightSource })
end