Light from Sun and Rectangular LIghts Dim in Rhino Render

Rectangular lights are at maximum intensity right immediately outside each window. The sun is coming in from the window at the back of the room. The Rendered View Mode looks like so:


Is there a place where some drastic limitation is explained with regard to how these sources render in Rhino Render? The Rhino render (below) doesn’t render their brightness nor shadowing accurately. Post-processing seems to fix this - Is that the intended workflow (the initial displayed Rhino-rendered image isn’t a reliable guide?)
RhinoRender

Hello - Rhino render does not do any indirect lighting so it’s tough to make that look realistic - Raytrced viewport does a better job.

Rhino render


Raytraced viewport

-Pascal

And Raytraced can do even better with higher diffuse bounces (Tools > Options > Cycles- need to toggle Raytraced to take effect).

So far I haven’t had success with Raytraced. I’ll try it on smaller projects, but all it’s ever done is display the little orange bar with a tiny pause, play, and lock buttons which have no aparrent effect (hitting the Pause button doesn’t stop it from telling me it’s “Rendering”). The “Rendering…” notification has never gone away, and I can’t tell if it’s stalled or in progress without a progress report of some kind. The display matches the “Rendered” View Mode. So far I haven’t found anything explaining how to use it, so if there’s a resource please let me know. Though I have its options set to use my GPU, that device shows no activity when the Raytrace notification says “Rendering…”, so I’ve left it alone up until now…/

What GPU do you have? If you could run the Rhino command RhinoCycles_ListDevices and post the result it prints to the command-line history.

Btw, if the GPU doesn’t seem to be co-operative you always switch to CPU, that should work with any machine.

We have 2 devices

Device 0: CPU > Intel Core i7-7700HQ CPU @ 2.80GHz > 0 | False | True | CPU
Device 1: CUDA_GeForce GTX 1050 Ti_0000:01:00 > GeForce GTX 1050 Ti > 0 | False | True | CUDA

WHen Raytrace is rendering (or says it is): CPU is 3%, GPU0 is 2%, and GPU1 is 0%. I don’t think anything’s happening at all.

With the GTX 1050 selected one would think it’d Just Work. So you have also some second GPU apparently, some built-in GPU on your CPU?

Your drivers for the GTX up-to-date? You should see the driver date in the Rhino command _SystemInfo.

The non-Nvidia CPU is built-in, yes, thanks Nathan I"m surprised how much use it gets preferentially. VRay for SketchUp, for example, only uses the onboard card.

The GTX drivers just accepted an update through device manager. The onboard is current. But despite a reboot, task manager reports both GPUs below 2% without change when Raytraced rendering being selected. The CPU spiked for a few seconds after selecting Raytraced, but then dropped to 2% again. and there’s no appreciable processing activity. But the orange bar shows the pause button, unlocked symbol, and “Rendering…”

Getting Raytraced to work would be great, Nathan, but what’s even more important is knowing where the directions are on how to use it; knowing when it’s working, and what - if any - progress it’s making toward rendering, and some sense of how long they’re going to take. I think it’s crucial to my work to be able to predict how long.

I run Raytraced on my GTX 1060 many times every day, so I am pretty confident your GTX 1050 should also just work.

The task manager isn’t a good way to check for GPU activity, though. It shows only GUI/Desktop related activity, and Raytraced is nothing like that. You need to use a tool like GPU-Z or MSI Afterburner to see what the actual GPU activity is.

Do you see this behavior also with a simple box model such that Raytraced never actually starts rendering? The HUD should go transparent gray and a running timer and counter should be visible. By default the counter in the right shows only the running count, not the maximum, but otherwise should look similar.

image

edit: adding comparison of default 2 diffuse bounces with 12 diffuse bounces, both renders 33% of original size. Note that fewer bounces is faster to render (because there is less to do).

2 diffuse bounces, 1816 samples in 27 minutes
12 diffuse bounces, 1054 samples in 34 minutes

Yes, it works with a few boxes in a simple space. Took about 4 minutes for this:

