import OpalFalcon.Math.Matrix
import OpalFalcon.Math.Transformations
import OpalFalcon.Scene.Objects.PointLight
import OpalFalcon.Scene.Objects.Disc
import OpalFalcon.Scene.Objects.Plane

import Data.Bits

data DiscLight = MkDL Disc ColorRGBf Float

-- Generates points on an (sxs) square centered at the origin; TODO: use RNG
generateSquarePoints :: Double -> Integer -> [Vec2d]
generateSquarePoints s c = 
    let offset = s / (fromInteger c) 
        c2 = shiftR c 2