Irritating facts about Blender 2.5x (with video comparison on page 4)

(jay) - I’ll try to make a movie; it occurs in my first 2.5x project - “Dung Beetle” which is kind of heavy (so I’m unable to host it anywhere).

Ace Dragon - I’ll check the latest build. No matter how harsh my thread seems to be I started it because I care and I would love to use Blender 2.6x as long as 2.49b.

Blender 2.5 is slower because of the fully python GUI.
The GUI in 2.49 was hardcoded in C.

I’d rather have blender slower but more flexible then faster and stiff.

The fact that irritates me most:
On one hand:
The 2.5x series is far from perfect. There are bugs here, slowdowns there… Some tools are missing. The UI (for instance horizontal panels) is still incomplete and (to me) uses too much screen estate.
Some areas have taken a step back (IMHO): i think of pyconstraints

On the other hand:
2.6x is already on its way
The whole cycles stuff is sucking up a huge degree of attention
There are all these salad branches.

Why not stop all the frantic devellopping, consult the users, vote (?) and make 2.5x stable, quick, reliable, FINISHED in one word before we run to next base ?

No its not, I think is a bit unfair. Cycles has one person developing it Brecht and he works on it only when time allows.I think the impact it has on the rest of 2.5 or 2.6 is minimal. If people(general users) are excited about it, its because its a really cool project.

Report the bugs! You can do that here: http://projects.blender.org/

If nobody reports the bugs, nobody will fix them.

I think that’s exactly what ton wants, except consult users and vote :), but there are so much code branches/patches waiting to be merged, not talking about next open project …

I had this problem too, my old 2.49b made animations were sluggish as hell in 2.5 so I stuck with 2.49b. In my case the problem is the 2.5 outliner, when I set the outliner to show “current scene”, “active layer” or close the outliner the speed is back to 2.49b. Default is set to show “all scenes”, and my older Blender files have multiple scenes with a lot of objects.

P.S. I cant comment on UI performance when sculpting because I never sculpt in Blender.

  • 2.5x animation system does many many strings lookups on properties, where 2.4x used a fast switch statement (we could cache lookups but so far not).
  • Moving vertices from python is ~5x slower then it was in 2.4x, IIRC. because of update functions being called after each.
  • 2.59 drawing a single button gives over 500 glVertex2v calls (32 verts per button, drawn 8-10 times each with jitter to get fake AA effect)
  • compared to 2.4x there are more loops over objects with the animation system, particle system - loop over all objects to check what keyframes to draw in the timeline for eg - in 2.4x we kept these kinds of loops to a minimum.
  • 2.5x rna api does many string lookups while drawing the UI.
  • python3.x has all strings unicode, but not blender, so it you want to draw a sting in blenders UI you can get 1-2 conversions per draw:
    utf8 (blender/C) -> unicode (py var in your script) –> utf8 (blender/C which draws).
    For static strings python caches the unicode -> utf8 so its not all that bad.
  • Undo being used for operator redo - this basically saves and loads the file each time in memory - crazy! - but hey, it works mostly :slight_smile:
  • UI layout being written in python is of course far slower then C.
  • some libs - mainly collada are huge, blender still can compile into <10mb, 3mb if you disable almost everything, but for users who don’t build we’re getting bloated because of extra libs.

These are the words of ideasman, one of Blender developers. So I was right when I wrote that I always had a feeling Blender 2.5x is permanently busy with something (and therefore slower). I’m glad they are aware of all the issues of Blender 2.5x, frankly I was really worried hearing so few complaints from the community. Everything was “awesome” which is not true (at least which is not the whole truth).

+1 Horizontal toolbars, +1 floating panels. I GREATLY miss both.
As to the toolbar, merely being able to add, move, and rearrange buttons would be very very nice. Adding and removing them was there in early 2.5x, but was removed for some reason.

  • 2.59 drawing a single button gives over 500 glVertex2v calls (32 verts per button, drawn 8-10 times each with jitter to get fake AA effect)

Does that mean that if I disable Text Anti-aliasing in the Preferences viewport redraw will be faster?

Or if I turn off shading of interface elements?

Hi All, its a bit frustrating to see blender get worse - but I think you guys could go about this a bit more usefully.

I realize what I’m about to suggest is work, and more trouble then complaining on a forum, but rather see this complaining be turned constructive.

