AcademySoftwareFoundation / AcademySoftwareFoundation/OpenRV
[Bug]: SYNDisplay outTransform.url property regression
- Dominant language
- C++
- Stars
- 764
- Forks
- 246
- Avg merge
- 6d 12h
- Merged PRs (30d)
- 13
Description
### What happened?
Switching the color pipeline to use a `SYNDisplay` node used to require an outTransform.url property (I last successfully tested in OpenRV 2.1.0 - hash 45e5bae). When `outTransform.url` was set, the display colorspace would change accordingly. When not set, the node would correctly raise an error. However, that property appears to have no effect on the color pipeline in OpenRV 2.2.0 (e.g. latest on branch `RB-2.2.0-VFX2023`).
This code should set the display colorspace using an icc data file. But in the latest RV, the display colorspace has no correction. Note this code assumes you're viewing on the primary monitor, and also that `icc_file` is pointed to a real icc filepath:
```
icc_file = '/colorspace.icc'
commands.setStringProperty("displayGroup0_colorPipeline.pipeline.nodes", ["SYNDisplay"])
syn_display_node = commands.nodesOfType("SYNDisplay")[0]
commands.setStringProperty(f"{syn_display_node}.outTransform.url", [icc_file])
```
Also, this code sample should yield the error `ERROR: OCIOIPNode: outTransform.url property needs to be set for syndisplay function` when working correctly, as `outTransform.url` is not set on the syndisplay node. But no error is thrown in the latest RV.
```
icc_file = '/colorspace.icc'
commands.setStringProperty("displayGroup0_colorPipeline.pipeline.nodes", ["SYNDisplay"])
```
### List all the operating systems versions where this is happening
Linux RHEL 9.4, 9.6
### On what computer hardware is this happening?
HP Z8 G4 workstation, nVidia NVIDIA RTX A6000, 40 cores (Intel Xeon Gold 6242R 3.1), 191 GB RAM
### Relevant console log output
```shell
```
### Environment variables
_No response_
### Extra information
_No response_
### Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Contributor guide
Research direction
Start by reproducing the two provided SYNDisplay command sequences on Linux RHEL 9.4 or 9.6, focusing on displayGroup0_colorPipeline.pipeline.nodes and SYNDisplay.outTransform.url. Trace the SYNDisplay color-pipeline entry point and verify that an ICC URL changes the display colorspace and that an unset URL produces the stated OCIOIPNode error.
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