Guest User

Untitled

a guest
Jan 23rd, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. long long nowTime = std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::system_clock::now().time_since_epoch()).count();
  2. long long time = firstReceiveTime + nowTime - firstRenderTime;
  3.  
  4. CameraParamterNode* current = head;
  5. while ((current->next->next != nullptr) && current->next->data->frameTime < time)
  6. {
  7. current = current->next;
  8. }
  9.  
  10. double diff = static_cast<double>(time - current->data->frameTime) / (current->next->data->frameTime - current->data->frameTime);
  11.  
  12. pos = (current->next->data->pos - current->data->pos) * diff + current->data->pos;
  13. dir = (current->next->data->dir - current->data->dir) * diff + current->data->dir;
  14. up = (current->next->data->up - current->data->up) * diff + current->data->up;
Add Comment
Please, Sign In to add comment