func readSpotLight(s *bufio.Scanner) (l Light, err error) { l, err = readBaseLight(s) if err != nil { return } var sl spotLight sl.baseLight = *l.(*baseLight) sl.center, err = vec.ReadPos(s) return &sl, err }
func readBaseLight(s *bufio.Scanner) (l Light, err error) { var light baseLight light.id = getNextId() light.color, err = color.Read(s) if err != nil { return } light.center, err = vec.ReadPos(s) return &light, err }