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-04-18SVN maintenance.Guillermo S. Romero
2010-04-17- for BGE mouse and keyboard events use tuples rather then listsCampbell Barton
- pep8 corrections
2010-04-17Patch #21789 - BGE Keyboard and Mouse Python types - by Mitchell Stokes(Moguri)Dalai Felinto
The patch exposes mouse and keyboard read-only properties in the GameLogic module Also renames bge.keys to bge.events (* Note: name of bge submodules (logic, render, ...) may change before 2.5 final release [right Campbell?]). """ This patch adds two new types to the BGE: SCA_PythonKeyboard SCA_PythonMouse These two types allow users to make use of the keyboard and mouse without the need for a keyboard or mouse sensor. SCA_PythonKeyboard has an events property that acts just like SCA_KeyboardSensor.events. SCA_PythonMouse also has an events property to check for mouse events. Further more it supports getting and setting normalized cursor position (from 0.0 to 1.0) with SCA_PythonMouse.position. The cursor can be shown/hidden using SCA_PythonMouse.visible. """ Its use is similar with current mouse and keyboard controllers. With the exception of mouse position being normalized and writable as well (replacing Rasterizer.setMousePosition). Code Sample: ###### from bge import logic, events mouse = logic.mouse keyboard = logic.keyboard for key,status in keyboard.events: if status == logic.KX_INPUT_JUST_ACTIVATED: if key == events.WKEY: print(mouse.position) # move_forward() mouse.visible = True # turn cursor visible mouse.position = 0.5,0.5 # centralize mouse - use tuple ###### * Important Note: mouse.position still will not work properly for Letterbox mode. In order to fix letterboxing I may need to move the set x,y mouse function to inside the canvas code (to avoid duplicated code between mouse sensor and bge.logic.mouse). I'll leave this for another commit though. Thanks Mitchell for the work on that.
2010-04-15Make memstat easier to read, add missing Intel ID and cleanups.Guillermo S. Romero
2010-03-26BGE: fix for [#21180] - missing min and max values in the API + mode fix ↵Dalai Felinto
(interval wasn't working) of course it wasn't only a matter of adding the properties in the api :) The code of validValueForIntervalProperty and modeChange are the same BUT in the future they shouldn't be, for I think it's fine to keep them as separated functions. Bonus fix: Also we are now checking if the new mode is interval and update the range expression.
2010-03-07BGE 2D Filters: slightly change dfelinto patch to use SCA_IScene instead of ↵Benoit Bolsee
KX_Scene. It is rather anecdotic since KX_Scene is the only implementation of SCA_IScene but it's better to keep GameLogic and Ketsji separated.
2010-03-03BGE 2D Filters: filters run per scene now (fix for [#18152]) - it (slightly) ↵Dalai Felinto
breaks backward compatibility !!! Originally we had 2DFilters (m_filtermanager) stored in RenderTools. That way filters were stored globally and were being called once per each scene. This was producing two big problems: (1) performance and (2) flexibility of use. (1) Performance - To run the filters 2X == 2X slower (2) flexibility of use - Very often we want the filter in the scene but not in the UI for example. For those reasons I believe that 2DFilters with multiple scenes was very useless or unpredictable. I hope they work fine now. To make it work as before (2.4) you can simply recreate the 2dfilter actuators across the scenes. * * * * * Imagine that we have: (a) Main Scene (b) Overlay Scene in Main Scene the Z Buffer and RGB will be from the main scene. in Overlay Scene the Z Buffer will be from the Overlay Scene and the RBG buffer is from both [(a + 2D Filter) + b]. So in pseudo code if we have a,b,c,d,e scenes we have: (2DFilterE(2DFilterD(2DFilterC(2DFilterB(2DFilterA(a) + b) + c) + d) + e)
2010-02-21No need for this change anymore (force include to get BLO_sys_types.h in GE)Martin Poirier
2010-02-21Compile fix for CMakeElia Sarti
2010-02-12correct fsf addressCampbell Barton
2010-01-30BGE: patch [#20293] Added python sensor attribute: Status.Benoit Bolsee
2009-11-22[#19258] [patch] Adding drawing capabilities to BGE PythonCampbell Barton
patch from Mitchell Stokes (moguri) simple use case scene.post_draw = [pyOpenGLFunc] this only needs to be set once, then the funcion runs each redraw. note, this patch also changes how python scripts run (not modules): Dont clear the namespace after running a script, since functions still use the namespace, BGE API is now better when dealing with stale data. made some changes to this patch. - assigning a list didnt decrement the existing list. - initialize as NULL rather then a blank list - dont use string comparisons for the callbacks, pass the python list to use instead. - dont check the list items are callable. python will display an error if they are not. - use python list macros that dont do any type checking sine blender does this when assigning the list ---- from tracker, edited since an updated patch changes some things. Here is a patch to be able to draw to the screen with BGE Python. This will be very handy for GUI stuff. This patch works by having the user register a callback in the scene. Two options are available KX_Scene.pre_draw and KX_Scene.post_draw. The difference between these is when Python draws to the screen (before or after the BGE). Each can take a list of functions. Here is an example that draws a blue semi-transparent
2009-11-22BGE: Removing OB prefix from object names - This will break scripts !!!! ↵Dalai Felinto
(also removing AC and ME :: internal changes only) How it works now: whenever you have to read/write object names you can do it without the prefix "OB". (it's not hard at all to fix scripts) How it was before: It was a mess :) We had an inconsistent API where sometimes you had to input "OBname" and other "name" directly to assign object as data (usually in actuators). Justification for the change: Talking with Campbell we had since a while ago this feeling that this should be changed any time we were going to deprecate the API. So in order to deliver Blender 2.5beta0 with a more close-to-the-final API we decided that today was a good day to implement that. Remaining issues: 1) VideoTexture uses IM or MA to identify the output material/texture. I haven't touched that, but it does look a bit off. (i.e. I didn't changed any MA, IM naming) 2) I didn't see the code of dynamic mesh. It may need to be edited as well.
2009-11-21patch from Dave Plater which fixes some problems building the BGE with cmakeCampbell 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-11-10fix for own error in active bone commit, wasnt checking object type was an ↵Campbell Barton
armature also fix for warning with printf
2009-09-30svn merge https://svn.blender.org/svnroot/bf-blender/branches/blender2.4 ↵Campbell Barton
-r23566:23567
2009-09-30- rather then passing the python namespace dictionary to the controller ↵Campbell Barton
function get the namespace from the converter. - renamed SetPythonDictionary() to SetPyNamespace() - remove IsLight(), GetGameObjectType() existed before this but wasnt used for lights.
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-27Sound:Joerg Mueller
* Threading buxfix letting MSVC Debug builds crash because of corrupted std::lists * Adopted two property ranges * Changed the mixdown volume to set the device volume instead of the volume of every sound. I also removed the private redefinition of m_logicmgr in SCA_BasicEventManager, which was already defined protected in the parent class SCA_EventManager and thus caused a bug letting GE crash here because of an uninitialized pointer.
2009-09-25almost all event managers stored a pointer back to the logic manager, easier ↵Campbell Barton
if this pointer is in the base class - SCA_EventManager
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-06white space commit. (2 spaces -> tab).Campbell Barton
Was annoying to use a different editor for cmake only. theeth says this should be ok with gsoc and merges from branches.
2009-09-05== SCons ==Nathan Letwory
* 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.
2009-09-04== SCons ==Nathan Letwory
* 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.
2009-09-04== SCons ==Nathan Letwory
* 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
2009-09-02== SCons ==Nathan Letwory
* Add BGE_CXXFLAGS so we can get rid of hard-coded BGE compiler settings. This was only done for windows, but now linuxers and osxers should be able to set BGE-specific optimisation too. See the windows default configs for example.
2009-08-26remove all python api functions deprecated in 2.49Campbell Barton
2009-08-24patch from Ron Walker (o6a).Campbell Barton
Descriptions for TFM, TEXT, CONSOLE and ED operators. - Made some minor edits.
2009-08-22svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22701:22704Campbell Barton
2009-08-22missed this in last commit. keyboard event manager was stored twice.Campbell Barton
2009-08-22svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22668:22701Campbell Barton
2009-08-22- BGE, Some sensors, stored the event manager in 2 places (became confusing ↵Campbell Barton
to do changes in this area) - Change compiler warnings for linux/scons/C++
2009-08-18BGE guardedalloc, Uses WITH_CXX_GUARDEDALLOC but gives a string to ↵Campbell Barton
MEM_mallocN for better tracking memory usage. * off by default. * new/delete are at the bottom of each class * python BGE objects have the new/delete in the Py_Header macro.
2009-08-15- remove UNSET becuase it only works with newer versions of cmake,Campbell Barton
- changed the SDL and Freetype vars to match CMake's names - removed unneeded freetype, SDL and ftgl includes
2009-08-10remove python2.x supportCampbell Barton
2009-07-31svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r21908:22075Campbell Barton
2009-07-26ReplaceMesh Actuator option to replace the physics mesh and display mesh + ↵Campbell Barton
python api options. When the mesh field is left blank and Physics option is enabled, it reinstances the physics mesh from the existing mesh. like calling gameOb.reinstancePhysicsMesh() from python.
2009-07-20cmake option to disable SDL,Campbell Barton
bpy_interface.c - change order of checking scripts to avoid calling stat on .py files.
2009-07-16SConsNathan Letwory
* 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.
2009-06-29BGE PyAPI support for subclassing any BGE game type from python, scripters ↵Campbell Barton
define extra functions on gameObjects. Adding a UI to set the type on startup can be added easily. # ---- class myPlayer(GameTypes.KX_GameObject): def die(self): # ... do stuff ... self.endObject() # make an instance player = myPlayer(gameOb) # gameOb is made invalid now. player.die() # ---- One limitation (which could also be an advantage), is making the subclass instance will return that subclass everywhere, you cant have 2 different subclasses of the same BGE data at once.
2009-06-29BGE Py API using python3 c/api calls. include bpy_compat.h to support py2.xCampbell Barton
2009-06-28BGE Python APICampbell Barton
Remove the last of the odd C++/python wrapper code from http://www.python.org/doc/PyCPP.html (~1998) * Use python subclasses rather then having fake subclassing through get/set attributes calling parent types. * PyObject getset arrays are created while initializing the types, converted from our own attribute arrays. This way python deals with subclasses and we dont have to define getattro or setattro functions for each type. * GameObjects and Scenes no longer have attribute access to properties. only dictionary style access - ob['prop'] * remove each class's get/set/dir functions. * remove isA() methods, can use PyObject_TypeCheck() in C and issubclass() in python. * remove Parents[] array for each C++ class, was only used for isA() and wasnt correct in quite a few cases. * remove PyTypeObject that was being passed as the last argument to each class (the parent classes too). TODO - * Light and VertexProxy need to be converted to using attributes. * memory for getset arrays is never freed, not that bad since its will only allocates once.
2009-06-13svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r20849:20855Campbell Barton
to get the BGE building with py3k and no sdl
2009-06-13allow building without SDLCampbell Barton
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-04BGE small fixesCampbell Barton
- script template use new property syntax - Python could set the axis/hat to a negative index and crash blender (nobody complained) - Servo control UI had overlapping text
2009-06-03BGE PyAPI fixesCampbell Barton
- CValue warning ShowDeprecationWarning("val = ob.attr", "val = ob['attr']"); had false positives because of python using getattr() internally. Only show the wanring now when a CValue is found. - Py functions that accepted a vector and a GameObject were slowed down by PySequence_Check() first called on the GameObject, though this would fail it would try and get attributes from the game object - ending up in ~8 attribute lookups each time. Avoiding PySequence_Check() makes ob.getDistanceTo(otherOb) over twice as fast. - Joystick hat events could crash the BGE for joysticks with more then 4 hats. - PLY Import failed on PLY files from Carve, added some extra types.
2009-06-01BGE: memory leak in Random actuator + make actuator truly random when seed=0 ↵Benoit Bolsee
in the UI. When running the game, seed 0 is replaced by a random seed accessible through Python in seed attribute of the actuator. Other seed value will be left unchanged and will generate fixed pseudo random series.
2009-05-29workaround for strange python problem in the BGE and BPy API where printing ↵Campbell Barton
warnings mistook the blender binary for a script - argv[0], Binary lines were printed into the console sometimes causing console beeps and corrupting future console output. Internal texts file on disk is not used it seems python warnings dont support this (even though exceptions do). The most common cause of this is passing a float as an argument to a method that took an int. get around this by setting __file__ in the namespace to the script name before executing the script, the file lines are not found but at least the output is not weird and confusing. Added read only 'mode' attribute to the python controller so there is a way to tell if its executing a module or a script. Updated docs to better explain execution methods.