Revision b36514a by Daniel Genrich April 19, 2009, 18:18 (GMT) |
Booleans: - Enable e.g. subsurf before boolean modifier - Fix editmode crash |
Revision 904483c by Daniel Genrich April 19, 2009, 17:47 (GMT) |
Booleans: Should work with modifier stack now. Please report (new) problems. Thanks |
Revision 6bc162e by Campbell Barton April 19, 2009, 17:29 (GMT) |
BGE Python API removed redundant (PyObject *self) argument from python functions that are not exposed to python directly. |
Revision fe08da3 by Benoit Bolsee April 19, 2009, 17:26 (GMT) |
BGE: fix Pyfrom_id to work on w64. |
Revision f1979f4 by Brecht Van Lommel April 19, 2009, 17:12 (GMT) |
RNA: * Wrapped HeaderType/Header. * Some tweaks to get type properties wrapped with less code. * Made Panel space and region types enum instead of string. |
Revision 7f15445 by Daniel Genrich April 19, 2009, 16:35 (GMT) |
Fix for libopenjpeg to enable win64 compile (is in their tracker and will most likely be included in next release) |
Revision 7dbc9dc by Campbell Barton April 19, 2009, 14:57 (GMT) |
BGE Python API cleanup - no functionality changes - comments to PyObjectPlus.h - remove unused/commented junk. - renamed PyDestructor to py_base_dealloc for consistency - all the PyTypeObject's were still using the sizeof() their class, can use sizeof(PyObjectPlus_Proxy) now which is smaller too. |
Revision adff6ae by Brecht Van Lommel April 19, 2009, 13:37 (GMT) |
RNA: Generic Type Registration The Python API to define Panels and Operators is based on subclassing, this makes that system more generic, and based on RNA. Hopefully that will make it easy to make various parts of Blender more extensible. * The system simply uses RNA properties and functions and marks them with REGISTER to make them part of the type registration process. Additionally, the struct must provide a register/unregister callback to create/free the PanelType or similar. * From the python side there were some small changes, mainly that registration now goes trough bpy.types.register instead of bpy.ui.addPanel. * Only Panels have been wrapped this way now. Check rna_ui.c to see how this code works. There's still some rough edges and possibilities to make it cleaner, though it works without any manual python code. * Started some docs here: http://wiki.blender.org/index.php/BlenderDev/Blender2.5/RNATypeRegistration * Also changed some RNA_property and RNA_struct functions to not require a PointerRNA anymore, where they were not required (which is actually the cause of most changed files). |
Revision 8d2cb5b by Campbell Barton April 19, 2009, 12:46 (GMT) |
BGE Python API This changes how the BGE classes and Python work together, which hasnt changed since blender went opensource. The main difference is PyObjectPlus - the base class for most game engine classes, no longer inherit from PyObject, and cannot be cast to a PyObject. This has the advantage that the BGE does not have to keep 2 reference counts valid for C++ and Python. Previously C++ classes would never be freed while python held a reference, however this reference could be problematic eg: a GameObject that isnt in a scene anymore should not be used by python, doing so could even crash blender in some cases. Instead PyObjectPlus has a member "PyObject *m_proxy" which is lazily initialized when python needs it. m_proxy reference counts are managed by python, though it should never be freed while the C++ class exists since it holds a reference to avoid making and freeing it all the time. When the C++ class is free'd it sets the m_proxy reference to NULL, If python accesses this variable it will raise a RuntimeError, (check the isValid attribute to see if its valid without raising an error). - This replaces the m_zombie bool and IsZombie() tests added recently. In python return values that used to be.. return value->AddRef(); Are now return value->GetProxy(); or... return value->NewProxy(true); // true means python owns this C++ value which will be deleted when the PyObject is freed |
Revision d880257 by Joshua Leung April 19, 2009, 12:26 (GMT) |
Graph Editor: UI bugfixes * Fixed a few alignment/size issues * Number buttons work nicely again. Added temporary define for floating point limits here... |
Revision c94a8ad by Joshua Leung April 19, 2009, 10:44 (GMT) |
RNA - F-Curve Modifier Wrapping * Separated F-Curve specific wrapping out to its own file * Wrapped some F-Curve Modifiers (others to follow shortly) |
Revision 92cea7c by Campbell Barton April 19, 2009, 06:48 (GMT) |
KX_MeshProxy "numPolygons" and "numMaterials" attributes were using the "materials" attribute function, error made recently when converting attributes. |
Revision d2ec468 by Campbell Barton April 19, 2009, 06:29 (GMT) |
Hidden faces were not rendering displayed in the game engine, only the invisible face flag should be used for this. Hiding faces is a editing option like selection and should not change rendering, it wasn't even working right because meshes without UVs ignored it. I thought this was needed for compatibility with old files but just noticed this messes up 2 of the files in demos-2.42.zip |
Revision e461121 by Nathan Letwory April 19, 2009, 00:09 (GMT) |
BPy * access to sample buffers count of Lamp |
Revision faef9f0 by Nathan Letwory April 18, 2009, 17:16 (GMT) |
SCons * some misc changes, mainly cleaning and style unification that were lying around |
Revision 629c4bf by Andrea Weikert April 18, 2009, 10:08 (GMT) |
2.5 MSVC9 projectfiles * long time due: copy the executables to the install/msvc9 or install/msvc9d dir instead of keeping them in the source tree in the bin folder! * copy the new ui scripts to the install dir |
Revision 53fd384 by Benoit Bolsee April 18, 2009, 09:14 (GMT) |
BGE: restore a feature that was lost in 2.48: sharing of display lists between duplicated objects. |
Revision 73f4401 by Andrea Weikert April 18, 2009, 08:40 (GMT) |
2.5 MSVC9 projectfiles - added editors/keyingsets.c |
Revision bac34bc by Nathan Letwory April 18, 2009, 00:26 (GMT) |
2.5 / win64 * make sure right libname is used for gettext. |
Revision df8cf26 by Campbell Barton April 17, 2009, 20:06 (GMT) |
Added m_zombie to the base python class (PyObjectPlus), when this is set all the subclasses will raise an error on access to their members. Other small changes... - KX_Camera and KX_Light didnt have get/setitem access in their PyType definition. - CList.from_id() error checking for a long was checking for -1 against an unsigned value (own fault) - CValue::SpecialRelease was incrementing an int for no reason. - renamed m_attrlist to m_attr_dict since its a PyDict type. - removed custom getattro/setattro functions for KX_Scene and KX_GameObject, use py_base_getattro, py_base_setattro for all subclasses of PyObjectPlus. - lowercase windows.h in VideoBase.cpp for cross compiling. |
|