feat: CUDA/OptiX implementation of TextureSystem

Đang mở
#4,938 8 bình luận 1 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 2 ngày

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

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Ít trao đổi
Công nghệ
cpp
Lĩnh vực
computer-graphics

Hướng nghiên cứu

Issue này là một cuộc thảo luận về lập kế hoạch và thiết kế hơn là một tác vụ code có phạm vi cụ thể, và không nêu tên file hay test nào. Hãy bắt đầu bằng việc xem xét CPU-based OIIO TextureSystem hiện có và các mục tiêu thiết kế CUDA/OptiX đã nêu. Công việc được xem là hoàn thành khi đã thống nhất về phạm vi MVP và kế hoạch triển khai bao quát việc cung cấp, khả năng tương thích API, tính toán dùng chung và tải texture theo nhu cầu.

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

Mô tả

feature request gpu texture / image cache

Most production renderers that use OSL for shading also use OIIO's TextureSystem as their texture engine, and also quite a few non-OSL renderers still use OIIO TextureSystem. But as those renderers add GPU abilities with CUDA and OptiX, they are pretty much on their own when it comes to texture (OSL gives them a customization point where the renderer itself provides texture facilities).

We've talked for some time about OIIO providing a CUDA/OptiX implementation of TS, and it's time to finally get it underway. I think we can get to an MVP in main relatively rapidly, and then continue work to make this a major supported feature.

I would consider the basic design goals to be the following:

  • Delivered as part of OIIO somehow, and in a form easily consumable by OSL and other renderers.
  • With full feature/quality parity with the existing and future development of the CPU-based OIIO TS (this can happen in stages, with an MVP delivering basic functionality and additions over time getting us to full parity and higher quality).
  • With as close as possible an API to existing TS.
  • Sharing as much computational code as possible between CPU and GPU implementations.
  • Using the OptiX toolkit's on-demand texture loading to provide similar functionality to ImageCache (or maybe as part of, or in conjunction with IC?).

Using this issue to plan, discuss design, track progress, and rally participation from interested parties.

Ngôn ngữ chính
C++
Star
2.4k
Fork
718
Merge trung bình
2 ngày 18 giờ
Pull request đã merge (30 ngày)
85

Chuẩn bị môi trường

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.

Issue khác của AcademySoftwareFoundation/OpenImageIO

Tất cả issue của AcademySoftwareFoundation/OpenImageIO

Issue tương tự

Thêm issue về C++

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.