of zr). This struct was never written to file and the new 'int based'
MFace can be used in it's place. Some removal of redundant code could
perhaps be done now (I didn't do any though, just "s/MFaceInt/MFace/").
- support for quaternions, euler, vector, matrix operations.
- euler supports unique rotation calculation
- new matrix memory construction and internal functions
- quaternion slerp and diff calculation
- 2d, 3d, 4d vector construction and handling
- full conversion support between types
- update to object/window to reflect to matrix type
- update to types/blender/module to reflect new module
- tiny harmless change in module Blender.Material's *doc*.
Aphex: tested your fix for windows (thank you -- and Bill Baxter for reporting):
It doesn't break anything here (linux). So probably no need for #ifdef's.
-- fixing a last minute bug: scripts w/o guis that called the file selector were
not being checked for errors, which could cause crash dumps upon exiting.
-- docs: updates for Draw (fixed example) and Material (added tex related methods docs)
Scripts:
-- added some more scripts, all I could get in shape in time (at least they export / import back).
Only tested on linux.
* Blender.Object.setDrawMode does not work. I had accidentally switched the
variables for setDrawMode and setDrawType. This implied that _both_
functions did not work correctly. The functions getDrawMode and getDrawType
use the correct variables.
- G.f's G_DEBUG flag was being erased in blenkernel/intern/blender.c's
setup_app_data:
G.f= bfd->globalf
// added a line above it to fix this:
if (G.f & G_DEBUG) bfd->globalf |=G_DEBUG;
G.f= bfd->globalf;
BPython:
- debug info now only shown if Blender is started with '-d' option
- added ~/.blender/scripts to modules sys.path
- added two new functions to Blender.sys: basename and splitext
- added doc for Blender.sys, updated other docs
- local tentative fix for BLI_gethome(), which returns '.blender' appended only
on some Windows systems. Created bpymenu_gethome() to check and
add '.blender' if needed.
- changed name: .Bpymenus to Bpymenus as suggested by GSR
- trivial additions:
Object module: added methods .set/getSize
Armature/Bone module: bone.set???() methods now accept both n
floats or a list of n floats: fff or (fff). All these additions were requested
by user Carlos Lopez (Klopes).
- New doc: for module Registry.
-- removed struct Script (DNA_script_types.h) from makesdna to blender/include/BPI_script.h
(BPI meaning Blender Python-related external Include file).
Had agreed with Ton that makesdna was not the proper place for it.
-- fixed two small warnings in Ipo.c (variables might be used uninitialized)
-- fixed a bug reported on blender.org's python forum by Wim Van Hoydonck (aka tuinbels):
Blender would hang if a script failed. My fault, accidentally put a node=node->next type call outside the while loop check, so it never ended.
With makesdna/DNA_script_types.h removed and include/BPI_script.h added, msvc projectfiles will need to be updated. Sorry to do it now, but I promissed I'd fix this before next release.
- now the file .Bpymenus is in ~/.blender/, please delete the old one
- both ~/.blender/scripts/ and (if set) user pref scripts dir are scanned for scripts
- 2 scripts of the same group with the same name, one in each dir: user pref overwrites the other's entry
- fixed the problem with trailing backslash, was my fault (used NULL instead of "/" for relbase in BLI_make_file_string
- slightly changed msgs to be less verbose and parsing to be more forgiving
- if a script registers with a wrong group, 'Misc' is used instead
- 'Blender' tag is now checked, gives a warning (notice) msg if script is newer than Blender program
Blender.NMesh module and doc:
- added vertex.sel var to get/set selection state of vertex.
- NMesh.c added support for materials updating while converting a python NMesh to a Mesh object
- Object.c added support for materials updating in Link() and shareFrom() when two objects share a mesh linked to a material
Materials are exported the best we can do by now. It will look almost as in
blender except for the missing procedural textures and some minor issues.
You have to tweak normal modulation amount to get the desired result cause
is not the same in yafray.
We added a panel in render space to adjust some yafray settings (GI and so)
Also we export transparency and reflection using new raytracing settings,
but that will be changed and improved soon.
Remember that you have to set YFexport path in user defaults and yafray must
be on path (version 0.0.6)
We added the "yafray" button to activate all this stuff in the render window.
Panel and settings are only shown when checked.
So now when activated the code calls yafray export instead of the internal
renderer and finally the resulting image is loaded back into render window's
buffer. So animation is also possible and results can be saved using blender
usual scheme.
- Fixed small typo in doc file Object.py, reported by user Bill.
- Fixed bug #803:
Bug #803's Summary: print, type() or BezTriple broken
Trying to print type(BezTriple) was crashing Blender because
that type wasn't being initialized to PyType_Type. The other
problem is that the getName method for ipocurves only works for
object ipos. A warning was added for when users try to use it
with other blocktypes, we'll later update ipo related stuff in
bpython to work for all types.
This commit moves the 2 undefined references to BPY_interface.c and
changes things a little, hopefully fixing the problem. I had to add a new dir,
source/blender/include/ to auto*'s Makefile.am in source/blender/python/.
Thanks Chris for the report, and Jiri, for adding a missing declaration.
- add a new space: Space Script
- add a new dna struct: Script
- add these two properly everywhere they are meant to
It's not a tiny commit, but most of it is ground work for what is still to be done.
Right now the benefits should be: freeing the Text Editor to be used in a window even while a script w/ gui in "on" and letting more than one currently running script w/ gui be accessible from each window
Some files are added, so some build systems (not autotools) will need updates
- enabled all the Lattice methods in Object.c
- added Lattice types to Types.c
- add Lattice initialization to Blender.c
- updated makefile for new lattice file
- added Lattice.c/Lattice.h