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
2010-01-30BGE: patch [#20293] Added python sensor attribute: Status.Benoit Bolsee
2010-01-30BGE: patch #20399 Python control over adding/removing scenes.Benoit Bolsee
2010-01-11evil 1 liner to get bge.logic, bge.render, bge.keys etc.. may eventually ↵Campbell Barton
replace GameLogic, GameKeys module names.
2010-01-11get rid of annoying duplicate python initialization code, added ↵Campbell Barton
setupGamePython() which initializes modules
2009-11-20option to have scripts run on startup for per blendfile UI'sCampbell Barton
2009-11-16BGE: dynamic loading patch commited. API and demo files available here: ↵Benoit Bolsee
https://projects.blender.org/tracker/?func=detail&aid=19492&group_id=9&atid=127
2009-10-30BGE patch #19751: Add game actuator like methods to GameLogic.Benoit Bolsee
2009-09-30option to build the BGE without python, uses existing python check (cmake ↵Campbell Barton
and scons) when python is disabled videotextures are not built.
2009-09-29Removed the termporary defines added to make the Game Engine compile. ↵Joshua Leung
Hopefully this fixes all of the cases which broke.
2009-09-25Merge of itasc branch. Project files, scons and cmake should be working. ↵Benoit Bolsee
Makefile updated but not tested. Comes with Eigen2 2.0.6 C++ matrix library.
2009-09-06* cleaning up warnings (mostly windows). A collection of other warning fixes ↵Nathan Letwory
too (undefined function, assuming int, etc.) This compiled fine with scons/msvc and scons/mingw (gcc 4.4.0). Please test and report any problems.
2009-09-03remove Py_CmpToRich (copy of py3.0 function), instead only support == and != ↵Campbell Barton
for PyRNA and KX_PySequence types. mesh1 > mesh2 # will raise an error.
2009-09-03* KX_PythonSeq - comparisons work again. eg. act1.sensors == act2.sensors, ↵Campbell Barton
had to copy Py_CmpToRich inline grr!, mailed python-dev about this. * Shift-Click on states in the logic UI works again. * New Logic Space has all the view options pressed.
2009-08-30svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22717:22875Campbell Barton
2009-08-26remove all python api functions deprecated in 2.49Campbell Barton
2009-08-25removing GameLogic.EvalExpression(),Campbell Barton
unlikely anyone will miss it, was only accessible in 2.49, invalid expressions would crash, valid ones leak memory.
2009-08-19- fix for BGE warningsCampbell Barton
- when C++ uses guardedalloc SYS_DeleteSystem was called after MEM_printmemlist(), making it look like there was a leak.
2009-08-182.5: Game EngineBrecht Van Lommel
* Added Shading and Performance panels in the scene buttons, containing the options previously in the 2.4x game menu. * Added show framerate/debug/physics/warnings back in game menu. * Moved these settings from G.fileflags to scene GameData. * Enabled Display Lists by default. * Some other small game scene button tweaks.
2009-08-102.5 audio cleanup:Joerg Mueller
* Removed CD Actuator * Removed bSample and bSoundListener * Removed SoundSystem * Removed -noaudio parameter
2009-08-10remove python2.x supportCampbell Barton
2009-08-01svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22075:22099Campbell Barton
2009-07-31remove more unneeded args, also allow ipo to animate the ref value for ↵Campbell Barton
KX_BlenderMaterial's
2009-07-08* workaround for PySys_SetArgv() in python3 needing wchar_tCampbell Barton
* PyRNA - id_struct.keyframe_insert("path", index, frame)
2009-06-29BGE Py API using python3 c/api calls. include bpy_compat.h to support py2.xCampbell Barton
2009-06-18Some generic modules from blender 2.4x building with py3k and mostly working.Campbell Barton
* 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.
2009-06-16svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r20855:20928Campbell Barton
Sequencer changes from source/blender/src coming next
2009-06-16BGE Py APICampbell Barton
* Removed modules Expression and CValue, neither were ever available. * Added GameLogic.EvalExpression(exp) from the Expression module, evaluates an expression like the expression controller (not sure if this is really that useful since python is far more advanced). * resetting the original blend file path didint work (own fault == -> =) * Py3.x PyModule_Create didnt allow importing since it didn't add to sys.modules, Looks like they want us to use init-tab array, but this doesn't suit us since it needs to be setup before python is initialized. * Documented GameLogic.globalDict
2009-06-16saving globalDict didnt work with python3.xCampbell Barton
2009-06-13GameEngine WIP,Campbell Barton
* pressing P starts the BGE in the 3D view * redraw window clipping isnt right * BGE python api works in py3k (without __import__ override or Mathutils, BGL, Geometry) * no events yet (so there is no way to exit)
2009-06-092.50:Brecht Van Lommel
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r19820:HEAD Notes: * Game and sequencer RNA, and sequencer header are now out of date a bit after changes in trunk. * I didn't know how to port these bugfixes, most likely they are not needed anymore. * Fix "duplicate strip" always increase the user count for ipo. * IPO pinning on sequencer strips was lost during Undo.
2009-06-01BGE Blendfile path bug (use for loading and saving the GameLogic.globalDict)Campbell Barton
the original blendfile path wasn't reset when loading new blendfiles. blenderplayer was ok, but running the BGE from blender would set the blendfile original path and never reset it on loading other blend files.
2009-06-01YoFrankie bug [#18857] On start gives ImportError: No module named ↵Campbell Barton
frankie_scripts GameEngine sys.path creation was broken because of a pesky slash at the end of each path name. Win32 sys.paths were also failing when running a game that switched between blend files in different directories On win32 for some reason making absolute paths from lib->name failed, work around this by using lib->filename. STR_String.h, cast to float to quiet compiler warnings.
2009-05-26BGE PyAPI Bug reported by Pitel on blenderartist.Campbell Barton
importing "pygame" failed when running the BGE for the second time. Rather then clearing modules, backup and restore them (as its doing with sys.path) This way the BGE will never remember any modules imported during game play (which can cause bugs/crashes), but it also wont break pythons state by possibly removing modules that are being used internally.
2009-05-25[#18819] save and load globalDictionary actuators don't load the proper ↵Campbell Barton
files in 2.49 RC3 For this actuator to be useful it needs to use the first opened blendfile as the base name for the configuration file. A recent fix that made the gp_GamePythonPath always match the current loaded blend file made this actuator work differently. keep the original filename to use for making the config name so you can load the config between loading blendfiles.
2009-05-21BGE: GUI control over frame rate, logic rate, physics rate and physics subrate.Benoit Bolsee
Four new buttons in World settings to control frame rate: fps: Nominal frame rate in frame per second. Also sets the physics timestep = 1/fps phys: Maximum number of physics timestep per game frame in case the actual fps is less than nominal. This allows the physics to keep up with real time even if the graphics slows down the game. sub: Fixed number of simulation substeps per physic timestep. Improves the precision of the physics simulation. Useful for fast moving objects for example. log: Maximum number of logic steps per game frame in case the actual fps is less than nominal. This allows the logic system to follow the physics simulation. Upper bound = phys (setting the value higher than phys has no effect). On games with heavy logic system, it is useful to set this value to 1, to keep logic time under control. All these values were already accessible from Python except phys: GameLogic.getMaxPhysicsFrame(): Gets the maximum number of physics frame per render frame. GameLogic.setMaxPhysicsFrame(phys): Sets the maximum number of physics timestep that are executed per render frame. Higher value allows physics to keep up with realtime even if graphics slows down the game. Physics timestep is fixed and equal to 1/tickrate (see setLogicTicRate) maxphysics/ticrate is the maximum delay of the renderer that physics can compensate. phys: integer
2009-05-20Moving ScreenSpace methods from Rasterizer to KX_Camera (getScreenPos, ↵Dalai Felinto
getScreenVect, getScreenRay) The modules were moved in order to access the camera internal matrixes. It will make then compatible with multiple viewports in a near future. So far the problem I found was: 1) KX_Camera doesn't store the canvas viewport 2) RAS_ICanvas methods: GetDisplayArea and GetWindowArea are affected by multiple viewports (and they shouldn't). Test file is here: http://www.pasteall.org/blend/68
2009-05-16setting up the BGE Python sys.path for importing modules wasnt working for ↵Campbell Barton
library paths.
2009-05-07BGE performance, 3rd round: culling and rasterizer.Benoit Bolsee
This commit extend the technique of dynamic linked list to the mesh slots so as to eliminate dumb scan or map lookup. It provides massive performance improvement in the culling and in the rasterizer when the majority of objects are static. Other improvements: - Compute the opengl matrix only for objects that are visible. - Simplify hash function for GEN_HasedPtr - Scan light list instead of general object list to render shadows - Remove redundant opengl calls to set specularity, shinyness and diffuse between each mesh slots. - Cache GPU material to avoid frequent call to GPU_material_from_blender - Only set once the fixed elements of mesh slot - Use more inline function The following table shows the performance increase between 2.48, 1st round and this round of improvement. The test was done with a scene containing 40000 objects, of which 1000 are in the view frustrum approximately. The object are simple textured cube to make sure the GPU is not the bottleneck. As some of the rasterizer processing time has moved under culling, I present the sum of scenegraph(includes culling)+rasterizer time Scenegraph+rasterizer(ms) 2.48 1st round 3rd round All objects static, 323.0 86.0 7.2 all visible, 1000 in the view frustrum All objects static, 219.0 49.7 N/A(*) all invisible. All objects moving, 323.0 105.6 34.7 all visible, 1000 in the view frustrum Scene destruction 40min 40min 4s (*) : this time is not representative because the frame rate was at 60fps. In that case, the GPU holds down the GE by frame sync. By design, the overhead of the rasterizer is 0 when the the objects are invisible. This table shows a global speed up between 9x and 45x compared to 2.48a for scenegraph, culling and rasterizer overhead. The speed up goes much higher when objects are invisible. An additional 2-4x speed up is possible in the scenegraph by upgrading the Moto library to use Eigen2 BLAS library instead of C++ classes but the scenegraph is already so fast that it is not a priority right now. Next speed up in logic: many things to do there...
2009-05-07python3 compatibility for the BGE api, this only works with scons when ↵Campbell Barton
WITH_BF_NOBLENDER is enabled. Mathutils, Geometry and BGL modules are currently disabled with python3
2009-05-04print BGE Py api warnings only once to avoid flooding the terminal and ↵Campbell Barton
slowing the game down too much, resets on loading scenes/blendfiles and restarting the game engine.
2009-05-03on second thought its less trouble to make a python script that makes all ↵Campbell Barton
the getset's in the array, apologies to Alex for suggesting this be dynamic :/ included python script to print out getsets as a comment
2009-05-03[#18678] Swizzle properties for Mathutils.VectorCampbell Barton
patch from Alex Fraser (z0r) eg. - vec.xyz = vec.zyx - vec.xy = vec.zw - vec.xxy = vec.wzz - vec.yzyz = vec.yxyx See http://en.wikipedia.org/wiki/Swizzling_(computer_graphics) made some minor modifications to this patch. tested access times and adding 336 attributes to vectors doesn't make a noticeable differences to speed of existing axis attributes (x,y,z,w) - thanks to python dict lookups.
2009-05-03fixes for bugs submitted by BGE users, fixes by myself and Mitchell StokesCampbell Barton
- when the attribute check function failed it didnt set an error raising a SystemError instead - Rasterizer.getMaterialMode would never return KX_BLENDER_MULTITEX_MATERIAL - PropertySensor value attribute checking function was always returning a fail. - Vertex Self Shadow python script didnt update for meshes with modifiers.
2009-05-02BGE Py API patch from Mitchell Stokes, adds extra attributes and docsCampbell Barton
2009-05-01BGE: New function GameLogic.setMaxLogicFrame() to allow better control over ↵Benoit Bolsee
the time spent on logic. This function sets the maximum number of logic frame executed per render frame. Valid values: 1..5 This function is useful to control the amount of processing consumed by logic. By default, up to 5 logic frames can be executed per render frame. This is fine as long as the time spent on logic is negligible compared to the render time. If it's not the case, the default value will drag the performance of the game down by executing unnecessary logic frames that take up most of the CPU time. You can avoid that by lowering the value with this function. The drawback is less precision in the logic system to physics and I/O activity. Note that it does not affect the physics system: physics will still run at full frame rate (actually up to 5 times the ticrate). You can further control the render frame rate with GameLogic.setLogicTicRate().
2009-05-01add blendfile dirs to the sys.path without the scripts subdirCampbell Barton
2009-04-30added Geometry as a BGE module, removed its dependency on gen_utils.cCampbell Barton
2009-04-30BGE Python sys.path for the blenderplayer and blenderCampbell Barton
sys.path is the search path for python modules. This is useful so people making games can put all their scripts in a folder and be sure they will always load into the BGE. for each blend file a scripts directory is added to the path /home/me/foo.blend will look for modules in... /home/me/scripts/*.py It could also default to look for modules in the same directory as the blend file but I think this is messy. Added a note in the tooltip about //scripts so its not such a hidden feature. This works by storing the original sys.path, then adding the paths for the blendfile and all its libs, when a new blendfile is loaded, the original sys.path is restored before adding the blendfiles paths again so the sys.path wont get junk in it. One problem with this - when using linked libs the module names must be unique else it will load the wrong module for one of the controllers. also fixed 2 bugs - sys.path in the blenderplayer was growing by 1 for every file load in blenderplayer - the relative path (gp_GamePythonPath), wasnt being set when loading files in the blenderlayer (as I wrongly said in the last commit).
2009-04-30python modules in the game engine could point to builtin modules like ↵Campbell Barton
GameLogic that was cleared. I added module clearing before there was checks for invalid python objects, so now its not needed for BGE Builtin types at least. also made the builtin modules get re-used if they already exist and clear all user modules when the game engine finishes so with Module-Py-Controllers the referenced modules are at least up to date when pressing Pkey.
2009-04-29ifdef's for future py3 support, after this adding py3 can mostly be done ↵Campbell Barton
with defines or batch renaming funcs (with the exception of CListValue slicing) . No changes for py2.x.