Making cinema-grade scenes possible for the masses, time to fork Blender?

I am starting this thread because I am getting an impression that the BF does not care if people can’t do incredibly complex scenes with Blender 2.9x. They also do not seem to polish their tools, and they do not appear to listen to users.

Fortunately, FOSS has a solution, it is called forking. There have been cases before where the new solution actually becomes the dominant one, since so many people are frustrated with the BF’s decisions, we might have enough critical mass to make it work.

Are there any developers willing to jump on board? How about users? Are you tired of the Open Movies and just want user-driven development? I would obviously not be involved in the day to day decisions (as I would be just a user), but this might be the only route we can take to ensure FOSS becoming dominant in the 3D field.

Is anyone ready to take such a step, or is it possible to convince the devs. yet?

1 Like

I agree performance being a crucial part and there being room for improvement when looking at the competition.

As far as sorting priorities goes, it doesn’t seem users have a big input. There seems to be some sort of direction though, so as an alternative I’d like to propose well maintained and transparent module plans (prettyplease with sprinkles on top).

When seeing this https://code.blender.org/2020/01/2020-blender-big-projects/ people and companies don’t just start the year with certain expectations, but are tying to build a pipeline which is not a small endeavor. If plans change it’s all good and gravy, but knowing it in advance can make a big difference.

That being said, if there was a performance fork I’d be as happy as the next guy to use it.

In highschool I was very good with html and I have nothing todo this weekend anyway, so count me in!

Sry for the sarcasm, but srsly, I get the point of the ‘edit mode performance’ thread but I dont get this one.
If I would be a dev on this level, I would make sure that my efforts count and communicate with the bf directly to avoid duplication or concerns with their design philosophy. In the end I do want it merged.
To keep the userbase united and to get a grant.

This thread seems like a duplicate of the edit mode performance thread, is it not?

I share your frustrations about the edit mode performance, just to make that clear. :slight_smile:
I think it would be more effective to post this on the developers forum. Maybe that could partly be a task for the upcoming GSoC.

4 Likes

What exactly do you mean by “incredibly complex scenes”? Blender is certainly capable of handling large datasets - outside of the Open Movies, Netflix’s Next-Gen was rendered entirely in Cycles, in camera. There weren’t any major compositing tricks there.

If you’re talking about throwing billions and billions of polyons at something like you see on major feature films, chances are you’re not seeing scenes rendered directly out of Maya or 3DS Max or insert DCC of choice here. They’re usually piped through a scene assembler like Katana or Gaffer, which implement optimizations like load deferring to make it easier to manage massive datasets without crashing to the ground. Some DCC’s are beginning to implement these concepts but it’s only relatively recently that they’ve done so.

On top of that, the Blender Foundation has more money being thrown at it than ever before, and they have established in-roads with many industry players. And development is happening at an insane pace. I’m not a complete apologist - I agree that they prefer to march to the beat of their own drum and I don’t agree with a lot of architecture or design decisions they make, but to think a small band of volunteers would not only have the resources to compete with that, but do it better is simply hubris. And it’s not just money or talent - you also have to manage the build process, and community, and support structure too. It’s a monumental task.

13 Likes

This reads like Parler for blender

reactionary and doomed to die on the vine.

8 Likes

This idea of performance improvements is not the reason why you would fork a project. Everybody wants good performance (specifically Edit Mode performance in this case). Working on old code and often rewriting whole sections of it not only requires expertise, the results dont show like new features.

You are coming to a difference of priorities about allocating coding resources. When you come to a difference of opinion about how something should be implemented, that is when you fork a project. The functionality of Edit Mode will still be the same right? just fast enough to be usable for high poly meshes…

3 Likes

If there were enough developers with sufficient knowledge of the codebase and sufficient know-how about these particular issues, why would they fork Blender instead of partnering with the foundation ?

16 Likes

This. I also always think its better to bundle the power than doing your own thing. No problem with contributing the high performance patch the list is pretty clearly outlined.

But i also develop in phyton and so and have to say its makes more fun coding new features than improving old one…

If you see what quality is possible in unreal,like huge landscapes,ect and the movie projects,like Mandalorian.
Then i guess they have a good and fast LOD system.Maybe Blender could improve/develop a sort of LOD for mesh edit.Guessing,based on camera view and distance,plus instancing,same for textures and ray calculation.In short, like unreal to make it realtime as possible.

I wondering,since Epic is supporting Blender with its Megagrand,if they are willing to help to optimize Blender with LOD dev knowlede,to produce Game assets and scenes in Blender whats fits with they LOD system,to export perfectly optimized Assets for unreal.Would be win win.

I’m pretty sure that Epic has no intention of helping Blender become more efficient. They simply want Blender to export to Unreal better (i.e. like Houdini is doing).

Could be right.On the other hand,if you imageing that you could produce a complete huge Game level in Blender,for unreal export.I guess that would be interesting even for Epic.

Also keep in mind the Cycles procedural api that is being worked on by Kevin Dietrich. There was a recent commit that has already added render proxy support in Cycles but this hasn’t been exposed to Blender yet.

https://developer.blender.org/T79174

