Age | Commit message (Collapse) | Author |
|
To branch builders: From this revision Python 3.2 will be used.
Don't forget svn update in the "lib" directory as well.
|
|
compile time option which enables extra safety checks.
since this is noticeably slower I rather not enable by default yet.
|
|
* Made a local fix for a compilation error with VC++ 2008 and
CMake, reported to the bf-committers mailing list:
http://lists.blender.org/pipermail/bf-committers/2010-September/028643.html
|
|
|
|
|
|
|
|
|
|
|
|
https://svn.blender.org/svnroot/bf-blender/trunk/blender
|
|
reported by dail in IRC #blendercoders.
|
|
* Renamed AUD_Handle to AUD_Channel in the C-API to prevent errors with the C++ version of AUD_Handle.
* Added Python API!!!
|
|
|
|
https://svn.blender.org/svnroot/bf-blender/branches/soc-2008-mxcurioni (r22789) and
https://svn.blender.org/svnroot/bf-blender/trunk/blender (r23338)
with the "Ignore ancestry" and "Ignore line endings" options enabled (using
TortoiseSVN on Windows).
After the merge operation, all changes (i.e., deletion) in source/blender/freestyle/
were reverted in order to keep the primary source tree of the Freestyle renderer.
|
|
* bring back 'player' libtype, after investigation with ideasman.
scons/mingw works nicely, for some reason msvc fails to link still, will look further into it.
|
|
NOTE: this needs changes to stubs.c, but need to check with ideasman_42 how to fix with cmake. Probably linking order issues, but stubs.c currently generates warnings for msvc (redefinition of funcs) and errors for mingw (same redefinitions). Removing the offending lines from stubs.c fixes that.
|
|
* further cleaning of 'player' stuff. Now only 3 libs are remaining, of which ideally the stubs lib will be fixed at some point, fading away into the dark history of not-so-nice code. The current blenderplayer part is still a little bit hackish, I'll see if I can find a better alternative, for now it works good enough.
|
|
* first working changes to get blenderplayer linking
* blenderplayer/ moved into source/ (CMakeLists.txt changed for that too)
* added externs for bprogname to gp_ghost, so that it links properly
|
|
* ensure all SConscripts are ready for win64-vc (where necessary).
* ensure we have proper _DEBUG flag for Python when we're doing a debug build.
* some cleaning up of linking etc.
* ensure /EHsc is there for game engine modules.
|
|
* Update cmake and makefiles to link python generic.
* Fix game engine building for cmake and makefiles.
* Fix compile error with py 3.x, due to 2.x compat fix.
|
|
|
|
would fail because bpy_internal_import.c wasnt being included.
(scons only)
|
|
* Mathutils, Geometry, BGL, Mostly working, some //XXX comments for things to fix with py3
python import override (bpy_internal_import.c) so you can import python internal scripts from the BGE and running blender normally.
|
|
-r19323:HEAD
Notes:
* blenderbuttons and ICON_SNAP_PEEL_OBJECT were not merged.
|
|
New priorities for most libs, at least core. This is still for Blender proper, BGE and such still to come.
|
|
"operator.ED_VIEW3D_OT_viewhome(center=1)" calls the operator, converting keyword args to properties.
Need a way to run scripts in the UI for useful testing.
Still need to deal with operator exceptions and verifying args against operator options.
Added temporary WM_operatortype_first() to allow python to return a list if available operators, can replace this with something better later (operator iterator?)
|
|
* Matches the C/RNA api structure
* Thin wrapper ~(600 lines)
* No functions specific to any blender object type.
* Defines 2 types, BPy_StructRNA and BPy_PropertyRNA.
* Python 3.0 target (compatible with python 2.4,5,6)
* http://wiki.blender.org/index.php/BlenderDev/Blender2.5/PyRNA - continue docs/discussion here.
Todo
* Collection iterators
* Write access to data
* Define how constants should be accessed (as strings or some special type)
* Solve the "Python keeping invalid blender pointers" problem.
This cant just be solved in the py api - we need blender to notify when ID's are removed
Examples
Here are some examples that work with the current implementation of the api.
rna.lamps["Lamp.006"].energy -> (1.0)
rna.lamps["Lamp.007"].shadow -> ("NOSHADOW")
rna.materials.keys() -> ['flyingsquirrel_eye', 'frankie_skin', 'frankie_theeth']
rna.scenes["hud"].objects["num_text_p2_4"].data.novnormalflip -> False
rna.meshes["mymesh"].uv_layers.keys() -> ['UVTex', 'UVTex']
rna.meshes.items()
For a dump of yo-frankie level see - http://pasteall.org/3294/python
Notes
* Added python back, can only execute scripts from the command line with -P script.py
* bpy_interface.c is just enough functionality to run a python file.
|
|
|
|
- cleanup of boolean usage - use True and False now instead of 'true'/'false' or 0/1
- changed SConscripts accordingly
|
|
|
|
errors
|
|
the features that are needed to run the game. Compile tested with
scons, make, but not cmake, that seems to have an issue not related
to these changes. The changes include:
* GLSL support in the viewport and game engine, enable in the game
menu in textured draw mode.
* Synced and merged part of the duplicated blender and gameengine/
gameplayer drawing code.
* Further refactoring of game engine drawing code, especially mesh
storage changed a lot.
* Optimizations in game engine armatures to avoid recomputations.
* A python function to get the framerate estimate in game.
* An option take object color into account in materials.
* An option to restrict shadow casters to a lamp's layers.
* Increase from 10 to 18 texture slots for materials, lamps, word.
An extra texture slot shows up once the last slot is used.
* Memory limit for undo, not enabled by default yet because it
needs the .B.blend to be changed.
* Multiple undo for image painting.
* An offset for dupligroups, so not all objects in a group have to
be at the origin.
|
|
Freestyle module is added. The following modules are implemented: BinaryPredicate0D, BinaryPredicate1D, Id, Interface0D, Interface1D. I added a Convert module to help in the creation of Python objects for Freestyle's data structures. I also added a missing file for guarded_alloc needed for compilation on Windows.
|
|
|
|
See http://wiki.blender.org/index.php/BlenderDev/PyNodes and
http://wiki.blender.org/index.php/BlenderDev/PyNodes/API
For current documentation.
Very very big thanks go to William Germano for fixing the memory issues left
and for improving on the code.
In the coming time documentation will be finalised and further stabilising
of PyNodes is to be expected.
|
|
|
|
* some lib renaming
|
|
|
|
adding new windowmanager module, and the first bits of new editors
module.
|
|
scons.
Can someone verify that other build systems are also including this?
|
|
* make blender_python understand we're doing a debug build when BF_DEBUG=1. Otherwise
we get linking errors with scons/mingw
|
|
SceneRender stuff to work. Strange that it worked ok on his computer without this.
|
|
* This commit is all of the rewrite work done on the SCons system. For
documentation see doc/blender-scons.txt and doc/blender-scons-dev.txt.
Also http://mediawiki.blender.org/index.php/BlenderDev/SconsRefactoring
contains valuable information, along with what still needs to be done.
- linux, os x and windows compile now.
- files are compiled to BF_INSTALLDIR (see config/(platform)-config.py)
- NOTE: Jean-Luc P will commit sometime during the weekend proper
appit() for OS X. For now, copy the resulting binary to an
existing .app bundle.
- features:
- cleaner structure for better maintenance
- cleaner output during compile
- better handling of build options
- general overall speed increase
- see the wiki for more info
Cygwin, FreeBSD and Solaris systems still need work. For these systems:
1) copy a config/(platform)-config.py to ie. config/cygwin-config.py
2) set the proper defaults for your platform
3) mail me at jesterking at letwory dot net with you configuration. if
you need any modifications to the system, do send a patch, too.
I'll be giving first-aid today and tomorrow, after that it'll be all
regular development work :)
/Nathan
|
|
Here are my notes on things to look out for as potential problem
spots:
source/blender/blenkernel/intern/displist.c:
+ is initfastshade(void) supposed to be empty? I had
to make it empty to get the merged tree to compile.
source/blender/python/api2_2x/Armature.c:
+ went with the version that had Armature_getLayers()
source/blender/python/api2_2x/Object.c
+ went with the version of Object_getPose() from bf-blender.
(#ifdef 0-ed the other version)
source/blender/python/api2_2x/Pose.[ch]
+ had problems linking due to no Pose_Init() ... copied these
two files straight from bf-blender.
source/blender/src/drawview.c:
+ view3d_panel_properties() had things shifted a few things shifted
a few pixels, otherwise, things were painless
source/blender/src/splash.jpg.c:
+ went with bf-blender version (orange is dead)
source/gameengine:
+ went with bf-blender version -- does not compile due to IMB_rect* stuff,
Ton should look into this.
|
|
new BPy Pose files weren't added to Sconscript
|
|
made.
|
|
remaining effect type, it didn't make much sense to leave things
implemented in two separate files. Changes include:
* two bug fixes (the getChild() and getMat() methods were using floats
instead of shorts)
* performing clamping on input values
* implementing attributes using tp_getset
* merging Effect and Particle functions: the Particle module exists in
name only, with the Particle.New() and Particle.Get() functions
remaining for backward compatibility (they are in fact identical to
Effect.New() and Effect.Get() functions)
* update of doc/Effect.py (including remove all old references to wave
and build effects)
|
|
|
|
- Pontus Lidman contributed a new module: Blender.Key + access to key objects from NMesh, Lattice and Curve + docs (thanks and sorry for taking so long to check/commit the patch!)
- Allowing EVENT spacehandlers to call the file selector (scriptlinks in general are not allowed, but this special case should be able to). Requested by Paolo Colombo (thanks!)
- tiny doc update (Ken Hughes pointed an error in the space handlers example)
I didn't have time to update the Key module to follow the current bpython design, will do that later and also test it better than I did.
|
|
.
|
|
- added decimate modifier & removed old decimate interface
(currently lacks warning about destroying data, and there needs
to be a way for modifiers to return errors back to the interface)
- allow applyModifier to return NULL to indicate error
- unfortunately new decimate modifier means it does not know exact
number of faces in mesh (other modifiers may come before) and so
instead interface uses a percentage. if people need exact face
count slider then I will have to think of some hack to fit this
in. note that it does display the output face count so its possible
to tweak the pct to get what you want regardless.
- removed python Wave object
If you are bored now how much easier it is to implement something
like decimate as a modifier. Very few changes to interface, very
few entry points.
|