working generic light with baselight, the constructor of directionalLight in lights.cpp and the pointer-type-change in the forwardDirectional.cpp needs more attention.