Why Cycles-X and not Eevee?

I can get faster renders in cycles than I can in eevee a lot of the time, maybe you spent too much time wondering if BF is corrupt and less time learning your software.

Its funny that most people here disagree with you and still you think the BF should agree with you or else they are corrupt :sweat_smile:

12 Likes

It depends, and youā€™re looking at it strictly from a clinical point of view. The only thing that matters (I canā€™t stress this hard enough) is the final product ā€“ if it looks good and the client (or you) are happy, who cares how you got there?

Most compositors (myself included) spend the majority of time trying to get the renders to look worse, not better. We add blur, grain, lens distortion, chromatic aberration, lens flares, and color grade to degrade the initial render and make it feel more organic and filmic.

EEVEE, Unreal, Unity, etc can look remarkably realistic and absolutely production ready for certain scenarios. The biggest shortcoming that I personally find with the current state of real-time rendering is that it doesnā€™t work particularly well with well-lit interiors. Add-ons like SSGI help tremendously, but are still very much a work in progress.

Also, I donā€™t think it will take another decade to achieve basic visual parity, I think more like one to two years at most. Of course rendering technology will always push the limits further, so to some degree we might find ourselves never quite content with where we are at.

Personally I think within five years at most, rendering as we currently know it (rasterized or path traced) will not be the technology we utilize to achieve the most realism. I think it will be machine-learning driven actually. The algorithm will analyze the scene, and ā€œrenderā€ out a realistic interpretation of what it would look like in real life with amazing accuracy and speed ā€“ you heard it here first!

3 Likes

Did you see anything like that: ā€œMercedes competes with BMW, also competes with Microsoft, and also competes with IBM, and also competes with Nike.ā€

Why Blender must competes to another softwares and even with all softwares? Blender is multi purpose software and does not want competes with any software, because Blender does not a commercial software.

Look, I donā€™t think you understand where the negative feedback came from here. People werenā€™t picking on you for questioning what the blender foundation does. The sentiment of wanting eevee to be the only render engine has even been brought up before, and it didnā€™t cause a commotion back then.

The main issue is the conspiracy angle. Regardless of how any of us feel the foundation should spend their resources, itā€™s completely out of line to accuse them of stalling the progress of their own render engine just because you would rather they dump all their resources into eevee. I mean, when you look at it objectively you can see that theyā€™ve continued to spend a lot of their resources into improving it like with that dof refactor i mentioned earlier.

You yourself even said that eevee has features that unreal doesnā€™t have atm, yet somehow the foundation was paid off to keep it from competing with their engine? Thatā€™s not a reasonable claim to make, and frankly its damaging to the project if people actually start believing that. Who would donate money to help improve eevee if they donā€™t think the foundation would let that go anywhere.

12 Likes

If that is your intention then maybe you should rephrase what you said. You saw that the foundation was putting development power towards improving cycles then said that its a waste to not make those devs work on adding raytracing to eevee. They did not make any of the devs working on eevee work on cycles instead. From the way you say things its like any amount of time any of these devs spends on cycles is a waste because apparently 98% of blender users would rather have them work on eevee.

Iā€™m mainly concerned with debunking the conspiracy angle because that is damaging to the growth of the project, but you should understand that people would get heated over the other implication as well.

I think there is a valid discussion in whether they should spend time adding raytracing to eevee, but it came across like a statement that they shouldnā€™t waste any time on cycles. Keep in mind, these are not abstract ā€œreasourcesā€ we are talking about. They are individual developers with different areas of expertise.

Breckt is the original creator of cycles, so hes best suited for improving that renderer. Even if they were to make him work on eevee, he would have to spend more time learning the ins and outs of eevee before being able to do anything with it. Right now we have the best suited devs working on the renderers they originally made which is far from stalling the growth of either render engine.

3 Likes

Your statement: Why cycles and not EEVEE ? 98% of blender users would prefer real-time ray-tracing in EEVEE. they shouldnā€™t wast resources on cycles.

[mirror modifier: ON]

My statement: Why grease pencil/sculpting and not modeling improvements ? 99.74% of blender users would prefer better modeling workflow, they shouldnā€™t waste resources on the other part. (could it be that Microsoft is influencing blender devs not to work on modeling, because that might hurt their 3d builder app ?)

Source: Myself.

[Mirror modifier: OFF]

Joke aside, some devs are more proficient in a certain domain and they better focus their energy on that part, rather then work on something else.

