AcademySoftwareFoundation / AcademySoftwareFoundation/MaterialX

ShaderPort::getPath() should be parented at surfacematerial

Open
#1,507 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.3k
Forks
451
Avg merge
6d 6h
Merged PRs (30d)
5

Description

Consider the following material document
```











```
`USD_PlasticOne` and `USD_PlasticTwo` are two valid shaders. However, when we use the shader reflection

`MaterialX::ShaderPort::getPath()` will report `SR_plastic/diffuseColor` for both `surfacematerial`

Additional details on slack [here](https://academysoftwarefdn.slack.com/archives/C0230LWBE2X/p1693526751416309)

Contributor guide

Open the contributing guide

Research direction

Start at ShaderPort::getPath() in the shader-reflection code and reproduce the supplied material document. Compare the paths for USD_PlasticOne and USD_PlasticTwo, then verify that each includes its surfacematerial parent rather than only SR_plastic. Done means the two valid materials produce distinct, correctly parented paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.