Overview of multi-output shader work

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

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
15/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Sôi nổi
Công nghệ
cmake, cpp, python
Lĩnh vực
backend, tooling

Hướng nghiên cứu

This issue is organizational only and explicitly says not to submit code. It outlines changes across SceneObject and SceneClass, the scene_rdl2 Python module, RDL formats and UI utilities, shader definitions and generators in cmake_modules, and runtime evaluation and JSON export in moonray. Read those components to map the dependencies; completion would require coordinated multi-output support across them, but the issue does not define implementation details or acceptance criteria.

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

Mô tả

This issue is for organizational purposes only. No code should be promoted against this.

Currently Moonray shaders only have one output that doesn't have a name. Until recently the one output of Map shaders was always Color (RGB). Recently we added the ability to specify an output type but there is still only one and it still doesn't have a name.

To enable multiple outputs, shader objects need to allow for a list of named and typed outputs, there needs to be a way to bind a shader input to one of these outputs, and there needs to be a way for a shader to actually return those multiple outputs. We also need to update various tools to pass this information on to programs like Houdini.

Currently multiple outputs only seem to exist for what moonray calls map shaders.

Adding these capabilities will touch:
  • SceneObject and SceneClass in scene_rdl2 repo
  • scene_rdl2 python module in scene_rdl2 repo
  • introduce format changes to RDL files in scene_rdl2 repo
  • utilities for generating user interfaces for shader node (e.g. Houdini HDA files) in scene_rdl2 repo
  • defining how the actual .cc and .ispc multi-output shaders work
  • updates to shader definition json file format that ispc_dso_generate expects in cmake_modules repo
  • update the generation of attribute.cc and attributes.isph in ispc_dso_generate in cmake_modules repo
  • update evaluation of shaders at runtime in Map in moonray repo
  • update generation of coredata json files in rdl2_json_exporter in moonray repo
Ngôn ngữ chính
CMake
Star
4.7k
Fork
321
Merge trung bình
13 phút
Pull request đã merge (30 ngày)
3

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 OpenMoonRay/openmoonray

Tất cả issue của OpenMoonRay/openmoonray

Issue tương tự

Thêm issue về Backend & API Design

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.