Talking about "production readiness" of features

Yes - I found the right sports analogy:
Pablo wants to turn Blender into a fast sprinter - one that looks beautiful while doing it.
But the reality for many 3D artists is that doing 3D is more like an MMA fight - not a Sprint.
:men_wrestling:

2 Likes

He is working towards making things faster in the individual modes and that is not what many 3D artist would find useful?
Does that mean the performance in all of Blender’s modes are good enough right now?

THIS is why I leave work with so many headaches. Thanks, Doc. :slight_smile:

1 Like

I think what this means is they are focused on making Blender faster and more performant, but not necessarily in a way that handles ultra-large scenes or models. Seems like a contradiction in a sense, which is why this is causing so much confusion.

I think ultimately what they’re saying is they’re not putting development time into helping Blender handle huge scenes, but more about making sure the existing tools are as fast as possible. Which again brings up the question, if Blender can’t handle large data sets (poly counts, textures, animation etc) like Maya, XSI, ZBrush, or other programs can, will it ever be used for more than small or mid-sized productions?

This is actually one of the reasons why I ended up moving over to Arnold for rendering. I had a project that Cycles absolutely choked on and couldn’t handle the render poly count so I had to create a pipeline to push everything through Arnold instead.

4 Likes

They are never good enough because performance is a moving target, - you give me more performance and I throw more complexity at it.
I don’t understand Pablo’s differentiation of real-time interaction and handling large amounts of data. They are both in an spectrum. There will always be artists who operate way beyond the capacity of what their computer can handle in realtime, because that was always normal and a computer can always deal with several magnitude of orders more complexity if you leave realtime behind.
Adressing realtime interaction while ignoring the other end of the spectrum seems strange to me, just like walking into an cage-fight as an sprinter.

7 Likes

For a lot of freelancers who use Blender, at some stage you are going to get approached by bigger clients for more demanding and larger projects and will encounter these limitations which should not exist if they were taken care of years back.
So some here like you have probably found themselves having to switch to a more capable software to meet deadlines and be able to deliver results when these limitations happen which cost money and time.

This in most cases involve learning this new software from scratch which is a time consuming process. This can be very unfortunate if this switching process happens in the middle of an ongoing high demanding project and things go wrong.

What some of us here are saying is there needs to be a goal towards eliminating this occurrence by working towards making Blender capable like other 3d softwares out there but the devs seem to be hesistant for reasons best known to them.

Blender should grow as artists here grow in their respective work unless the pattern should be that when 3d artist get to a certain level where large high end work which means better pay is attained, they should drop Blender and move on to other capable software and that pattern is how it should be.

2 Likes

As far as I understand, the initial step was really about a cleanup to remove some fundamental limitations. The follow up steps are in a sense low hanging fruits and in my opinion it would be a shame not to take them. Those are from my point of view general improvements.

When it comes to ultra-large scenes or models, the algorithms need to be adjusted specifically for that. That’s simply a different task. As far as I can see, the planned improvements don’t make the ultra-large tasks more complicated in the future.

Of course, everyone can have the opinion that the priorities should be different. But the planned changes will be a general improvement to Blender from my point of view and I don’t understand how any artist would be against them.

No one is denying that Blender/Cycles have problems in many cases. I simply don’t understand why some feel the need to flame all sorts of development task because they are not solving the issues they are seeing as the actual bottleneck. Yes, it would be fantastic if Blender could handle huge meshes. Yes, it would be fantastic if it could handle huge scenes like nothing. But besides that, it also need a lot of other things too.
To me, having a more solid basis when it comes to dealing with data in the different modes, appears like a possibly more solid basis to scale it up in the future too.

3 Likes

When it comes to coding, dealing with large data often requires different algorithms and data which is specifically designed for them. This task is not about that and that’s why it is different.
On the technical level, those are clearly different topics and they are not on the same spectrum from that perspective, but certainly in a similar area.

Oh, absolutely. I don’t think any of us are arguing that the current plan is a bad plan. I think what we’re saying is that Blender developers will say they want to turn Blender into this power-house free and open-source 3D content creation beast, but in the same breath, say that things that would actually help them toward that goal aren’t a priority. I’m okay if it’s not a priority right now (which might what they’re saying), but for Blender to truly be considered on-par with other 3D apps out there we need to have serious conversations about how Blender handles data (big and small) and what that means in the context of a large production pipeline.