Would you put Pablo dobarro on the rendering team ? or maybe SebastiĆ”n Barschkis on the modeling team ? Itā€™s not like they have 100s of devs to spare, they are barely managing 1 or 2 for each module, with some parts having 0 devs to work on.

2 Likes

I guess thatā€™s the difference in paying for software versus owning itā€¦

I would like to point out the difference in trying to please/appease the shareholders, pleasing the users or programming for the love of it. You need to figure out how to help, influence, encourage and motivate the people who actually code Blender first before demanding what you think is best for Blender.

2 Likes

ā€œI need the best-looking renders that I can reasonably obtain,ā€ of course, but my ā€œruling constraintā€ is that I need them quickly. Iā€™m not interested in actually persuading people that they are looking at a photograph. Although I still miss ā€œBlender Internalā€ and still want it back as an option, Iā€™ve learned how to make EEVEE work for me. Whereas, given my particular hardware situation, Cycles is not an option.

Yet ā€“ thereā€™s no ā€œcompetitionā€ here. And thatā€™s the sheer beauty of Blender. ā€œIf you need it and can spare the time, you can have it. And, if you need it and canā€™t spare the time, you can have it also.ā€ :+1: Wonā€™t be the same thing, but you can have it, nonetheless. And in both cases it will look Very Good.

1 Like

Randomly summarizing above relevant answers to the initial question:

  • not all developers can code any part of blender. And Eevee coders are already working on Eevee
  • Eevee is so fast becauseā€¦ it does not raytrace! So putting raytracing elements (reflections, AO, GI, volumetrics) will push it back towards Cycles speed
  • Cycles is actually realtime raytracing, so why not speeding it up instead of slowing down Eevee?
  • the Epic Megagrant Conspiracy is all to be proven: they even gave money to Godot afaik, a direct rival.
  • UE4 RT raytracing is still worse than UE4 baked light (obtained with pathtracing afaik)
  • and then, about the quality of renders: why barely be satisfied and not aiming at the top?
  • the Cycles X ā€œinvestmentā€ consists in 6 months of research of two Cycles developers, itā€™s not the Epic Megagrant Black-Hole

Now, before repeating again the initial question, please consider to evaluate these answers, as in the natural process of a debate.

14 Likes

Imho its very welcome that Cycles,that is very well known from the artists,gets the overhaul.
I think many artists was waiting for this improvements happens.

Shadowcatcher,lightlinking better caustics and what not are on the agenda.

To me its like a pre christmass gift.

here whats going on with Cycles X development
https://developer.blender.org/T87836
https://developer.blender.org/T87837
https://developer.blender.org/T87839

4 Likes

Thank you very much, nice to have a quick overview of the progress.

I do hope AMD/Intel step in hard and provide the needed support for Cycles-X.

4 Likes

Maybe AWS wants to push the developers to making sure Blender can only render in their cloud! Or even worse, you can only use Blender through the cloud!
Maybe Facebook is looking to pressure the developers to make sure you can only use Blender with a Facebook account to gather your data.
Maybe Microsoft wants to make sure Blender can only be used on Windows!

Or maybe those are just stupid claims without any basis.

If you think those sorts of claims through and look at them just with a slight taste of skepticism, they usually fall apart.
Regarding your conspiracy claim, you just need to look which sponsor is right on top of Epic. It is Nvidia. That is the company which has been pushing ray tracing in their marketing very aggressively (even before their hardware was capable of executing it in practical cases). I hope the contradiction is easily visible.

5 Likes

Just read through all this and there are valid point on either side, but as someone who yesterday decided to investigate Unreal, and look at Weta Digitalā€™s Meercat demo, I have to say I was left thinking ā€œMan, I wish I could scrub through the timeline this quick in Blenderā€¦ā€

That said, I feel like thatā€™s less of an Eeevee thing and more of just a general Blender viewport performance thingā€¦

Is cycles ā€œbetterā€ than Eevee? Well, thatā€™s like asking whether a painting is better than a photo.

These points probably have already been made, but hereā€™s my two cents on Cycles vs Eevee from a not super deep understanding of either, but a rough enough understanding to hopefully make a few good points.

The difference between Cycles and Eevee at the core of things is how it renders a scene. Cycles follows each ray as it traverses through a scene and tracks the state of the ray with every interaction with the scene (reflecting off of surfaces, refracting in surfaces, passing through volumes, etc). Once it has done that, it gathers the rays and produces the final pixels. Eevee, on the other hand does things in layers. For example, shadows are a pass that are added onto the render instead of an intrinsic part of the light simulation. Where Cycles simulates light, Eevee (for the most part) fakes it.

