Skip to content

[Bug]: RVOverlay rendering diagonal line #1311

Description

@williamwira

What happened?

We use the RVOverlay node to make stereo floating windows, using similar property commands to those below. This worked as expected up through RB-2.2.0-VFX2023, but as of RB-3.1.X-VFX2024 renders a diagonal line through the middle of the image.

I've confirmed the issue also exists in the latest OpenRV main branch, 4.0.0 (3f56ee1).

To reproduce:

  1. rv [ solid,red=1,green=1,blue=1,width=1920,height=1080.movieproc solid,red=1,green=1,blue=1,width=1920,height=1080.movieproc
  2. Open a python console, and execute the following commands:
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.eye", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_left.eye", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_left.windowActive", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.outlineActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_left.outlineActive", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.firstFrame", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_left.firstFrame", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowColor", [0.0, 0.0, 0.0, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.outlineColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.outlineColor", [0.13, 0.42, 0.58, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.pixelScale", commands.FloatType, 2)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.pixelScale", [1920.0, 804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowULx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowLLx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowURx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowLRx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowULy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowULy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowLLy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowLLy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowURy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowURy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.windowLRy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowLRy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_left.antialias", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_left.antialias", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.eye", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_right.eye", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_right.windowActive", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.outlineActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_right.outlineActive", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.firstFrame", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_right.firstFrame", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowColor", [0.0, 0.0, 0.0, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.outlineColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.outlineColor", [0.13, 0.42, 0.58, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.pixelScale", commands.FloatType, 2)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.pixelScale", [1920.0, 804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowULx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowLLx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowURx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowLRx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowULy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowULy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowLLy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowLLy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowURy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowURy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.windowLRy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowLRy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:DCinema_right.antialias", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:DCinema_right.antialias", [1], True)
commands.setFloatProperty("sourceGroup000000_sourceStereo.stereo.relativeOffset", [0.0], True)
commands.setFloatProperty("sourceGroup000000_sourceStereo.stereo.rightOffset", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.eye", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_left.eye", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_left.windowActive", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.outlineActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_left.outlineActive", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.firstFrame", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_left.firstFrame", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.windowColor", [0.0, 0.0, 0.0, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.outlineColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.outlineColor", [0.13, 0.42, 0.58, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.pixelScale", commands.FloatType, 2)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.pixelScale", [1920.0, 804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowULx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowLLx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowURx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowLRx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowULy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.windowULy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowLLy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.windowLLy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowURy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.windowURy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.windowLRy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_left.windowLRy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_left.antialias", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_left.antialias", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.eye", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_right.eye", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_right.windowActive", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.outlineActive", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_right.outlineActive", [0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.firstFrame", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_right.firstFrame", [1], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.windowColor", [0.0, 0.0, 0.0, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.outlineColor", commands.FloatType, 4)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.outlineColor", [0.13, 0.42, 0.58, 1.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.pixelScale", commands.FloatType, 2)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.pixelScale", [1920.0, 804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowULx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowLLx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowURx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowLRx", commands.FloatType, 1)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowULy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.windowULy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowLLy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.windowLLy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowURy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.windowURy", [804.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.windowLRy", commands.FloatType, 1)
commands.setFloatProperty("sourceGroup000000_overlay.window:HD_right.windowLRy", [0.0], True)
commands.newProperty("sourceGroup000000_overlay.window:HD_right.antialias", commands.IntType, 1)
commands.setIntProperty("sourceGroup000000_overlay.window:HD_right.antialias", [1], True)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowULx", [17.0], True)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowULx", [10.0], True)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_left.windowURx", [1910.0], True)
commands.setFloatProperty("sourceGroup000000_overlay.window:DCinema_right.windowURx", [1893.0], True)

The result will be a black line rendered diagonally through the center of the image:
Image

List all the operating systems versions where this is happening

Linux RHEL 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

Environment variables

No response

Extra information

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions