Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-04-202.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender ↵Brecht Van Lommel
-r19323:HEAD Notes: * blenderbuttons and ICON_SNAP_PEEL_OBJECT were not merged.
2009-03-182.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender ↵Brecht Van Lommel
-r18677:19317 Notes: * Sequence transform strip uses G.scene global, this is commented out now, should be fixed. * Etch-a-ton code was most difficult to merge. The files already in 2.5 got merged, but no new files were added. Calls to these files are commented out with "XXX etch-a-ton". editarmature.c and transform_snap.c were complex to merge. Martin, please check? * Game engine compiles and links again here for scons/make/cmake (player still fails to link).
2009-02-26Py BGE APICampbell Barton
Python dir(ob) for game types now includes attributes names, * Use "__dict__" rather then "__methods__" attribute to be Python 3.0 compatible * Added _getattr_dict() for getting the method and attribute names from a PyObject, rather then building it in the macro. * Added place holder *::Attribute array, needed for the _getattr_up macro.
2009-02-21* removed typedefs that were not used (from anonymous enums and structs)Campbell Barton
* Missed some cases of using a 'char *' as an attribute * replace BGE's Py_Return macro with Pythons Py_RETURN_NONE * other minor warnings removed
2009-02-19BGE Python APICampbell Barton
Use 'const char *' rather then the C++ 'STR_String' type for the attribute identifier of python attributes. Each attribute and method access from python was allocating and freeing the string. A simple test with getting an attribute a loop shows this speeds up attribute lookups a bit over 2x.
2009-02-16SCons:Nathan Letwory
* giving compileflags, cc_compileflags and cxx_compileflags to BlenderLib() now actually overrides any other setting (so there's no unclarity when ie. conflicting options are being specified in REL_CFLAGS et al). These are set after either release or debug flags, but before any *_WARN flags (so those stay maintained). * add cxx_compileflags for GE parts on win32-vc to have better performance. * NOTE: if platform maintainers (OSX and Linux) could check and do the same for their systems. Not vital, but probably very, very much welcomed by GE users.
2008-12-252.5 / SCons / BGENathan Letwory
* this should bring back BGE with scons building. Tested on scons/msvc, will test scons/gcc in a bit NOTE: this is not WITH_BF_PLAYER yet.
2008-11-13Merge of trunk into blender 2.5:Brecht Van Lommel
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r12987:17416 Issues: * GHOST/X11 had conflicting changes. Some code was added in 2.5, which was later added in trunk also, but reverted partially, specifically revision 16683. I have left out this reversion in the 2.5 branch since I think it is needed there. http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16683 * Scons had various conflicting changes, I decided to go with trunk version for everything except priorities and some library renaming. * In creator.c, there were various fixes and fixes for fixes related to the -w -W and -p options. In 2.5 -w and -W is not coded yet, and -p is done differently. Since this is changed so much, and I don't think those fixes would be needed in 2.5, I've left them out. * Also in creator.c: there was code for a python bugfix where the screen was not initialized when running with -P. The code that initializes the screen there I had to disable, that can't work in 2.5 anymore but left it commented as a reminder. Further I had to disable some new function calls. using src/ and python/, as was done already in this branch, disabled function calls: * bpath.c: error reporting * BME_conversions.c: editmesh conversion functions. * SHD_dynamic: disabled almost completely, there is no python/. * KX_PythonInit.cpp and Ketsji/ build files: Mathutils is not there, disabled. * text.c: clipboard copy call. * object.c: OB_SUPPORT_MATERIAL. * DerivedMesh.c and subsurf_ccg, stipple_quarttone. Still to be done: * Go over files and functions that were moved to a different location but could still use changes that were done in trunk.
2008-10-02Python 2.4 should build with the game engine now, no thanks to python for ↵Campbell Barton
switching from char to const char
2008-09-20[#17600] char* -> const char*Campbell Barton
Thanks to Sean Bartell (wtachi), was causing many many warnings which distracted from the real problems.
2008-09-11BGE message python api could return a CList type or None which makes ↵Campbell Barton
exception checks annoying. just return an empty CList rather then None.
2008-07-30BGE patch: logic optimization part 2: remove inactive sensors from logic ↵Benoit Bolsee
manager. With this patch, only sensors that are connected to active states are actually registered in the logic manager. Inactive sensors won't take any CPU, especially the Radar and Near sensors that use a physical object for the detection: these objects are removed from the physics engine. To take advantage of this optimization patch, you need to define very light idle state when the objects are inactive: make them transparent, suspend the physics, keep few sensors active (e,g a message sensor to wake up), etc.
2008-07-01Checked all cases where PyArg_ParseTuple is used in blenders game engine and ↵Campbell Barton
made sure all will raise errors when called with invalid args.
2008-06-22BGE patch: add state engine support in the logic bricks.Benoit Bolsee
This patch introduces a simple state engine system with the logic bricks. This system features full backward compatibility, multiple active states, multiple state transitions, automatic disabling of sensor and actuators, full GUI support and selective display of sensors and actuators. Note: Python API is available but not documented yet. It will be added asap. State internals =============== The state system is object based. The current state mask is stored in the object as a 32 bit value; each bit set in the mask is an active state. The controllers have a state mask too but only one bit can be set: a controller belongs to a single state. The game engine will only execute controllers that belong to active states. Sensors and actuators don't have a state mask but are effectively attached to states via their links to the controllers. Sensors and actuators can be connected to more than one state. When a controller becomes inactive because of a state change, its links to sensors and actuators are temporarily broken (until the state becomes active again). If an actuator gets isolated, i.e all the links to controllers are broken, it is automatically disabled. If a sensor gets isolated, the game engine will stop calling it to save CPU. It will also reset the sensor internal state so that it can react as if the game just started when it gets reconnected to an active controller. For example, an Always sensor in no pulse mode that is connected to a single state (i.e connected to one or more controllers of a single state) will generate a pulse each time the state becomes active. This feature is not available on all sensors, see the notes below. GUI === This system system is fully configurable through the GUI: the object state mask is visible under the object bar in the controller's colum as an array of buttons just like the 3D view layer mask. Click on a state bit to only display the controllers of that state. You can select more than one state with SHIFT-click. The All button sets all the bits so that you can see all the controllers of the object. The Ini button sets the state mask back to the object default state. You can change the default state of object by first selecting the desired state mask and storing using the menu under the State button. If you define a default state mask, it will be loaded into the object state make when you load the blend file or when you run the game under the blenderplayer. However, when you run the game under Blender, the current selected state mask will be used as the startup state for the object. This allows you to test specific state during the game design. The controller display the state they belong to with a new button in the controller header. When you add a new controller, it is added by default in the lowest enabled state. You can change the controller state by clicking on the button and selecting another state. If more than one state is enabled in the object state mask, controllers are grouped by state for more readibility. The new Sta button in the sensor and actuator column header allows you to display only the sensors and actuators that are linked to visible controllers. A new state actuator is available to modify the state during the game. It defines a bit mask and the operation to apply on the current object state mask: Cpy: the bit mask is copied to the object state mask. Add: the bits that set in the bit mask will be turned on in the object state mask. Sub: the bits that set in the bit mask will be turned off in the object state mask. Inv: the bits that set in the bit mask will be inverted in the objecyy state mask. Notes ===== - Although states have no name, a simply convention consists in using the name of the first controller of the state as the state name. The GUI will support that convention by displaying as a hint the name of the first controller of the state when you move the mouse over a state bit of the object state mask or of the state actuator bit mask. - Each object has a state mask and each object can have a state engine but if several objects are part of a logical group, it is recommended to put the state engine only in the main object and to link the controllers of that object to the sensors and actuators of the different objects. - When loading an old blend file, the state mask of all objects and controllers are initialized to 1 so that all the controllers belong to this single state. This ensures backward compatibility with existing game. - When the state actuator is activated at the same time as other actuators, these actuators are guaranteed to execute before being eventually disabled due to the state change. This is useful for example to send a message or update a property at the time of changing the state. - Sensors that depend on underlying resource won't reset fully when they are isolated. By the time they are acticated again, they will behave as follow: * keyboard sensor: keys already pressed won't be detected. The keyboard sensor is only sensitive to new key press. * collision sensor: objects already colliding won't be detected. Only new collisions are detected. * near and radar sensor: same as collision sensor.
2008-04-17Patch from GSR that a) fixes a whole bunch of GPL/BL licenseChris Want
blocks that were previously missed; and b) greatly increase my ohloh stats!
2008-02-16patch 8235 8218 8211 added: various gameengine improvements, fixed windows ↵Benoit Bolsee
project files
2008-01-08* tweak linking priorities - should help for GCC usersNathan Letwory
* some lib renaming
2008-01-07Patch to change license to GPL only, from GSR.Chris Want
2007-08-28This commit fixes up a bunch of svn properties to hopefully make things a ↵Kent Mein
little nicer for everyone. Patch provied by gsrb3d bug tracker #7061 Kent
2007-01-072 bugfixes by Malachy, related to message sensor / ipo actuator firing wronglyErwin Coumans
2006-12-25fixing some issues: force needs to wake up objects, property sensor issue, ↵Erwin Coumans
island activation issue
2006-11-17CMake lists initial submission. Documentationand further verification for ↵Jacques Beuarain
different platforms will follow soon. This was just tested against current CVS on MSVC 2005 with Verse, QuickTime, OpenEXR, Player all on.
2006-05-10modified behaviour of PropertySensor and MessageSensor on popular request.Erwin Coumans
Logic systems should be improved, with consistent Level and Edge triggering usage in the logic bricks.
2006-02-08==SCons==Nathan Letwory
+ 'scons blenderplayer' builds blender AND blenderplayer now (tested on Linux only, but was only linking issue, so should work on other platforms too). NOTE: I noticed some compileflags for GE specific libs that were left out - I re-enabled them in the SConscripts, but I'm going to do a test build my- self now, so if there are problems with them on win32, I probably already know about them :)
2006-02-04== SCons ==Nathan Letwory
* 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
2004-10-16Switch fixed time system. Logic updates should now happen at 30Hz, physics ↵Kester Maddock
at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. Keyboard sensors can now hook escape key. Ctrl-Break can be used from within blender if you've forgotten an end game actuator. Fixed a stupid bug preventing some actuators working (like TrackTo).
2004-05-16Added #!/usr/bin/python standard script identifier to the start of ↵Kester Maddock
SConscript files. Makes text editors identify SConscripts as Python, and syntax highlight properly.
2004-05-16Changed Python _getattr/_setattr methods to use const STR_String& instead of ↵Kester Maddock
char* - makes using these methods much nicer.
2004-04-08In NaN times I suggested a python function to get the subject of aKester Maddock
Message using a python function of the MessageSensor. Thats a nice thing if you want complex message handling in one python script. Just get all messages, check the subject and do what you want. In the current situation you end up with several MessageSensors connected to the python script, instead of one Sensor and a smart script. Some developer (cant remember who) did implement that function, but however not the way I wanted (maybe I was not clear enough) ;-) So the getSubject() function will return whats entered in the "Subject:" filter field of the MessageSensor. Quite useless IMHO. So I added a new function getSubjects() which is similar to getBodies(), in fact I stole the code from there ;-) I left the getSubject() alone, because of backward compatibility (never saw someone using that function, but...) The future: In conjunction with a wildcard subject: filter field the getSubjects() function will be even more usefull. i.e. Player* will filter for PlayerScore, PlayerKill etc. -- Carsten Wartmann
2004-03-01SCons updatesMichel Selten
* Blender static now links. By default this option is disabled on all platforms. Simply set the option in config.opts to 'true'. * Added the following flags to config.opts: - HOST_CC. This is the C compiler for the host platform. This value is the same as TARGET_CC when not cross compiling. - HOST_CXX. This is the C++ compiler for the host platform. This value is the same as TARGET_CXX when not cross compiling. - TARGET_CC. This is the C compiler for the target platform. - TARGET_CXX. This is the C++ compiler for the target platform. - TARGET_AR. This is the linker command for linking libraries. - PATH This is the standard search path All SConscript files have been updated to reflect these changes. Now it's possible to change only the root SConstruct file, and all compiler specific variables are passed automatically to all SConscript files. Of course, this does not apply to makesdna because there the host and target platform is different from all other libraries. To pass a variable that applies to all platforms, all we now have to do is set the correct value in library_env Note: as usual, to get the latest options in the config.opts file, first remove your version.
2004-02-21SCons updatesMichel Selten
* Almost all library settings are now available in the config.opts user option file. * All platform variables had to be updated to make this possible. Things are much clearer now, but I only was able to test the changes on Linux. I've tried to update all other platform variables, but things are most likely to be broken. Please contact me how to resolve the issues. Note: Before running scons, remove your existing config.opts file to get all new options.
2004-02-15SCons updatesMichel Selten
* libraries are now generated in [BUILD_DIR]/lib * passed the user_options to all libraries now. This means I could remove a couple of Export/Import lines. * Changed the order in source/blender/src/SConscript and source/gameengine/SConscript. All libraries are now sorted alphabetically. This has no impact on the build process.
2004-01-20SCons updates: (All done by jesterKing)Michel Selten
* Windows .exe file now includes the blender icon. * Builds with game engine on Windows only. I tried building the game engine on Linux, but I get weird errors when building with ode. There's a dirty #include path in Physics/BlOde/OdePhysicsEnvironment.cpp (../ode/src/joint.h). gcc doesn't like this somehow. * Other platforms need to add a couple of flags to the SConstruct: use_sumo, use_ode, solid_include and ode_include
2003-03-26FreeBSD can use the exact same python includes as everyone elseWouter van Heyst
2003-01-04and the other FreeBSD python locations.Hans Lambermont
2002-12-27Removed the config.h thing from the .h's in the source dir.Kent Mein
So we should be all set now :) Kent -- mein@cs.umn.edu
2002-11-25Last of the config.h mods...Kent Mein
#ifdef HAVE_CONFIG_H #include <config.h> #endif added to these files. Kent -- mein@cs.umn.edu
2002-11-25Did all of the .h's in sourceKent Mein
(adding) #ifdef HAVE_CONFIG_H #include <config.h> #endif also the Makefile.in's were from previous patch adding the system depend stuff to configure.ac Kent -- mein@cs.umn.edu
2002-10-30fixed spacing in the headers to get rid of some warnings and some otherKent Mein
little minor spacing issues.
2002-10-12Initial revisionv2.25Hans Lambermont