Comparing render engines for Car rendering

There are a lot of good render engines available for Blender nowadays, and we can read a lot of different opinions, so I decided to make my own simple scene to test render engines, and share my thoughts here. The goal is to do comparisons between Cycles, EEVEE, RadeonProRender, Luxcore, Renderman, Octane… It might take me a whole year to do them all so don’t be too impatient :smiley:
I don’t want to compare only render times, but also workflows and actual work time to get to somewhere I’m satisfied with realism.

HDRI lighting only for this first test, shadow catcher workflow, 4k rendering.
No grading outside of White balancing, only a few lens effects (vignetting, distortion, fringing) and film grain added in Blender Compositor.
GPU: Maxwell Titan X 12GB VRAM
Porsche by Karol Miklas

Starting with Cycles and EEVEE:




EEVEE:

Pros:

  • Realtime workflows, fastest workflow, WYSIWYG
  • Render time: 15 seconds render including compositing (6 seconds)
  • Quality can be great, I actually prefer some aspects of the render more than Cycles
  • Material settings and nodes are very powerful.
  • Great Shadow catcher trick with no compositing required. The final image is what I see in the viewport.
  • Control over the position of the reflection capture point gives more control over the reflection results

Cons:

  • Lighting setup requires a bit of work.
  • Probably good enough for this simple scene, but the current vanilla Indirect lighting is not usable for most scenes. Sampling probes should be ignored if inside geometry instead of rendering black splotches, irradiance smoothing is not enough to get rid of some weird probe information.
    Waiting for SDFGI + SSGI to fix all that.
  • Having to rebake all reflections every time you adjust the reflection volume is painful.

CYCLES:

Pros:

  • Realtime workflows: I do a lot in EEVEE, and then Cycles X viewport performance is so good that I get almost realtime pathtracing results.
  • Materials are easy to use (Principled), or flexible when needed.
  • Render time: 3’45 minutes with E-Cycles CUDA. This is honestly great on a 5 years old GPU. I didn’t spend time to improve it as this is definitely fast enough for me, considering it’s rendering and compositing 3 viewlayers as well.

Cons:

  • Shadow catcher workflow requires compositing, also required some contrast adjustments as shadows felt too light. This made everything more complex, also for the glass coloring the background.
  • Reflections look a little hazy compared to the EEVEE preview. I know that EEVEE and Cycles render reflections differently, but this is something to keep in mind when tweaking materials (I kept Principled with Specular at 0.5 on purpose).
  • Memory issues in general because of the 16K HDRI. Uses 12.4GB of VRAM, I sometimes had to restart Blender to flush it. Cycles needs Tiled EXR and mipmapping.
  • Memory issues with Cycles X, I was not able to render the final image with it.
8 Likes

If you want realistic result, never mind to Eevee. Eevee’s reflections are fake.

I know, I’m a game artist. I want the render to feel realistic, I don’t care if it actually is :slight_smile:
I just noted that the EEVEE preview renders reflections differently from Cycles, and it’s not a matter of capture position or intensity, it’s something else in the BSDF / clearcoat shading apparently, which I didn’t expect.

3 Likes

Eevee basically render around 360 degree and cover this texture on surface. That is it. SSR is much more complex technique but still not enough too.

You are missing my point here. For such a scene with no environment models and self-reflection needed, I was expecting the HDRI reflections to look closer to Cycles in terms of tint. I actually like that the EEVEE cubemap captures more yellow from the sunlit environment and I was “surprised” that Cycles didn’t get similar results. In Cycles the metal flakes of the car paint will blur the reflections more accurately, EEVEE could be closer if doing better filtering. The tires reflects more of the close-by blue road and less of the distance sunlit areas, etc… This was just a remark, I know how reflections work.

1 Like

HDR not enough for testing. Cycles and Eevee are never comparisionable. Very different engines and architectures and goals are different. I am graphic programmer.

