      // Frame x y z r g b a
      auto values = split_copy(line, " ");
      if (values.size() == 8) {
        float x = std::stof(values[1]);
        float y = std::stof(values[2]);
        float z = std::stof(values[3]);

        // Negative values indicate missing color information, use fuchsia
        if (float r = std::stof(values[4]); r < 0.0f) {
          data.emplace_back(x + 30.0f, y + 625.0f, z - 128.0f, 1.0f, 0.0f, 1.0f, 1.0f);
        }
        else {
          float g = std::stof(values[5]);
          float b = std::stof(values[6]);
          float a = std::stof(values[7]);