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
2016-01-04Remove SCons building systemSergey Sharybin
While SCons building system was serving us really good for ages it's no longer having much attention by the developers and started to become quite a difficult task to maintain. What's even worse -- there started to be quite serious divergence between SCons and CMake which was only accumulating over the releases now. The fact that none of the active developers are really using SCons and that our main studio is also using CMake spotting bugs in the SCons builds became quite a difficult task and we aren't always spotting them in time. Meanwhile CMake became really mature building system which is available on every platform we support and arguably it's also easier and more robust to use. This commit includes: - Removal of actual SCons building system - Removal of SCons git submodule - Removal of documentation which is stored in the sources and covers SCons - Tweaks to the buildbot master to stop using SCons submodule (this change requires deploying to the server) - Tweaks to the install dependencies script to skip installing or mentioning SCons building system - Tweaks to various helper scripts to avoid mention of SCons folders/files as well Reviewers: mont29, dingto, dfelinto, lukastoenne, lukasstockner97, brecht, Severin, merwin, aligorith, psy-fi, campbellbarton, juicyfruit Reviewed By: campbellbarton, juicyfruit Differential Revision: https://developer.blender.org/D1680
2015-10-26BGE: generic python callback list + replace KX_PythonSeq.Porteries Tristan
I made this patch to declared a python list without converting all elements in python object (too slow) or use a CListValue which required CValue items (too expensive in memory). In the case of a big list of points like a collision contacts points list, to use a CListValue we must implement a new class based on CValue for 3D vector to create a python proxy even if mathutils do it perfectly, we must also convert all points (frequently ~100 points) when fill the CListValue even if the list is not used (in the case of the collision callback). The easy way is to use callback (it doesn't worth to do an inheritance) which convert the item in PyObject only during an acces. 5 callbacks are used : - Check if the list is valid = allow acces (like PyObjectPlus.invalid) - Get the list size - Get an item in the list by index. - Get an item name in the list by index (used for operator `list["name"]`) - Set an item in the list at the index position. All of these callback take as first argument the client instance. Why do we use a void * for the client instance ? : In KX_PythonInitTypes.cpp we have to initialize each python inherited class, if we use a template (the only other way) we must add this class each time we use a new type with in KX_PythonInitTypes.cpp To check if the list can be accessed from python by the user, we check if the python proxy, which is the `m_base` member, is still a valid proxy like in PyObjectPlus. But we can use a callback for more control of user access (e.g a list of collision point invalidate a frame later, in this case no real python owner). This python list is easily defined with : ``` CPythonCallBackList( void *client, // The client instance PyObject *base, // The python instance which owned this list, used to know if the list is valid (like in KX_PythonSeq) bool (*checkValid)(void *), // A callback to check if this list is till valid (optional) int (*getSize)(void *), // A callback to get size PyObject *(*getItem)(void *, int), // A callback to get an item const char *(*getItemName)(void *, int), // A callback to get an item name (optional) use for acces by string key bool (*setItem)(void *, int, PyObject *) // A callback to set an item (optional) ) ``` To show its usecase i replaced the odd KX_PythonSeq, it modify KX_Gameobject.sensors/controllers/actuators, SCA_IController.sensors/actuators and BL_ArmatureObject.constraints/channels. Example : {F245193}, See message in console, press R to erase the object and see invalid proxy error message. Reviewers: brita_, #game_python, youle, campbellbarton, moguri, agoose77, sergey Reviewed By: campbellbarton, moguri, agoose77, sergey Subscribers: sergey Projects: #game_engine Differential Revision: https://developer.blender.org/D1363
2015-09-13Cleanup: spellingCampbell Barton
2015-07-12BGE Clean-up: New EXP prefix for the BGE Expression moduleJorge Bernal
The expression module now uses an EXP prefix and it follows a distribution similar to blender. Additionally the hash function in EXP_HashedPtr.h was simplified and the files EXP_C-Api.h &.EXP_C-Api.cpp were deleted because were unused. Reviewers: campbellbarton, moguri, sybren, hg1 Projects: #game_engine Differential Revision: https://developer.blender.org/D1221
2015-06-20BGE: dissallow calling reverse on internal clistsCampbell Barton
2015-06-13Fix for building without PythonCampbell Barton
2015-06-02Fix T44919: BGE marhutils attrs leak memoryCampbell Barton
2015-05-20doxygen: corrections/updatesCampbell Barton
Also add depsgraph & physics
2015-04-20Compilation error fix for MSVC: It does not support expressions in arraySergey Sharybin
declarations
2015-04-20Fix: BGE crashes when RunPythonCallBackList() is called with maxargcount != ↵Sybren A. Stüvel
minargcount
2015-04-20Fix: solved BGE compiler error on Linux/gccSybren A. Stüvel
2015-04-19BGE : Standardization of callbacks execution.Porteries Tristan
A new function (RunPythonCallBackList) to call all python functions contained in a python list was developed. This function has: - first argument is the python list of callbacks - second argument is a python list of arguments - third argument is the minimum quantity of arguments - forth argument is the maximum quantity of arguments It improves flexibility and supports *args. Reviewers: moguri, dfelinto, campbellbarton, sybren Reviewed By: campbellbarton, sybren Subscribers: sybren Projects: #game_engine Differential Revision: https://developer.blender.org/D1102
2015-04-15BGE: subclass with more than 1 argument, D1237Porteries Tristan
In the BGE you can't create a subclass with more than 1 argument like : "player = Player(owner, 10)" I have modified the py_base_new to check only the first argument of args tuple. Now we can do : class Player(types.KX_GameObject): def __init__(self, gameobj, life): print("create new player :", self, ", life :", life) player = Player(own, 50)
2015-02-28BGE: Fix ShowDeprecationWarning macro.Thomas Szepe
Reviewers: lordloki, brita_, sybren, moguri Reviewed By: moguri Differential Revision: https://developer.blender.org/D1144
2015-01-04Freestyle: reserve array sizes before fillingCampbell Barton
also use PyList_GET_ITEM when list size is known.
2015-01-04mathutils: refactor instantiationCampbell Barton
remove 'type' argument, very few mathutils objects are wrapped, add new function for creating wrapped objects. also fixes unlikely memory leak if the data-array can't be allocated.
2014-08-27Cleanup: remove _DEBUG define usageCampbell Barton
2014-06-17Support for building without PythonCampbell Barton
2014-06-17BGE: New Property sensor evaluation typesJorge Bernal
This patch adds "Less Than" and "Greater Than" evaluation types to the property sensor. The Wiki Docs modifications http://wiki.blender.org/index.php/User:Lordloki/Doc:2.6/Manual/Game_Engine/Logic/Sensors/Property Also, I have attached a screenshot and a blend to check. Reviewers: dfelinto, moguri Reviewed By: moguri Differential Revision: https://developer.blender.org/D476
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2013-07-23BGE: Fix for [#34398] "«illegal operator» in Expression Controller" ↵Mitchell Stokes
reported by Andrey Kashlak (andreymal) The expressions system now supports the not operator on ints and floats.
2013-07-19Fix some definitions for MinGW64Antony Riakiotakis
2013-07-15clang/cmake - quiet warnings for external libs and reference moto as a ↵Campbell Barton
system include.
2013-05-30split bge includes for scons onto their own lines (for easier merging)Campbell Barton
2013-05-29Grr, forgot this in r57127... Bastien Montagne
BF_PYTHON_INC can contain more than one path (in the mono-string format), don't know how this could not be found earlier, completely broke build of GE on any recent Debian/Ubuntu distro???
2013-05-28move BLO_sys_types.h -> BLI_sys_types.h (it had nothing todo with loading)Campbell Barton
remove MEM_sys_types.h which was a duplicate.
2013-05-03bge py api: raise an overflow exception when assigning a float to a bge ↵Campbell Barton
object which is out of the float range. also avoid raising exceptions by ConvertPythonToValue when they will be ignored.
2013-04-18style cleanupCampbell Barton
2013-04-11code cleanup: unused vars, make other vars static.Campbell Barton
2013-04-05code cleanup: bge warningsCampbell Barton
2013-03-29style cleanupCampbell Barton
2013-03-26style cleanup:Campbell Barton
also rename mesh_getVertexCos() --> BKE_mesh_vertexCos_get() to match curve function.
2013-03-25code cleanup:Campbell Barton
- remove unused defines. - quiet some shadow warnings. - bevel, ifdef out some asserts that are too common. - style
2013-03-19bge bugfix: [#34677] Setting Boolean property on KX_GameObject creates Int typeDalai Felinto
we need to check for booleans before testing for longs.
2013-03-04code cleanup: unused vars in collada, preprocessor formatting & warning in ↵Campbell Barton
mingw. also compiling without bullet needed a stub added.
2013-02-02style cleanup: comment formatCampbell Barton
2013-01-16style cleanupCampbell Barton
2013-01-12quiet compiler warning with string formatting in CParser::TermCampbell Barton
2012-12-29style cleanupCampbell Barton
2012-12-17Added GPL header to sconscripts!Bastien Montagne
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-11-21py api cleanup, replace use...Campbell Barton
- PyLong_FromSsize_t --> PyLong_FromLong - PyLong_AsSsize_t --> PyLong_AsLong In all places except for those where python api expects PySsize_t (index lookups mainly). - use PyBool_FromLong in a few areas of the BGE. - fix incorrect assumption in the BGE that PySequence_Check() means PySequence_Fast_ functions can be used.
2012-11-18style cleanup: comments & spellingCampbell Barton
2012-11-11- property sensor was converting floating point values to text then back to ↵Campbell Barton
float - for floating point properties. - IntValue's GetNumber() was convert int -> float -> double. - BL_Shader was using STR_String rather then char*, where most callers had a char*, use a char* to avoid STR_String conversion-and-alloc on shader access.
2012-11-10code cleanup: some warnings and formatting for PyMethodDef's in the BGE.Campbell Barton
2012-11-09code cleanup: double promotion warnings, also allow cmake to build SDL ↵Campbell Barton
without audaspace.
2012-10-22style cleanupCampbell Barton
2012-10-21style cleanup: bge, switch statements mostly.Campbell Barton
also left bmesh decimator on in previous commit.
2012-10-15code cleanup: check for msvc directly when using warning pragma's.Campbell Barton
2012-10-09code cleanup: make header defines more consistent, JOYSENSOR header guard ↵Campbell Barton
had a typo too.
2012-09-26add back game engine python api slicing, (was missing / regression, since ↵Campbell Barton
move to py3x) not many people must have used it since it would crash with non-zero start slice values.