You can compare UE4 vs Eevee, Cycles vs Vray, but you cannot compare Cycles vs Eevee. This is a meaningless comparision.

If you want real time render, then you can use Eevee, if you want photo-realistic results, you can use Cycles.

Interesting. Very good Eevee result, and in fact I like it better than Cycles because it pops more. :+1:

2 Likes

Please accept that your interlocutor might be very experienced in that matter as well…
I know that Cycles and EEVEE are very different render engines, I’ve been doing look dev for game engines for 14 years :roll_eyes:

2 Likes

Then why you try compare them? Professionals know very well: This engine types can not comparable.

Basic example: Same scene, same materials:

Cycles:

Eevee (with SSR):

Reflections are totally wrong with Eevee. And this is normal thing for a Realtime engine.

You could get a much closer reflection by placing your reflection volume more carefully in such a simple scene. You are not using a parallax corrected cubemap to reflect your ground.

If you don’t see the point of comparing the results of different engines from an artistic point of view, then ignore this thread.

4 Likes

Not change. If you are a professional, you know very well bounds and problems.

It is black material. Change color and easily see other problems.

SSR technique problems:

  • Wrong reflection coordinates
  • Streched reflections
  • Bad microfacet reflection

Real-time engines only works good (not as good as path-traced engines) with basic material setup like Diffuse and basic reflection. You never produce same quality with Real-Time engines, especially for complex materials like Car Paint materials.

You only used HDR, not use any other surface. And Eevee only mapped this HDR image. Try with complex scenes and complex materials and see huge differences.

Cycles

Eevee

If you do not tell this things, users always ask why Eevee render like this, or this, or this. Everyday we see posts like this messages. We must tell truths, and people can know what is what.

You are still not using a parallax corrected cubemap, you are reflecting the HDRI and hoping that SSR will fill the rest of your offscreen ground. You need a cubemap.

How do you think the Need for Speed, Forza and Gran Turismo have been doing all these years without raytracing? Realtime car paint shaders with dual specular lobes have existed for years. Cubemaps + SSR are often enough to give convincing results, in 16 milliseconds of render time.

You are wrong, you haven’t seen the scene. The HDRI is reprojected on a simple mesh to accommodate to the shadow catcher workflow. I am not reflecting an infinite HDRI sphere.

You have missed my point written in EEVEE pros: " Control over the position of the reflection capture point gives more control over the reflection results" . I am happy with EEVEEs results, I placed my cubemap where it gave the most pleasing results. I am happy with faking stuff for the sake of quality over photorealistic. I am not trying to match the renders 100%.

I just proved that EEVEE can give very pleasing results for similar car rendering. I am very happy with EEVEE results and workflow. I am excited to see improvements to the GI solution and hopefully raytraced reflections in the future.

What is the truth we need to spread? That everyone should stop using realtime rasterizer engines because the only way is brute force pathtracing? :roll_eyes: The whole movie industry is moving to Unreal…

3 Likes

How is that professional?

NFS is photorealistic, or Forza? Are you sure? Then lets say to Disney, they must make next Avengers film with Eevee.

I talking about reflection other objects, you still say HDRI.

I don’t need talk about anymore. Because you don’t talk like a professional.

If you want photo realism go cycles.

No, just go to object settings > Visibilty > then check shadow catcher. Doesn’t seem like it needs compositing

The ground is an HDRI emissive, so it won’t receive any shadows if set to Shadow catcher. You need to add a fake plane with a diffuse material to receive the shadows, and glossy if you want reflections.

1 Like

So the ground is from the hdri?

Correct, the HDRI is reprojected on a mesh that very roughly matches the scene geometry

I apologize if I offended you in any way, but if you think I’m not professional because I am saying that realtime engines can deliver photorealistic results… I don’t know what to say.

Disney already rendered The Mandalorian backgrounds in Unreal…

1 Like

It is pre-production, man. Please talk like a professional, not like a noobie. They don’t take final render with UE.

No it’s not just pre-production, you didn’t even watch the video.

1 Like