5 Likes

Of course. :slight_smile:

I would really like some developers to chime in on this Pablo post or Pablo himself.

It leaves more questions than answers. And it certainly is not what we wanted to hear to the specific question of handling data.

I mainly used it as a point of reference.

But his logic seems off and I am hoping he is reading and listening to people who actually use other - very highly interactive programs - have to say.

Based on previous dealings with developers who get head set on something, I don’t have my hopes up. But here is to hoping anyway.

1 Like

The goal of them is for sure to make Blender more powerful. Pablo’s plan is in my opinion a step in the right direction. To me, this helps them towards making Blender better and likely even in dealing with larger scenes/meshes/… .
When it comes to huge tasks, like dealing with massive amounts of assets and what not, the foundation it is standing on needs to be very good. And as far as I can see, they are taking many steps in the right direction for that. Starting with the changes discussed here, but also the introduction of Vulkan is likely necessary for the viewport and plenty of other previous changes.

It is just a post describing what he is currently doing and what the plan is. You really make it sound as if they should only focus on high end stuff and they should stop cleaning up their code and shouldn’t remove existing limitations.
That’s a standard kind of working report covering an area of development. That’s it. If you expected something else, your expectations were off.

1 Like

Exactly correct.

Just taking what is there at face value, we are left to believe that there is a fundamental lack of understanding as to how other software is developed.

I prefer the reinventing the wheel analogy.

Some wheel makers use pi and target for smooth driving down a road. But they are not necessarily thinking about how a car handles turns. Or how to well control the car on a raceway track.

We prefer to focus primarily on turns and how the car handles overall without bothering with higher math. While our wheels are a little rough, only 24 sides, this allows us to focus on gripping the road around curves and driver feedback…

All the while in reality world class racing machines do both accomplish perfectly round tires and are in fact world leaders in road handling at high speeds around the most dangerous tracks.

Blender shows up at the track and can’t even qualify for the race with it’s reinvented wheels

To me the comments are this absurd.

I can’t speak for Pablo, but I can give one example of where this makes a difference:

If I want to draw a mesh to the screen, as large as possible and as fast as possible, I would use a data structure like triangle strips. They are compact, you can fit tons of data on the GPU and draw it at very high speed. However, adding, removing, splitting, extruding polygons, etc is slow.

If I want to make editing a mesh as fast as possible, a different data structure type, like a half edge structure is better. It holds extra information about the neighborhood relationships of polygons, and makes walking edge loops quick and easy. It is however coming with a higher memory overhead than triangle strips and is also not in a GPU friendly layout.

13 Likes

No one is arguing anything about optimizations and better tools. Or what method to use when making a tool.

It is so stupid simple I can’t believe this argument keeps going in circles.

Blender needs more efficient data handling of polygons and images across the boards.

Full stop. This is true. It is demonstrable and it has an effect on everything, but everything we do in Blender. Especially when it comes to interaction. And by interaction we are talking as stupid simple as rotating the viewport with millions of polygons and zero interactive tools invoked!

So imagine. Just for a moment what interaction tools would feel like developed on top of a better mesh handling system?

This is how all other software does it. Why? Because it just works better. That’s why.

If another developer wants to chime in on…

A program to handle this please do.

And let’s leave Pablo out of it. His comments on data handling don’t make any sense anyway. Especially not for interaction, which is just ironic.

Just learned that meshes are not data. That’s going to be a tough one for me, because it is quite a fundamental change to my thinking.

Edit: They really should create a better mesh handling system and then build the modes around those, such that the operations within the modes would be faster/more interactive. That would be a million times better compared to what they are planning right now. They are just not listening and don’t understand what they are doing!

1 Like

:man_facepalming: But these things go hand in hand. What do you think data oriented design is all about?

1 Like

Most Internet armchair developers would cringe if they knew what data oriented design really is.

8 Likes

I have no idea what that is, and frankly, I should not have to.

I do think you can optimize tools within the bounds of the current mesh system. That seems reasonable.

What is unreasonable to me is the performance in Blender overall.

Give whatever high-flootin name you want to it. But fix it.

Tell us how you are going to do it. We don’t need the gory details.

1 Like

A software design and engineering paradigm blenders been following for a long time now?