Blender and the industry standard

Studios have a lot of software, some propose build that needs to interface with Blender . If Blender is changing that implies changing those other tools. If a studio have to change them all as Blender goes along it can be a big problem.

From reading the comments in developers topic i think the biggest problem is that Blender do not have a C++ API and is very dependent on Phython.

Edit: just to add that i am not sure it will be good for Blender to follow the studios blindly in this, an evolution of pros and cons should be made.

1 Like

The standard solve the problem of incompatible library versions, which Blender doesn’t have in most cases to begin with. I would assume that companies understand that other factors might be more important. After all, following such a standard, doesn’t mean things work smoothly together at all!
It is reasonable to assume that certain companies have/are/are going to change parts of their VFX pipeline to Blender. Now, if those companies feel the need that Blender needs to follow this standard, they could quite easily collaborate with the Blender Foundation. It is reasonable to assume, they start to pick up over time how the Blender ecosystem works and that their contribution could be welcome.

1 Like

Do you have an example for that, where not following the standard would cause issues? (There definitely are such cases, but from my point of view they are very minor)

I agree, and yet, that has nothing to do with the standard.

2 Likes

Python is part of the reference, regardless of how you think it may or may not impact studio’s pipelines. Also, it seems you’re taking this discussion as an argument against using Blender in studios and that’s not what it’s about.

Yes, and mostly because of Python, they aren’t following the standard anymore.

My point is that this is a technical standard. And in the context of Blender, it is not that big of a deal whether Blender follows it or not. Blender by default solves plenty of issues that the standard tries to tackle.

This topic is really not that big of a deal in my opinion. But if that is not true, the studios could easily get in touch with the Blender Foundation.

2 Likes

That is incorrect, they certainly do, if you look at their table for python for instance you’ll notice they specify the major and minor version for python, but leave the the patch level unspecified (ie 3.9.x) you can ship 3.9.7 and upgrade midway through the year to 3.9.10. not a problem at all.

The concern the core team had is that due to the release schedule of both python and the vfx platform, there won’t be any python bug fix releases past may since python’s 18 month support commitment ends then.

3 Likes

I wonder how many studios are still using Python 2.7? Unless a studio desperately needs a newer functionality in Blender they could just use the version that supports the Python they need. Although I bet the been counters would not like Blender not being part of the reference platform.

If the entire decision on ending adherence to the VFX Platform relates to Python, then can’t the BF just make that library an exception to the rule and keep adherence if possible? Is there a reason why this should be an all or nothing case?

python is used to access all these platforms I think and is responsible for interop

if it’s broke I think it breaks alot of other stuff as far as compilers are concerned (I think*)

No one as ever objected to our versions of TBB OpenEXR, or OpenVDB or… only python… following the VFX Platform for everything except for python, be like being a vegan, except for ribs, cause: delicious!! sure… you can do it… but that’s not being a vegan now is it?

Python is one of the corner stones of the VFX platform, if you’re out on that one, you’re out of the whole platform.

8 Likes

From my understanding, this is not an all or nothing case, but it’s not a one thing case either.

Throughout the entire article, I don’t recall seeing “Blender will break every rule possible in the VFX reference platform”.

Most likely, blender will still see the reference as a guide, and keep things that make sense, but not let it limit them.

Look at it this way:

  • Following the platform was doing none of the things they originally were following it for.
  • Following the platform was creating unnecessary limitations.
  • The target audience just wants powerful tools, and most of them don’t have a pipeline that requires industry standard software.
  • From the wording, it appears that python was only used as an example, not the “only reason”. Nevertheless, using the latest python is crucial.
  • Even if they did break one rule, they would still be not adhering to the platform. Might as well plan to “not stick to it”, and not be limited in any way.
2 Likes

it appears that python was only used as an example, not the “only reason”

it’s not just an example, it really is the most important one … python is the main mechanism for loading custom code into an application, most of the more interesting extensions like render engines or pipeline tools, will be written in in C/C++ and link directly to the shared (between the host app and the extension) python library, conveniently named python37.dll, python39.dll, etc etc (or .so on the *nix platforms)

Now if blender ships with a python310.dll (which it will for 3.2) and your pipeline/render engine/whatever other tool that is geared to work in VFX platform based tools will be looking python39.dll, which doesn’t exist, which will cause the extension to fail loading. And if it doesn’t load , it doesn’t get the chance to be unhappy about possible incompatible versions of any of the other libs contained in the platform.

If you break with the python version in the VFX platform, any of the other versions do not matter and there’s no point in following any of it.

4 Likes

“wish” just that.

VFX folks are a very interesting bunch. They are a minority in numbers.But, they think they are the center of the world and whatever that do is the best. Just like Y-up/Z-up.

1 Like

Is not like that.

The problem is that moving software or hardware has a cost in time and money, and all studios has deadlines to meet, and not meeting these, results in quite expensive fines to pay per contract. That’s the main reason studios tend to update software in intervals of 3 years, since most comercial software out there, updates their API’s and language versions (in case of python, mel, lisp, or whatever the software uses to code plugins) every 3 years or so, and the big studios just pays extra to have coders from the software provider in the studio (usually Autodesk coders) to solve any incompatibility with in-house developed software. Smaller studios just don’t have the resources, so they have to choose between keep older versions or just ignore Blender completely, and pay to the big A for the stability they offer.

(Be aware that this only happens with Python, since as a language, in my opinion, unfortunately is managed by crazy people (consider the definition of “crazy” given by Linus Torvalds here). For the rest of the VFX reference platform, nobody really cares.)

Blender Foundation cannot offer that kind of support, so at the very least it was expected they would fulfill to their word respect to the VFX reference platform, at least the Python case. Blender Foundation didn’t.

What could have been a better idea, is to present the problem to Python developers, maybe pay one developer to backport some fixes to the older version and pubically deprecate the Python version until the next LTS version, and then, just update everything and nobody could have any reason to complain.

But what’s done, is done.

4 Likes

FFS – Z-up is just damn stupid and stubborn. Just change it already, or offer the option as a setting.

1 Like

Too complex to change at this stage. Requires a rewrite on several tools and systems inside Blender, so it’s only offered as an import/export option. Also, Y-up/Z-up fight itself is the most stoopid thing that any 3D software/game engine has unfortunately (CNC and things-making software long ago choose Z-up so no madness there, and i’m not saying Y-up is stoopid BTW).

And when the physics engine in Blender be rewritten (or converted to nodes), probably it will be Z-up, since it’s also the standard in physics representations, AFAIK.

5 Likes

I don’t really understand why, it’s just a letter swap. Everyone keeps saying that it’s impossible to do, and yet many other software apps offer the option to the end user. How difficult could it possibly be? What are we talking about time-wise?

You know the whole CG world other than vfx is pretty much based on Z-up. You proved my point.

Blender/Max/Unreal is all z-up. Who is the majority?

3 Likes

well this guy @BlenderBob knows :slight_smile: :wink: