Re:A developer’s introduction to 3D animation and Blender
by semi-extrinsic on Saturday October 17, 2015 @03:15PM
(#10405644)
I've done a bit of Blender Python scripting, and it's a bloody pain. The API is very much an afterthought, and it can't be much used by anyone. As an example, function calls in your script do different things based on which part of the UI has mouse focus. It's very easy to make loops eat all your RAM, hang everything for a few minutes and then segfault. I've even had it crash my X session. And the built-in IDE is crap. /rant
Re:A developer’s introduction to 3D animation and Blender
by 332451b on Saturday October 17, 2015 @03:31PM
(#10405717)
The mouse focus issue is more related to missing APIs. If you call operators (tools) from Python they do indeed depend on context, just like they would if you use them from a toolbar, menu or shortcut key. These are not intended to be used for scripting really, but they are available and sometimes the only way to do things because there is no equivalent API function available.
Re:A developer’s introduction to 3D animation and Blender
by semi-extrinsic on Saturday October 17, 2015 @05:22PM
(#10406175)
Probably yes. A really nice feature is that you can hover over a button and see the name of that Python function. Then it's hard to know if you're supposed to do it that way or not when scripting.
Another gripe I remember is that angles in the UI are specified in degrees and in Python they are specified in radians.
Re:A developer’s introduction to 3D animation and Blender
by 332451b on Saturday October 17, 2015 @05:37PM
(#10406238)
Yes, a big problem is indeed API documentation and making it easier to follow best practices.
Regarding angles, users want to see degrees in the UI, but the python functions like math.sin and math.cos and basically any other graphics code you find uses radians. Whatever solution is chosen is always going to make someone unhappy.
Re:A developer’s introduction to 3D animation and Blender
by berkut on Saturday October 17, 2015 @03:23PM
(#10405678)
Is this post 2.5? I thought (and I don't know the answer, hence why I'm asking) 2.5's interface was built on the Python API?
I tried doing some Python stuff with it in the 2.4 days and thought it was pretty poor as well, haven't tried since, but had (possibly incorrectly?) assumed 2.5 fixed this.
Re:A developer’s introduction to 3D animation and Blender
by semi-extrinsic on Saturday October 17, 2015 @05:19PM
(#10406164)
I did most of the stuff on 2.7 and late 2.6. I believe what you say is true though, the interface is built on top of Python, so every button in the UI corresponds to a Python function. That has both pros and cons, I guess.
Re:A developer’s introduction to 3D animation and Blender
by mwfunk on Saturday October 17, 2015 @09:32PM
(#10406894)
If an app, any app, crashes your X session, you should be far more upset at X or your graphics drivers than Blender.
For example, the tutorial starts by creating box, I'd love see the equivalent using code. Same goes for adding vertices, moving vertices.
Cheers!