LogicReinc / LogicReinc.BlendFarm

A stand-alone Blender Network Renderer
GNU General Public License v3.0
414 stars 35 forks source link

Artifact even in split mode #52

Open GDurrens opened 1 year ago

GDurrens commented 1 year ago

I'm seeing color artifacts even in split mode. image image

GDurrens commented 1 year ago

Forgot to mention myabe useful info : I'm using CPU rendering for both nodes The scene has HDRI lighting

LogicReinc commented 1 year ago

For upcoming build I'm unsure if this is fixable. As it appears that something that is used in your blendfile is altering the image based on what part of the image is rendered. You could try to figure out what is causing the difference, and if you know, tell me, and I'll see what I can do.

The main reason that comes to mind that could affect this is some kind of compositing. Where the resulting color changes are based on the rendered image. Another possible cause is a denoiser perhaps, though that shouldn't result in color changes like this. An HDRI could cause it if Blender is doing some kind of culling for the light calculations, but I hope that is not the case. I'd need to investigate it more.

BlendFarm effectively uses render rectangles to split up the render process for every computer. So each computer is unaware of the work done by other computers. In most cases this causes no problems, but for whatever reason it is in your case.

GDurrens commented 1 year ago

Hello, First thank you for version 1.1.4 incorporating some aspects of the issues on 1.1.3 and of course happy new year. Hopefully we'll make blendfarm a gem.

There is no compositing in this scene. So it's not coming from that. Here is a render without any denoiser : image We can still see the color artifact. Here is a render with OpenImageDenoise : image Something is quite out of sync here.. Further investigation ... I disabled the sky texture node in the world's shader and it seems to be better : image There is still some subtle artifact but it seems the sky texture node is producing artifacts. Here is a render on a single node without any artifact : image An HDRI map in the world's shader also generates subtle artifact (samples 128) : image

CONLUSION : both HDRI and sky texture seem to cause issues but sky texture more. Hope that helps !

LogicReinc commented 1 year ago

Could you attempt, on the same machine, use Blender's render rectangle to render each segment of that area, and then try to manually put them besides each other? https://docs.blender.org/manual/en/2.79/editors/3dview/navigate/clip.html

If using that feature on the same machine generates the same artifact, then its clear its due to how Blender calculates light. Also, are you using OPTIX? CUDA? or Blender CPU? If OPTIX, does CUDA cause the same issue? If CUDA, does CPU cause the same issue? If CPU, does CUDA cause the same issue? (By selecting CUDA, you should be able to only select CPU).

GDurrens commented 1 year ago

Ctrl-B renders with OpenImageDenoise : image put together : image Artifacts ! Blender CPU is used. Blender GPU does the same : image

GDurrens commented 1 year ago

Above was with CUDA Ctrl-B renders with None : image Still artifacts image

GDurrens commented 1 year ago

OPTIX, CUDA or CPU seems to be the same

Justin240607 commented 1 year ago

Hello,

I have the same problem with the BMW-Demo-Scene (maybe you can recreate it): render2-Crop I used the latest Blender version and 2 computers (only CPU) to render. Would be great if you could fix the problem because the line is destroying the image!

Justin

LogicReinc commented 1 year ago

@Justin240607 Ill see if I can do something this week with the BMW demo scene. Or atleast find a workaround/cause. Can't guarantee it though as I'm quite busy with work.

Justin240607 commented 1 year ago

@LogicReinc Ok. I have another question: In an animation, is a frame split between multiple computers or does each computer render an entire frame? Thank you again for your great project!

This was the second try with the BMW-Scene (same issue): lastRender - KopieCrop

LogicReinc commented 1 year ago

@Justin240607 Animations are rendered as 1 frame per computer. This is more efficient and also bypasses any issues that might come with split-rendering.

sys0ps commented 1 year ago

just for future me or anyone else. I had similar issues as the folks commented above. using v1.1.4 with Blender 3.4.1, splitHorizontal, cpu, cycles. I was demoing this for an upcoming project using the Blender 2.8.1 Junk Shop demo (i liked the image, only reason for picking it). I was getting horrible artifacts on the final composite. I turned off the 'workaround' option box and the artifacts were gone but a white vertical line appeared around the tiles. Switched to splitVertical and artifacts and white line is gone. Not sure if this is some fluke as i'm only testing with just this one image so far, but those steps above corrected my initial issues.