Missing refresh in viewport when editing max iterations


I am seeing a problem, and was able to reproduce in Raytraced mode. Here are the repro steps:

  • Create a cube
  • Turn raytraced mode on for the perspective viewport
  • Navigate
  • Edit max iterations to 10000
  • Navigate

At this point you might already not be able to see your navigation, but if not:

  • Let it converge a little, past 200, say
  • Edit iterations to 200
  • Navigate
  • Rinse and repeat if necessary

At some point, the navigation will become ignored, and it is necessary to click in the max iterations field or resize the viewport to provoke a return to functioning.

Note also that when editing the max iterations between large and small values, the display of the current/max iterations in the HUD becomes clipped, so you cannot see the whole value/see too much and thus some of the older value.

I’ll see if I can reproduce later today.

Is it also possible that a similar refresh might be missing for wallpaper? I cannot repro in Raytraced mode, since it doesn’t appear to have it, but I am seeing a similar pattern when applying a wallpaper, and then toggling the gray box on and off, i.e. all our code is called, we render, the buffer is copied, draw opengl happens, but no change to the viewport. This is when converged already.

For Raytraced there is indeed a bug, it takes the max sample count from the “wrong” place when navigating view after editing (caused by incomplete viewport settings support). This is separate from what you are reporting, though. I havent been able to reproduce that just yet.

For me it happens consistently, create a cube, turn on Raytraced, click on iterations and see that they are 10000, let render to 300 or so, change iterations to 200, rendering stops, right-mouse navigation stops working.

Work In Progress
(6.0.17094.9041, 4/4/2017)

With later builds I can’t reproduce that, though, so it probably is already fixed.

Okay, great, I look forward to it.

The iterations issue is fixed, thanks. The wallpaper refresh is still missing, so I will look again at that.

Wallpaper refresh like toggling grey scale is signalled through ApplyViewChanges.

Yes, we do get the notification, we update the values in Iray, restart the render, copy the buffer and signal the redraw. The OpenGL call is then made and performed, but somehow, the update is not visible. Either we do something wrong somewhere, or the redraw path for this case in Rhino is not working quite right. I do not yet know why it happens. I will try to make a special scene where I can examine the raw Iray output and see if it is coloured or gray, and that should tell me where the problem is.

I would test in Raytraced, but unfortunately it does not appear to support wallpaper.

Sure Raytraced supports wallpaper, you do have the background set to Wallpaper in Render Settings?

Ah I see, I didn’t realise it had to be enabled and set up in two places. It works perfectly, so back to examining raw buffer contents :confused:

Hi Nathan, I am seeing the loss of interactivity again.

  • Create cube
  • Start Raytraced
  • Navigate with right mouse button
  • Edit max iterations to 100

No interactivity any more.

Can you repro? We are also seeing hangs with Iray, but we see none of our code in the debugger in any of the threads. Same thing, just create a cube, navigate, change max iterations, hang.

Please let me know if you see anything.

We found the cause of the hangs (strangely, we had to revert some correct OpenGL code to some older, incorrect code; more investigation is clearly needed), so now Iray behaves the same way as Raytraced, i.e. we lose interactivity when editing the max iterations down to a number already passed. It is possible to get it back again by clicking on the separation bars between viewports.

@CarstenW, is this with the latest public WIP release from this week?

@nathanletwory Yes, I updated today. Middle of last week it was working.

@CarstenW, I don’t see loss of interactivity here, but a minor bug in Raytraced handling of the change was reported by a user: RH-38987.

@nathanletwory I can repro every time, but strangely, if I try to record a video of it, it works every time. This seems to confirm what I have seen before, in that it just needs a small prod, any kind of refresh signal, to start working again, like the click on the viewport separator bar.

I could record it for you on my iPhone, if you would like to see it :slight_smile:

@CarstenW, do you see something like:


@nathanletwory Yes, and if I then try to rotate the view (right mouse button drag), nothing happens, except the text in the bottom right corner, and the area around it flickers. The rest of the viewport is static. Then if I click on the sizer bar between the different views, it comes back and is fully interactive again. I get that now in Raytraced and Iray.

[Edit] In both cases, if I try to record it with a screenshot utility (Jing), they just work the whole time. I cannot get them to misbehave. Something about recording it causes a refresh, or something like that.

[Edit2] The flickering around the bottom right looks like jpg or video compression or something ilke that, and I also see the orange hud colour on and off while this is happening.