Why Cycles-X and not Eevee?

My pitch of salt

Cycles is pretty fast as it is

I’m sure you have looked at the impresive benchmark results of CycleX and I am also going to point you at the marketing materials from E-Cycles and K-Cycles, I will say:

No, Cycles is not fast enough. If independent developers can get this much out of the existing framework, there must be more that can be improved upon by blender core teams. CycleX is a prove of that.

What happends when computation gets done faster? People will make computer do more work in the same time, not less.

No, Cycles will never be fast enough, people will just cramp their scenes with more stuff until the render time is barely toleratable like it is now.

One wise man once said: “640K (RAM) Ought to be Enough for Anyone.”

Look where we are now.

Instead of putting so many resources into Cycles

Cycle and Eevee are distinct projects with defined scope and different team members.

Take a look at the developer teams:

https://wiki.blender.org/wiki/Modules#Rendering

CycleX is led by two members of the cycles team: Brecht and Sergey, neither works on Eevee.

Dalai works for both Cycles and Eevee but not involved in the project.

CycleX is unlikely to impact the development pace of Eevee.

Eevee is developed to be a realtime rendering engine that supports PBR rendering and approximate the result so to assist artist in texturing and shading. Faster iteration, faster production.

People do like to experiment with Eevee for their work but look at the developer table again, Overlay Workbench Multiview should tell you the dev team still considers Eevee to be a viewport renderer first, the number of developer tells you their priority(3 vs cycles’ 8)

Does it have to do with the fact that Epic Games, the makers of Unreal, invested 1.2 million into the Blender development?

Of course it does. Epic is not a charity. They expect a return on their investments.

Senario 1: Epic funds blender with stipulation that it can’t not be used on Eevee.

Is this bad? Blender can do a lot of stuff and rendering is only a small part of a large piece.

Ok fine, the money can’t be spent on Eevee and the associated rasterization parts. How about modeling, sculpting, texturing and others?

Stand in the pov of Epic for a moment here. Are you going to toss money on a competitor to improve their product? Probably no.

What benefits can blender bring to Unreal engine that other modeling tools can’t?

Lower cost of entry to asset generation? Protentially bigger market of people using Unreal as a result?

Senario 2: Epic funds blender and the fund can go anywhere AND that the management decided that Eevee needs some improvement.

Alrighty now the dev team will move (or hire) more team members to work on EEvee. Great right?

Yes, not no.

Rasterization is different than a unbiases rendering engine. Proficient in one doesn’t equal proficiency in the other. You have new developers coming in what happends to the original 3 developers that works on Eevee. They have to train their peers now, getting hangs of the new code base, the developement tools and process. Now there is extra overhead in communication and the developments actually slows down.

But the fact that Radeon ProRender supports hardware accelerated ray tracing but AMD didn’t upstream this feature to Cycles should speak volumes of the state which the openCL implementation is in. CycleX is deprecating OpenCL. For anyone expecting AMD raytracing to land on cycle-current before CycleX, you are in for some disappointments.

Regardless of how the megagrant is spent, the overall blendering experience will be better for everyone.

Cycle is very very old, well in terms of computer graphics anyway

Remember that cycle is first released in 2011 and eevee is first realized in 2017.

CycleX is only a 6 month project worked on by only Brecht and Sergey

AND this is only a prototype so far.

For any software projects of this scale performance uplift like this should not be taken lightly. It is quite obivious that what holds Cycles’ performance back is legacy code and backward compatibility with existing code bases and stability requirements. Blender is no longer a small project and people who use it, individuals or big studios, expect blender to be stable and features presented by the engine to be usable. This makes breaking changes difficult, as they often introduces bugs and crashes.

Eevee comes much later and as such, the dev has the experience from cycles to reference on and make better choices.

Will allocating 2 people working on Eevee achieve a similar result in performances? Will people use Eevee over Unreal and Unity? Suppose you are a established studio and Eevee is looking really good, are you going to migrate your entire pipeline over to blender? Training the staff to use blender? That is a lot of risk for not much improvement in graphic fidelity. Eevee is doing the catchup and neither Unreal or Unity will just sit and wait around.

Implementing Ray-Tracing in Eevee and make it faster Blender would directly compete with Unreal for rendering films

With a better Eevee, blender competes with Unreal and Unity, both can be used free (Under certain revenue bracket, which most games don’t reach)
With a better Cycles, blender competes with other 3d rendering software, most of which costs money and thus higher barrier of entry.

