Blender over 10 years.. what are your thoughts ?

I was thinking about all the cool and fast development in blender

How would you imagine blender in 10 years.

Lets say we’re using blender 6.3 kernel has been rewritten c++ since v3.0
Python is still popular but other language now can also interact with blender lula, java, c# mono, etc…
Ten years and the popularity and user base has only grown since.
So its 2024, films are made regularly with blender.
Its used in education of most technical high-schools world wide (engineering / IT / arts / prod marketing …etc. )

What do you think would be possible with some sense of reality
Things that might really get developed some day. (add ons / futures )

I think Blender will be more of what it is today: an open source alternative to the Autodesk/Renderman/Arnold trifecta. It’ll probably be more well known and familiar to the ‘industry’ but unless someone takes the time to really refine and hone Blender I doubt it will ever replace any of them. Blender is an amazing program, but it’s definitely a ‘jack of all trades and master of none’ program. You can do almost everything in it, but not to the level that the standalone professional tools can. This could change someday but I wouldn’t bet on it.

I could see Blender finding a bigger home in independent film production and game development though.

Blender Institute - Amsterdam - 2014
http://i.imgur.com/y6dsDP8.jpg

Blendectoid Institute - New Cydonia (ex-Amsterdam) - 2024
http://i.imgur.com/vjQBpQq.jpg

LOL! I for one welcome our new alien overlords. :smiley:

Some thought ten years ago that Blender would become the go-to app. for movie making by today, but in some ways it’s still in the same position within the industry as back then despite all of the development (though it is true that more small studios at least are using Blender then there used to be, it’s barely made any headway at all in the big establishments where there’s a deep entrenchment in an Autodesk software-centric pipeline).

To contest that completely is out of my ability - but I would like to point out that Sean Kennedy showed at last year’s Conference how he was able to use Blender in R&H pipeline for many things, and I also know people there that worked with it as a fast way to make geo and do some simple tracking. That was not done ten years ago, so there are probably many ways that Blender is there as a tool in places we don’t hear too much about. Blender’s tool set is really much bigger than it was ten years ago, and will only keep getting better.

Sanctuary - how do I know that picture isn’t just what they really look like now when they turn off their disguise machines?

Do you want honest opinions or only the controversy free ones? Honest question as I don’t want to spoil the thread if you’re only after some fun & giggles.

Well, I am not saying it is the go to app now, either - but didn’t want to just say that it is in the same position now as it was when I started.

My hope for ten years from now would be that we all get to use a Jarvis style interface when working in 3d :smiley: I can only imagine what it would be like to texture paint virtually in front of me on a hologram model :smiley:

Sorry, should have been clearer. Question was directed more at the OP, not you Craig :slight_smile:

No worries, I got carried away thinking about virtual finger paint :smiley:

Lets not do that! http://esr.ibiblio.org/?p=532

Not sure why many people assume C++ is a better C.

Real examples from Blender’s code looping over some vars:

C++


for (vector<Main*>::iterator it=m_DynamicMaggie.begin(); !(it==m_DynamicMaggie.end()); it++) {
 ....
}

C


for (id = first; id; id = id->next) {
 ....
}


of course there are good uses for C++, I’d just argue blender’s kernel isn’t one of them.

Propaganda I guess.

It can be easier to develop in, especially for object oriented applications/libraries, but language choice alone is not a panacea to development issues. I don’t buy the opinion expressed in the link and use C++ (amongst other languages) for applications I develop. It is a powerful languages with pros & cons just like C.

That said, there really isn’t a problem in the kernel (to my knowledge) that would be solved by rewriting the Blender kernel in C++. The majority of benefits in using C++ are no longer accessible. The application is ALREADY written. Any time saved by having written in C++ to start with will be chewed up a hundred times over in rewriting the code.


[SUB]Interesting to note the paper was never published ;)[/SUB]

@BTolputt, yep, Im not that much against C++ in general, for libmv and cycles (which limit themselves to a subset fo C++), it seems to work well. (BGE is my main experience with C++, thats possibly more a problem with BGE design tho).

Even tho I don’t hold quite as strong opinion as Linus, its a fun read still and makes some good points :), - problems I’ve seen in Blender’s C++ code too.
http://harmful.cat-v.org/software/c++/linus
http://www.tux.org/lkml/#s15-3

Um, not to be a stickler for fair comparisons… but let me be a stickler for fair comparisons. :wink:

The first loop declares a temporary variable with type included, iterates over a fixed vector (or array) of objects, and is overly complicated in it’s terminating condition (one can use the not equal operator as opposed to negating an expression of the equality expression).

The second loop does not declare the type, is initialised using another untyped/undeclared variable, is iterating through a linked list, and uses a shortcut for termination condition that is generally suggested by nigh on all teachers of code development to make explicit.

Remember, you aren’t the only code monkey making a living from development on the forums :wink:

@BTolputt - was being a bit facetious really, its not a fair comparison, on the other hand its is real example which is indicative of the verbose C++ that exists.
But am sure you could find examples that make C look worse too!

(Was waiting for someone to point out performance issues of linked lists https://www.youtube.com/watch?v=YQs6IC-vgmo) :slight_smile:

Agreed on all three counts. It is not a fair comparison, it is somewhat verbose, and it wouldn’t be hard to find examples of C code looking bad too. :stuck_out_tongue:

I don’t think the kernel needs to be rewritten in C++, but as a C++ developer, it would be a bad thing for me to let developers of the future be tainted by an unfair comparison of the language as well :wink:

Linked lists are inefficient in both (all?) languages. That said, the C++ vector was to pointers as well, meaning the memory cache issues were present in both loops, the C++ one simply didn’t include the line where it kicked in :slight_smile:

It’s programming paradigm differences that many C programmers don’t quite understand, especially if they have no experience about OOP languages. C++ is not a better C, it’s a different language. It’s possible to write really bad C++ or use OOP features as they should be. In that case C++ becomes extremely powerful language which avoids most problems that C has.

In ten years, nothing will have to be rendered. All information will be transfered to the end user in molecular isotopes that induce images in our minds. Movie directors will be drug dealers pedaling the memories extracted from others (similar to Strange Days).

Seeing the push for gamedev related features lately Blender could be the go-to app for indie/mid-sized gamedevs. Some of today`s Blender using indies will have grown to mid-sized studios in ten years.