so extended it so Simon's redefinition also occurs whenever
FP_INFINITE isn't defined (don't know why setting infinity
equals to 1 would be a good thing though)... maybe the author
might choose a more portable method for doing this.
Now Blender.NMesh.PutRaw() doesn't destroy vertex color info anymore.
Both exppython's NMesh.c and bpython's opy_nmesh.c were updated.
* Minor changes in other files.
- Trying to fix linking problems in OSX;
- Making module .Get functions behave like the ones in Blender 2.25 - 2.27
(Guignot pointed the incompatibility);
- Included more types to Blender.Types;
- Found by luck and corrected two bugs that were making Blender crash;
- Added/updated some simple functions.
When a script that used setAttr for Camera Data objs (the bug also
affected some other modules) was executed multiple times, Blender
would crash after, let's say, the first 5 or 6 tries. Problem, as
Guignot pointed, was with reference counting. Should be ok now, all
affected modules were fixed.
* The Scene module is now "complete" (= 2.25).
* Made some necessary updates to Object and NMesh.
Added material and image handling/hooks and the constant dictionaries.
Changed Image.h and Material.h to only have public declarations, so
NMesh could include them.
Jacques Guignot (guignot) sent updated files for his Curve module.
* Module Armature (and its submodule Bone) added:
Jordi Rovira i Bonet (bandoler) contributed both modules, which
are NEW additions to Blender Python, not available in Blender 2.27.
* Added function to NMesh.c:
Jordi again. He added the function NMesh_getVertexInfluence().
Found that syntax errors in scripts were giving SIGSEGV, my mistake.
* Added new helper type: rgbTuple.
This is used to represent and deal with rgb color triplets in modules
like Material and Lamp. Updated Lamp module to use it.
of just the selected object(s). This bug was pointed out by
Jacek Poplawski.
* If there's already a PyObject of a certain object available, then don't
create a new one, just return the specified object.
* Updated the Object_getData function to return correct objects. So far it can
return objects of type Camera, Curve, Lamp and Object.
time.
* Created the M_ObjectCheckPyObject and M_ObjectFromPyObject functions. These
are needed for interfacing to other modules.
* The Object methods have been created. Not all of them are implemented yet.
Partially implemented. Most of it comes from opy_nmesh.c, plus needed
changes to integrate in into exppython.
* Added helper submodule vector, needed by NMesh.
* Minor changes in other files.
Callbacks registered with Draw.Register in Python are called now.
That should fix submodule Blender.Draw.
* Added a few other missing functions to BPY_interface.c
* Finished implementing Get() function for Camera, Lamp, Image and Text:
Both the .Get(name) and .Get() cases are handled now.
* Added function Blender.ReleaseGlobalDict():
This function should give script writers control over whether the
global Python Interpreter Dict should be cleared after the script is
run (default is to clear). This is a test.
Most of the code comes from bpython/intern/opy_window.c, but two
new functions were added, to access the file and image selector
windows in Blender.
* Added submodules Draw (gui) and BGL (OpenGL wrapper):
The code comes from bpython/intern/opy_draw.c, with minor changes
to integrate it in the new implementation.
* Made changes to Camera, Lamp and Image submodules:
The implementation was improved. These files should be good
starting points for interested new coders to look at, now.
* Renamed interface.[ch] to EXPP_interface.[ch] to avoid conflict:
There is another interface.h file in source/blender/include.
* Split Blender.c (created Blender.h)
* Followed a naming convention suggested by Willian for Modules and Classes.
* Implemented New, Get and GetSelected functions for the Object module.
* Implemented most of the attributes in the Get and Set functions for the
Object module.
* Hopefully fixed a link error on OS X.
Declared g_blenderdict externally in modules.h and moved the real
declaration to Blender.c
* Implemented BPY_end_python function.
* Implemented error handling. This results in rerunning a script after an
error has occurred. No need to restart blender anymore.
* Camera module supports dir()
* variable assignment now calls the Python equivalent function - this has
type checking and should be safer now.
* Implemented the Lamp module. Used the Camera module as a template.
* Implemented the Image module.
* Added EXPP_ClampFloat and EXPP_intError functions to gen_utils.[ch]
* Implemented 'constant' object.
gen_utils.c (GetObjectByName).
* Blender.link, Blender.bylink and Blender.event should work. Somehow the
only event coming through now is only REDRAW.
* Added include path to /intern/guardedalloc
Michel
* Object.Get("") should work.
* Many variables from module Object are implemented.
* Updated build environment to generate more warnings (-Wall)
Michel
wrapper functionality by hand.
* Removed the swig files (*.i and *_wrap.c)
* Created initial datablock functionality. Most of it has been copied from
the old implementation.
* Created some general functions in gen_utils.[ch]
* Blender.Get(), Blender.Set() and Blender.Redraw functions should work in a
script now.
* Started implementation on an Event function call (BPY_do_pyscript)
Michel
Blender.
* Moved api2_2x/interface.c to ./BPY_interface.c
This will be the general api layer from which all variants of the Blender
api. Currently only the 2.2x variant is initialised.
* Used swig (www.swig.org) to create Python wrappers for a couple of dummy
functions.
* Started implementation of the Blender and Blender.Object modules.
Michel
Using this flag the following component is build:
source/blender/python
and the following components are not build:
intern/python
source/blender/bpython
Without specifying the flag, things act as they used to do.
Also created a dummy interface.c file and created the directories
which will contain the replacement code for:
- intern/python
- source/blender/bpython
Michel