== PyConstraints ==
authorJoshua Leung <aligorith@gmail.com>
Mon, 18 Jun 2007 07:41:21 +0000 (07:41 +0000)
committerJoshua Leung <aligorith@gmail.com>
Mon, 18 Jun 2007 07:41:21 +0000 (07:41 +0000)
commit01e8789f3f950a15aea9947ebadb1dcdcccf6a7e
tree6c9d3fa3b93d427728c1a0ce619f765227c9e677
parent770291b9ea1ec03d98b6bae4fd2a2d3f0091be41
== PyConstraints ==

At last! The ability to code constraints in Python. This opens up many interesting rigging possibilities, as well as making prototyping constraints easier.

* A PyConstraint script must begin with the line
#BPYCONSTRAINT
* It must also define a doConstraint function, which performs the core actions of the constraint.
* PyConstraints use IDProperties to store custom properties for each PyConstraint instance. The scripter can choose which of these ID-Properties to expose to a user to control the behaviour of the constraint. This must be done using the Draw.PupBlock method.

Credits to Joe Eager (joeedh) for coding the original patch on which this is based. I've made heavy revisions to large parts of the patch.

For more detailed information, and some demo scripts, see the following page:
http://aligorith.googlepages.com/pyconstraints2
13 files changed:
source/blender/blenkernel/bad_level_call_stubs/stubs.c
source/blender/blenkernel/intern/constraint.c
source/blender/blenkernel/intern/idprop.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/include/BIF_editconstraint.h
source/blender/makesdna/DNA_constraint_types.h
source/blender/python/BPY_extern.h
source/blender/python/BPY_interface.c
source/blender/python/api2_2x/Constraint.c
source/blender/src/buttons_object.c
source/blender/src/editconstraint.c
source/blender/src/header_text.c