~/talk

Will it Blend? Writing A Custom Constraint Solver for Blender with Cython

Talkat PyCon US 2022 · 2022-04-27..05-03· [python]
links:none on file
slides:none on file

A custom Cython-based constraint solver called pymaxian integrates with Blender as an add-on and achieves near-instant convergence for thousands of constraints after releases the GIL and optimizations, reporting about a 100x speedup. The work includes C++ geometry helpers, pxd/pyx bindings, memoryviews for nogil array access, profiling with py-spy in Docker that pinpoints initialization as the hotspot, and a working Blender UI that visualizes hanging cloth form-finding.

AI-written summary · about

  1. 0:00Intro
  2. 0:23Agenda
  3. 1:51Software in the Built Environment What I Used It For • Building Analysis
  4. 3:45Physical and Digital Formfinding
  5. 4:34Constraint Solvers for 3d Geometry
  6. 6:28Why Cython?
  7. 7:38What is Cython? • Optimizing Static Compiler • Provides support for debugging in Python, Cython, and
  8. 8:00Toy Constraint Problem Constraints • Anchors (supports) - 10,21 Forces (loads) - 11
  9. 9:16Package Structure and Modules with Cython
  10. 12:20Compiling Cython
  11. 13:56Before you release the GIL...
  12. 15:20Releasing the GIL!
  13. 17:45Evaluating Cython performance - py-spy
  14. 19:55What is Blender?
  15. 20:56Adding your Cython package to Blender
  16. 22:28Blender Add-on Interface Creation Typical files
  17. 24:09Blender Properties
  18. 25:02Pymaxion - Blender Demo!
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.