So, you say 2.5x is slow.

  • Make test file which is slower in 2.5x then 2.4x
  • How do you measure speed? - Some cases setting FPS to 120 or so then seeing what value it can manage works ok.
  • Strip out aspects of the scene until you figure out roughly what it is, do a little trouble shooting,
    ** Is it drawing - test in boundbox mode, change screensize.
    ** is it UI / OpenGL ? - make fullscreen, make tiny, test with UI in view/ out of view.
    ** Is it you’re system? - try same test on a different system, preferably with different hardware.

Once you’ve done all this you should have a rough idea what is slow and a test file.

You can now point to it and say “2.5x sucks because this file is XX% slower” - Then a developer can take a profiler and work out why.

Since with the current complaints its a bit vague as to what is wrong exactly, Id be happy to run some files through a profiler if anyone has a good testcase.

@FreeMind, while not wrong - the UI in python is slower, I’m pretty sure its not a bottleneck, you can test quick and see if removing all python scripts from blender speeds up the file :).

No, this is button drawing code, its done when the buttons have no text at all, I’ve since improved this to use vertex arrays - it still draws far too much but a bit more efficiently at least.

This is only an issue for Windows, we used Linux with NFS.

The central server stored all assets in SVN and artists worked local checkouts and committed their work when done.

its a bit frustrating to see blender get worse

Isn’t that a very pessimistic approach ?
Every time i have to re-use 2.49 (old files including some animation data mostly), I feel that 2.5x is such an immense step forward…

I forgot to mention one particularly annoying thing for me in 2.5x: the PyConstraints system.
I loved the way it worked in 2.49: create a PyDrivers.Py file and drop any python function you like in ther, and pfffeewww, done.
I strongly dislike that “variable” system, and i have yet to understand why it had to change, and how the new system is better. I feels so unnecessary complicated now (to me…)

I like the development of Blender 2.5 but would like to share some info with you and contribution:

  • Some incovenient is slightly longer and heavier compared to the version 2.49 can be due to the dependence of the graphics card, there is no way to be more independent and find the fastest algorithm?

  • Workflow and interface: still fast but not as much as version 2.49, this is a little tight (need some space?) And the buttons between icon and text should be better organized to be more logical, or lighter to facilitate exchange

  • Modeling: some idea as a new way to model is to draw some curved line (polygon with Subdiv, or b-spline) to form the outline (eg a face with different line orientation) and then it generates a 3D mesh so as a “morphology” and to change precisely, is moved by vertex or line and the curve is kept

  • Particle effect: instead of creating temporary file, it is best to create mathematically with built-in function to generate a movement or something else?

  • Cycles: since it is unbiased, we can control the light, shadow, color, material so independant with node?

  • Sound: f-curve editor in 3D with adjustable volume?

As i have used the Blender sculpt mode recently instead of Sculptris for testing, it reminded me of an annoyance with 2.5x

A great feature of Blender 2.5x Sculpt Mode is the Fast Navigate, that once ticked allow you to rotate around your high poly model using a much lower multires (unfortunately will do nothing if you’re not using a multiresolution model to sculpt).
That’s really great as it allow to really rotate quickly and smoothly around your work., without the heavy pain of what happens in Object Mode that is insanely slow at high poly when rotating around.

But, and that’s the irritating fact : the Fast Navigate feature does not take in account the zoom in/ zoom out that you will do constantly when sculpting.
Meaning that it’s really painfully slow at high poly, i wish zoom in/out was included in what the Fast Navigate does, it would improve the feel a lot.

Here’s a small comparison of how slower Blender 2.5x is than Blender 2.49b. Navigation in viewport, basic operations (I skipped modelling because there’s no bmesh so I should not talk about it), moving objects from one layer to another - I guess the conclusion is obvious (watch when I hit a keyboard and when result occurs). I used several new Blender builds from graphicall (all trunks) and the results were the same. I used Windows XP 64 bit NVIDIA GeForce 9600 GT Itnel® Core™ i7 CPU 920 @ 2.67GHz 8GB RAM for the purpose of this movie.

I agree. I think change is always good, regardless of the fact that we as humans are often not inclined to accept it at first. Then when we go back to the old ways, it always seems so awkward and old-fashioned, doesn’t it? :slight_smile:

butterfly23 - I believe Blender takes a giant leap forward when it comes to some special features (like tracking), but it takes a step back when it comes to fundamentals (workflow in general).

I must say that with the latest version of Blender things look a bit better. The speed of 3d View is almost the same as in 2.49b but still UV editing (in UV/Image Editor) is slow as hell.

Moreover I found another irritating fact about 2.6. When you work in UV/Image Editor and you Pack Island you have to go to the tool shelf of 3d View to set the distance between packed islands. Why not do this in UV/Image Editor?