So, thatā€™s the core of the problem. If you want Cycles to be more like Eevee, then it has to give up itā€™s promises of being an unbiased renderer. If you want Eevee to be more like Cycles, it either has to change its framework to be more like Cycles or add more passes onto the renderer, and then you basically get another Blender Internal. Thereā€™s a trade off that you have to make with Cycles vs Eevee vs Arnold vs Render Man vs Unreal vs Unity vsā€¦ Each renderer has its own strengths and weaknesses. While adding raytracing support to Eevee will give you more accurate reflections/shadows/global illumination, thereā€™s going to be a cost paid. And that cost will either be slower render times, or less accurate effects (or both).

At the end of the day, thereā€™s room for both renderers. Sometimes speed is your #1 issue, and sometimes accuracy/shader simplicity is the most important thing.

Lastly, this is ignoring things that one renderer has over the other because of some limitations such as time and what the technology can do. For example, you can use Cycles in other platforms if you hook up its API to the other platform, while Eevee is Blender only. Or, Cycles can be put on a render farm with either CPU or GPU, while Eevee is not as easy to set up on a farm. These limitations can be resolved given time/resources, so I donā€™t think it is really worth saying one renderer is better/worse than another due to these.

So something interesting happened. First of all, Iā€™m on MacOS so I canā€™t take advantage of GPU acceleration (yet?), plus even if I wanted to switch to Windows, trying to get my hands on any sort of decent GPU is currently impossible ā€“ but I digressā€¦

Instead, I found a good deal on an 18-core i9 and decided to upgrade my CPU.

In initial tests based on a project Iā€™m currently working on, Cycles turned out to be faster on this CPU than EEVEE. At 256 samples, Cycles can render one of my more involved frames in about 13 seconds to EEVEE rendering at around 20 seconds.

Now, my final render quality samples will be higher than that, likely 2048, but the point stands that even at that sample count I expect the differences not to be huge (I did run a test at 2048 and Cycles came in under a minute per frame).

I would also point out that if Cycles X can speed up my CPU-only render times by only about 20% as itā€™s being initially reported, that will bring it even closer to the EEVEE render times at higher sample counts. If even more optimization is implemented in Cycles X for CPU computing, then the differences will blur further.

If I was on Windows, I would have probably favored an AMD 16-core which would have been faster still.

So to conclude, I do hope the BF continue to pour more R&D into Cycles X in order to further optimize it and make it more powerful. If Cycles X continues to gain speed and features, perhaps EEVEE will not be necessary anyway!

3 Likes

Because no matter how many resources they put into Eevee Development, it will never be as fully featured as Cycles can be as a path tracing renderer.

2 Likes

And with that we should have all said our goodbyes and stopped replying to this.

At this point, I consider this tread to be a casual talk about the virtues of developing eevee rather than cycles and vice versa. I donā€™t think folks are seriously trying to change his mind atm. Heā€™s probably not even reading the thread. Nothing wrong with switching from a rant to a chat. Happens all the time here, and it can create engaging discourse.

2 Likes

While I was trying to find this thread again I came across another that had the same energy but in the other direction - kill eevee and focus on cycles. Only took a handful of replies to get them to think more sensibly. I donā€™t know whatā€™s wrong with people like GCharb, especially when they behave in the manner they accuse the blender community of behaving like when people arenā€™t agreeing with them.

I fully agreeeeeeee with you even though most people act against it. its really important to have hybrid raytracing with eeveee. Not everyone has good hardware and its the future. Its really not logicallto render diffuse or simple passess with a raytracer while a hybrid renderer can make noise free passes. Adding pathtracer doesnt slow down evee. Its not same as tracing everything at high sample .Its just some passes that will be traced at low samples and denoised. Plus noose says that Cycles development in uncessary, if we use Cycles X speed with Eevee to have hybrid rendering we can use both improvemnts and have very fast renders. It wouldnt hurt evee. it would be optional to use raytraced shadows, GI and reflections at low samples. It also dont need to be realtime, its could be just used for final renders to have slightly better evee results. Also, blender.org even mentions vulkan and evee to make hybrid raytracing. So i think it will happen and its not useless as everyone say :smiley:

1 Like