GPU-Z shows high activity during the render on the NVidia. So does Taskmanager.

So it can work. And it looks good.

  1. Is there a set of documentation about interacting with the Raytraced View Mde? 1a) Can you tell me what the running tally (up to 1000, in this case) at the far right of the UI bar means? Is it (always?) %x10?

For the Render in my OP, however, neither taskm or GPU-Z show any GPU activity, and you’ll recall that the UI doesn’t show any numbers either fixed or changing in that case. I suppose that means it’s loading the geometry and would at some point begin rendering, .

  1. How can I know how long such a process will take? 2b) Will it relate to the timing of the Rhino Rendering in some consistent way?

Hello - this is the number of samples, or passes, the renderer is making - in theory it would continue to refine indefinitely but there is a number to cap it in Options > Cycles, default is 1000 I think. This will not relate to the Rhino render timing at all…

-Pascal

This could be really useful - the smooth quality of the light looks pretty good.

Can one assume that if about 200-300 samples has taken about 10 minutes, completion (1000 samples) would take between 30 and 50 minutes?

Unfortunately unless there’s some way to quickly determine (either directly, or experimentally) the approximate length of a rendering for a particular scene. I can’t see myself using it much.

Yes. The time for one pass/sample to complete will be more or less constant for the whole image. Thus indeed if 100 samples takes 30 seconds, 1000 samples take around 300 seconds. The time for one pass will depend on scene complexity and resolution. Higher resolution of the same scene means longer render times.

edit: the underlying Cycles engine does have some time-left-estimation feature, but that hasn’t been hooked up yet.

You can click on the passes field to edit the maximum passes count to something lower or higher - whatever you need for a render to be acceptable. And through advanced settings you can toggle whether the maximum count is shown as well, e.g. 443/1000.

I can’t find a “passes” field or “advanced settings” in either options or the Display Tab with Raytrace chosen.

For rendering this scene, there’s still no aparrent activity in evidence, so without those settings I can’t see how I’ll reduce the porcessing load. I can’t tell how to reduce the resolutionhj of the Raytrace either, without changing the viewport size (which I am keeping to one particular size to maintain consistent registration of multiple passes of render elements in the shot.)

I am letting it run overnight, but I don’t think anything is happening.

I’m sure @nathanletwory will chime in with more information but here are some pointers:

To change the maximum passes count, just click on the number at the bottom of the viewport.
image

To make it show both the current count and the maximum in that field, set the following entry to True:
Rhino Options > Advanced > RhinoCycles.MaxPasses

In the same interface window, you can modify the DPI scaling to reduce the resolution:

Nothing to add here. DpiScale is used to increase the pixel size, which essentially means reducing resolution - so your results will look blockier, but rendering should be faster. A value of 2 means four times faster, a value of 3 means approximately 9 times faster - but obviously with increasing blockiness.

DpiScale 1

DpiScale 3

I was thinking this issue:

Right, well, if the timer and the sample counter keep increasing something is happening

@djhg if rendering of Raytraced still doesn’t seem to start, please share the model through rhino3d.com/upload to my attention with nathan@mcneel.com in the recipient field.

edit: I noticed from the upload system that you already shared that file with another mcneelian, so I am going to use that for investigation.

edit2: Something in your scene makes the GPU kernel of Cycles unhappy, and I don’t know yet what. CPU rendering works, although slower.

If you want light to get in through the window glass you should use a Glass material. Your manually created glasses won’t work well with Raytraced.

edit3: It is the chesterfield objet that is currently making the GPU rendering failing to start pushing out useful renderings.

That chesterfield object was made from the taller chair model and the mesh further reduced. It should be more cooperative I would think. The taller chair object has fewer elements though. And the model you recived doesn’t have materials, which the project has. The taller piece has a number of anomalies in the way its materials render so there is definitely something corrupt about it.

It has never started. Even after sitting all night. Without that, the number of passes adjustment is moot but I will try changing the pixel scale which I think I saw in Raytraced’s Options as well.