Bump mapping added, camera and lightDirection unresolved, code is messy[timeOut]