The choice is obivious. (Even disregarding that cycles can be used as plugin for Cinema4d and 3ds Max)

Money Money Money

You’d think 120k a month in donation is a lot. It is not.

Blender currently employs 26 full time employees, and 12 freelancers remotely. The building in Amsterdam houses offices for administration, developers, a store, a render farm and test lab, space for workshops/sprints and a studio where artists work on animation film productions.

Not all 26 full time employees are developers.

That includes office rent, daily administration, general management, HR services, e-store, conference organization, event participation, operational support for blender.org, managing development fund grants, software research projects, workshops, meetings, and so on!

And not all donations goes to the developers.

TLDR: Eevee doesn’t get worse when Cycles improve; No resources are reallocated from Eevee to Cycles. CycleX is an amazing improvement on Cycles with the greatest impact given the resources constrains.

Please remember that Cycles and Eevee are not competing projects, they complement each other. Faster ray tracing in cycles will mean faster ray tracing in eevee when this feature eventually lands.

9 Likes

It’s not a fact unless there is a quality research proving this point. Currently it’s your opinion your trying to use as a fact in your argument. It’s not backed up by any data.

I can as easily claim that the vast majority of Blender users want 100% dedication to Cycles development to make it the best production render on the market.

I don’t use Eevee at all and even Cycles lacking in my opinion compared to some other engines. So I am really happy to see there is more attention again to its development.

7 Likes

I remember there was hysteria like this when they first announced that the foundation won a 1.2 million dollar grant from epic. I’m having a hard time finding the post, but either ton or someone else at the foundation explicitly stated somewhere that there were no conditions concerning this grant. They can very well spend this money on eevee. In fact who says they aren’t? I mean, you guys are talking as though eevee is an abandoned module, didn’t they refactor eevee’s depth of field a few months ago?

A lot of people would chose to use one program over another just because they like how the company behind it operates. This is especially true when it comes to the FOSS crowd. This is the only motivation epic games needs for donating this much money, and it shouldn’t be under estimated because it creates momentum that is really hard to compete with.

It was supposedly a clause in their license that allowed the foundation to study unreal engine’s code. It doesn’t sound like they are really concerned with competing render engines. They are probably only worried about other game engines. Rendering is just what our community is concerned with.

1 Like

One more thing to note (as per why Eevee wouldn’t be the answer to everything rendering-related any time soon, - in fact probably never so):

Much of what Eevee (as well as UE and other modern realtime/rasterization-engines) do are screenspace-effects (e.g. SSS, often reflections, GI etc.).
Now as soon as you (for any number of possible reasons) need to bake textures, all this won’t be of any help (is not applicable).

It goes without saying the baking in Cycles isn’t in an overly good shape currently, neither, and clearly needs improvements, but Eevee can’t do any baking at all (probably mainly for the reason stated above, though I might be wrong here).

greetings, Kologe

This is the only unquestionable part in your whole point. This thought thou can be applied to anything:
"The vast majority of Blender users would be quite pleased with:

  • ui rough corners being solved
  • cycles producing fast caustics
  • node modifiers easier to work with
  • better water simulation
  • whatever
  • you name it
  • Ton shaving more often
  • A professional foot massage
  • etc…

I really don’t understand how such a unproductive thread can grow to tens of posts like here…
Btw the answers to your original question are already all here and there in the posts above

4 Likes

Interesting that you bring up Lumion, it feels so outdated and lackluster (the shaders aren’t even PBR…). I think Vray will remain on top for Archviz now that it has introduced assets, (like Enscape) and that it offers both realtime and final rendering solutions. Not to mention, it works very well across various software packages and it has Grasshopper integration!

because people feel they have to respond as the base assumptions were totally wrong and misguiding I guess.

2 Likes

Well, thank-you @Kolloom for such a direct and honest answer. I had to scroll 63 messages down, past all of those who only wanted to minimize the OP based on notions of conspiracy theories and the ridiculoussness of sentence, word and syllable parsing just to finally see someone who actually answered, with both thoughtfulness and knowledge, the OP’s original question. And all without trying to minimize him.

Well done, sir. Many thanks.

6 Likes

That is not inherently true.
This might be partially the case in high end areas but not in lower budget areas. I work mainly in advertising and with the birth of all the denoisers (and better GPUs) my render times went from 1 hour per frame to one or two minutes per frame.
The required quality has only marginally increased but the technology has made leaps.

