nmwsharp / nmwsharp/polyscope

updateVertexPositions too slow to use for real-time animation loops

Đang mở
#149 6 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Ngôn ngữ chính
C++
Star
2.2k
Fork
242
Merge trung bình
11 phút
Pull request đã merge (30 ngày)
1

Mô tả

I'm wondering if I'm using the updateVertexPositions and userCallback correctly. Currently I'm getting around 260 ms/f (4 FPS) when I update the positions of a mesh with 262,144 faces inside the draw loop callback.

If I run a similar animation in the libigl viewer I'm getting 19.9 ms/f (50 FPS). In that scenario I'm using set_vertices and callback_pre_draw.

Here's a video screenshot on my intel macbook pro running catalina:

https://user-images.githubusercontent.com/2241689/147182765-78b15f28-a1ce-4fc6-abf0-f6b44af2728e.mov

( Turning off the polyscope groundplane doesn't seem to change anything. I'm guessing the slowdown is happening in updateVertexPositions)

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu từ các entry point updateVertexPositions và userCallback được sử dụng bên trong vòng lặp vẽ, rồi so sánh hành vi của chúng với đường dẫn set_vertices và callback_pre_draw của libigl. Profile animation 262,144 mặt trên thiết lập macOS đã được báo cáo để xác định nguyên nhân của chênh lệch thời gian mỗi frame. Được xem là hoàn tất khi nguyên nhân và cách sử dụng đúng đã được xác lập, kèm theo một so sánh hiệu năng có thể tái lập hoặc một giới hạn được ghi lại.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
cpp
Lĩnh vực
computer-graphics, performance
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.