woa this looks sexy! Daniel Salazar 3Developer.com
On Sat, Oct 15, 2011 at 1:19 AM, Campbell Barton <[email protected]> wrote: > Revision: 41023 > > http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41023 > Author: campbellbarton > Date: 2011-10-15 07:19:34 +0000 (Sat, 15 Oct 2011) > Log Message: > ----------- > - add template for defining custom driver functions. > - comment unused assignments. > > Modified Paths: > -------------- > trunk/blender/GNUmakefile > trunk/blender/source/blender/nodes/intern/node_exec.c > > Added Paths: > ----------- > trunk/blender/release/scripts/templates/driver_functions.py > > Modified: trunk/blender/GNUmakefile > =================================================================== > --- trunk/blender/GNUmakefile 2011-10-15 05:01:47 UTC (rev 41022) > +++ trunk/blender/GNUmakefile 2011-10-15 07:19:34 UTC (rev 41023) > @@ -233,7 +233,7 @@ > doc_py: > $(BUILD_DIR)/bin/blender --background --factory-startup --python > doc/python_api/sphinx_doc_gen.py > cd doc/python_api ; sphinx-build -n -b html sphinx-in sphinx-out > - @echo "docs written into: 'doc/python_api/sphinx-out/index.html'" > + @echo "docs written into: > '$(BLENDER_DIR)/doc/python_api/sphinx-out/contents.html'" > > > clean: > > Added: trunk/blender/release/scripts/templates/driver_functions.py > =================================================================== > --- trunk/blender/release/scripts/templates/driver_functions.py > (rev 0) > +++ trunk/blender/release/scripts/templates/driver_functions.py 2011-10-15 > 07:19:34 UTC (rev 41023) > @@ -0,0 +1,34 @@ > +# This script defines functions to be used directly in drivers expressions to > +# extend the builtin set of python functions. > +# > +# This can be executed on manually or set to 'Register' to > +# initialize thefunctions on file load. > + > + > +# two sample functions > +def invert(f): > + """ Simple function call: > + > + invert(val) > + """ > + return 1.0 - f > + > + > +uuid_store = {} > + > +def slow_value(value, fac, uuid): > + """ Delay the value by a factor, use a unique string to allow > + use in multiple drivers without conflict: > + > + slow_value(val, 0.5, "my_value") > + """ > + value_prev = uuid_store.get(uuid, value) > + uuid_store[uuid] = value_new = (value_prev * fac) + (value * (1.0 - fac)) > + return value_new > + > + > +import bpy > + > +# Add variable defined in this script into the drivers namespace. > +bpy.app.driver_namespace["invert"] = invert > +bpy.app.driver_namespace["slow_value"] = slow_value > > Modified: trunk/blender/source/blender/nodes/intern/node_exec.c > =================================================================== > --- trunk/blender/source/blender/nodes/intern/node_exec.c 2011-10-15 > 05:01:47 UTC (rev 41022) > +++ trunk/blender/source/blender/nodes/intern/node_exec.c 2011-10-15 > 07:19:34 UTC (rev 41023) > @@ -180,7 +180,7 @@ > > /* prepare group tree inputs */ > for (sock=ntree->inputs.first; sock; sock=sock->next) { > - ns = setup_stack(exec->stack, sock); > + /* ns = */ setup_stack(exec->stack, sock); > } > /* prepare all internal nodes for execution */ > for(n=0, nodeexec= exec->nodeexec; n < totnodes; ++n, ++nodeexec) { > @@ -198,7 +198,7 @@ > > /* tag all outputs */ > for (sock=node->outputs.first; sock; sock=sock->next) { > - ns = setup_stack(exec->stack, sock); > + /* ns = */ setup_stack(exec->stack, sock); > } > > if(node->typeinfo->initexecfunc) > > _______________________________________________ > Bf-blender-cvs mailing list > [email protected] > http://lists.blender.org/mailman/listinfo/bf-blender-cvs > _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