Try not to forget that Blender is a creation tool primarily its about providing creative people the tools to create graphics and ideas from the ground up.
Rendering is just a small part of the creation process, and game engines will always be at the forefront of optimization and speed in terms of their rendering due mostly to money, profits and demand of gamers for more FPS and eye candy.

I went through a stupid faze some years back when i quit blender for years because i thought that what i wanted to see really was eye candy, so I thought i could attain that with video games, which i became addicted to. Walking around in games admiring the graphics… That is not creating, that is not being productive, at all!

If you’re creating game assets in Blender you should be most concerned with workflow, efficiency and the quality of the modeling tools and other tools involved. The speed and quality of a final render are not very important just so long as its fast enough and good enough for you to check the look of your assets before you export them and they get rendered inside a game engine.
If you’re using Blender for visualization or even CGI shorts or movies then currently you would not want to be using a biased realtime game engine, in most cases as there is still a visual gap. Until the day comes when the realtime biased engine looks indistinguishable from the unbiased path-traced engine I will not be worried…

But if you think about it, Blender EEVEE does need to be ready for that day and does ideally need to be one of the forerunners if its to become the industry standard or at least used more by studios, as a state of the art real-time engine indistinguishable from its unbiased rendering engine, would be a very “nice” thing to have.

Hey I never said that I like it.

If it was a sincere question rather than a complaint, the actual question alone would have been sufficient. If the question is given an unreasonable backstory, it is quite often a rhetorical question where the conclusion has already been drawn what the answer should be.
If it was about getting a clear answer to understand the situation, asking the question would be the way to go.

1 Like

Hi guys,

Just a little message:

The discussion heat thermometer is rising. Please try to avoid personal-level discord. Discussions where specific preferences are expressed ─ such as one’s favorite renderer ─ are prone to heat buildup and derailing risk.

Thanks!

7 Likes

A renderer is used to so many different ends : visual effects, all sorts of animation, archviz and product rendering, asset authoring for games, panoramic films, and so on. For some of these purposes and styles, the quality of a pathtraced render is way beyond anything a rasterizer can do. I personally use Eevee these days because I do stylized animation, but whenever I render a still image ? it’s Cycles all the way. Anyway these renderers are not developed by the same people so there’s no need to worry about one stealing resources from the other !

4 Likes

The bottom line is simply that, in Blender, we have access to several very-different built in renderers. (I still miss “Blender Internal” and want it back …) From the ground up, “Cycles” and “EEVEE” are not-at-all the same approach to the same problem, and that of course is the point.

Beyond that, Blender has very easy interfaces to a number of external rendering options.

There’s no “competition” between any of these many ways that we now have to get our jobs done. :+1: And, we have sufficient resources available to our world-wide collective community to allow all of them to advance at the same time.

Lots of people like Cycles, lots of people use EEVEE. I don’t think anyone can argue that. If I could restate the problem for the OP…

I think Blender Foundation could be better in telling a coherent story about how the two renderers work together and what their purposes are.

The development of the two renderers are a bit separated. Some features work in Cycles vs EEVEE, there are some different nodes, etc. To me it doesn’t seem like the two are complementary as they could be.

1 Like

Really, the key point here is that EEVEE and Cycles are not at all the same … from the ground up. They take an entirely different mathematical approach to the problem of calculating a render, and they use the GPU hardware in a completely different way. Both are equally valid and useful, and a lot of work has been done to make their public interfaces comparable, but they are completely(!) different beasts algorithmically.

2 Likes

A business dicision was made. WHY- nunya. It doesnt matter WHY, they arent doing it. If there is a conspiracy, do you REALLY think they would admit it?..

I’m somewhat surprised but these comments.

Cycles → Ray tracing, a ray is sent and calculated. it simulates realistic physics.

Eevee → Rasterization - basically game engine, lots of “tricks” to approximated light/shadows/etc.

They are totally different engines and serve different areas.

As such investment in both is critical for larger companies to take blender seriously.

I do agree that there are dissconnects on some parts, where a node/shader looks different in one vs another, well that is the end result of “real physics” vs “game physics”

Some try to combine the two, like ProRender, where it uses rasterizaiton for main scene, and overlaying shadows/reflection/etc via ray tracing.

As such i’m more then happy to keep donating to Blender Development Fund to support both.

Do note that it isn’t stopping anyone to take the code and do what you want. But you’ll need a larger team then Blender team has to develop it. I do wish you luck and eager to see your results :slight_smile:

Yes and no. Realtime Rendering always makes a comeback into arch and product viz for example.

Alias Portfolio and such were not remotely cheap apps.