AcademySoftwareFoundation / AcademySoftwareFoundation/MaterialX
ShaderPort::getPath() should be parented at surfacematerial
- 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
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