Page MenuHome

Blender becomes a lot much slower with parentheses in driver expression
Closed, ArchivedPublic


System Information
Operating system: Windows 10 - 64bits
Graphics card: GeForce RTX 2070
Processor: AMD Ryzen 7 2700X (3.7 GHz)
Ram: 32.0 Go

Blender Version
Broken: (v2.80, Release Candidate)

Short description of error
Hello !
On my main project I work with a lot of drivers for my rigs and I use a lot of math. but in the expression of my driver when I add parentheses blender becomes a lot much slower.. :/


Exact steps for others to reproduce the error

  • Open the file
  • Play Animation with Eevee Render
  • Select Armature and go in pose mode
  • Add Driver on X rotation on the bone d_World (The big in center on the floor)
  • Remove driver variables and change driver expression for 1+2 (On my compunter, 1080p full screen Blender turn at 60fps)
  • Change driver expression for (1+2) (On my compunter, 1080p full screen Blender turn now at 9fps...)



Event Timeline

Loux (BleuRaven) updated the task description. (Show Details)
Loux (BleuRaven) updated the task description. (Show Details)

Hi @Loux (BleuRaven)

Could you mention the performance compared to Blender 2.79
Blender 2.80 recognizes several basic expressions and evaluate these expressions in C in stead of Python, what is way much faster.
Parentheses are not part of these expressions and will be evaluated in Python.
rBbf2a54b0584c: Support evaluating simple driver expressions without Python interpreter.

If this is the case than this is not a Bug, but how the system is designed to work.

Sybren A. Stüvel (sybren) triaged this task as Needs Information from User priority.Jul 18 2019, 2:12 PM

Oh ok I understand better, Thanks
I can not test with Eevee Render in Blender 2.7 so it works in both cases at 60 fps
I think it would be useful to add a indication in driver Editor to tell the user if his expression is compute with Python or C

Bastien Montagne (mont29) closed this task as Archived.
Bastien Montagne (mont29) claimed this task.

Thanks, not a bug then, archiving.