This will make a huge difference to large studio grade scenes, as you will be able to view just bounding boxes for very complex geometry. It is not realistic to have large amounts of complex geo realtime in the viewport (except for game engines which are geared for realtime with lod’s and other hacks, or software that is purpose built for large scenes like Clarisse or Katana) in a generalist 3d application like Blender.

Maybe Vulkan will improve this, but you will always have to use clever pipeline tricks using proxies and caches via alembic/usd to deal with large scenes.

1 Like

My suggestion for people who want to do huge cinema grade scenes is:
Don’t invest in a new GPU (assuming you don’t have already), considering the GPU market is fucked sideways anyway, rather invest in a powerful CPU and then put some money on the side to buy Clarisse.
A 999,- price tag might be quite shocking at first, but consider this: It is a perma license. Its more expensive than a license for Renderman or Vray, but the program is also much much more than a renderer.
I played around with the PLE for some time and even on my not so brand-new PC, I could render out scenes with Billions of polygons, pretty fast actually while using only 1 Gig of RAM.

If you are already invested in GPU renderers and have a powerful GPU than Clarisse might also be a nice option in the near future (when Clarisse 5 releases in Q1 or Q2) since they added a new GPU renderer and support for Redshift.

That’s what I would/will do. Just a matter of time/money.

1 Like

Nothing wrong with forking, it’s a great option you have with FOSS. Having said that, I find doing it now to be rather bad timing. Last year Blender funding exploded, it is now at a level that means Blender can eventually be competitive with the top commercial packages in the industry.

The problem as I see it is finding available expertise. You can’t expect someone like Pablo Dobarro to fall out of the sky at regular intervals. Competent developers in the field of 3d programming are unlikely to be unemployed, which means that before they can come to work on Blender, they will likely need to end their current employment/contract.

So, my guess is that the BF is currently in negotiations with developers to come aboard, but until it’s all finalized, there won’t be announcements. Thus I think you would be wise to cool your forking aspirations for a while longer, as the things you want worked on may very well be what BF is currently hiring for.

1 Like

While any and all technical improvements are always welcome, I think where most visual effects fall apart isn’t the number of polygons, but the writing. That is, if you care about the story, you aren’t complaining about the vfx. I’m happier to see a powerful, easy to use all around system that lets more stories be told than yet another complex, confusing, program that lets you fiddle endlessly with whether the metallicity accurately represents tungsten. Most films are watched on phones, anyway, so tell a good story, make the vfx good enough, and then make another and stop worrying about risking 200 million or so to make the ghosts “realistic” in Ghostbusters 5: The Spookening.

1 Like

Can you explain a bit more in detail? I also found the progress with Blender inconsistent and stagnating so I simply use Maya now most of the time. I only really liked Blender for mesh modelling tbh.

Fortunately, FOSS has a solution, it is called forking. There have been cases before where the new solution actually becomes the dominant one, since so many people are frustrated with the BF’s decisions, we might have enough critical mass to make it work.

That not how forking generally occurs though, forking is usually not done by frustrated end users, forking is done by enough fed up developers thinking they can do better than the main project. A fork without developers is doomed for failure.

Now if there was a patch that did significantly better color grading and it was for some reason consistently getting rejected into mainline blender, yes. at that point I could see a fork being potentially successful.

Neither the fed-up devs nor a consistently rejected patch seems to be available for your fork, so i do not think forking is the way to go at that point in time. (But not stopping you here either, it’s opensource, go forth and do your own thing. the license allows that sort of behavior, that’s what’s great about it)

The reason no-one is working on [insert your favorite problem here] is generally there’s no dev passionate about it to work on it for free and/or the BF dev’s have been given other priorities.

Your options in order of most likely to succeed to get you the functionality you seek

  1. Convince the BF that they are wrong and your problem is the most important problem
  2. Find that passionate dev and get your patch made
  3. Fork

It sounds like you tried 1, so that leaves you with 2 and/or 3 which both depend on talented developers being available and willing to do the work, which may be hard to come by.

Personally I’d give 1 another go, threatening a fork at this point will likely be recognized by them as the empty threat that is appears to be so I wouldn’t lead with that.

finding someone for 2 be pretty high up on my list as well, sometimes it only takes a single dev to drive a certain area forward in huge leaps (take for instance the work pablo is doing for sculpting)

7 Likes

This is funny, it’s like you’re jumping off ship before even getting onboard.
However money talks, to fork Blender and get developer to start on a new adventure you’ll need money or maybe someone does it out of his/her good heart, u just need to be more convincing.
But I agree with you BF sometimes leave important things behind, like where the heck is OpenSubdiv GPU?sure there isn’t lack of devs or even code in that part.

1 Like

If you are going to fork blender, the firs tthing needs done, is converting the source code from ancient ‘C’ into an OOP language. I recommend c#.

Except C# is a JIT-compiled language that is not nearly as efficient as C code, especially where performance is concerned. C++ would be a more viable option, but you’ll still be hard-pressed to find developers willing to translate the millions of lines of code in Blender’s code base from C to C++. Which is why no one has done it.

4 Likes