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
2015-11-22Error out on Windows if driver does not support OpenGL 2.1 with an errorAntony Riakiotakis
messagebox.
2015-10-08BLI_path api, minor changes to CWD handlingCampbell Barton
- BLI_current_working_dir's return value must be checked, since it may fail. - BLI_current_working_dir now behaves like getcwd, where a too-small target will return failure. - avoid buffer overrun with BLI_path_cwd, by taking a maxlen arg.
2015-08-23BGE: Fix T42679: Python physics environment not setted for python control ↵Porteries Tristan
script.
2015-08-18Refactor translation code out of blenfontCampbell Barton
- Add blentranslation `BLT_*` module. - moved & split `BLF_translation.h` into (`BLT_translation.h`, `BLT_lang.h`). - moved `BLF_*_unifont` functions from `blf_translation.c` to new source file `blf_font_i18n.c`.
2015-07-09Cleanup: quiet warningCampbell Barton
2015-05-24BGE : Fix black material on meshes without materials in blenderplayer.Porteries Tristan
Blenderplayer forgot to initialize the default material (defmaterail) with function init_def_material(). This reverts also the plumber commit 2fa4a48bcef05671890fafc3fe50a8fa619f0259. Reviewers: campbellbarton
2015-05-04BGE Player: Fix compilation error after cleanup commit da8a62aSergey Sharybin
2015-03-26sound module: Append functions with BKE (makes it easier to make themAntony Riakiotakis
out from local functions)
2014-12-25OSX: revive GHOST_HACK_getFirstFile cause it breaks things on older OSX ↵Jens Verwiebe
versions. Dunno exactly why this was done earlier, but propose not to remove code not understood.
2014-11-23Refactor: BLI_path_util (part 2)Campbell Barton
Use BKE_appdir/tempdir naming prefix for functions extracted from BLI_path_util
2014-11-23Refactor: BLI_path_util (split out app directory access)Campbell Barton
This module is intended for path manipulation functions but had utility functions added to access various directories.
2014-11-17Support dynamic loading of SDL librariesSergey Sharybin
This is mainly to address old issue when one need to have SDL library installed in order to use our official builds. Some hip distros already installs SDL, but it's not quite the same across all the variety of the distros. We also now switching to SDL-2.0, most of the distros have it in repositories already, so it shouldn't be huge deal to install it if needed. Reviewers: campbellbarton Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D878
2014-10-08Ghost Context RefactorJason Wilkins
https://developer.blender.org/D643 Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-06-23T39690: Modifications to Blender's 'temp dir' system.Bastien Montagne
Current temporary data of Blender suffers one major issue - default 'temp' dir on Windows is never automatically cleaned up, and can end being quite big when used by Blender, especially when we have to store per-process data (using getpid() in file names). To address this, this patch: * Divides tempdir paths in two, one for 'base' temp dir (the same as previous unique tempdir path), the other is a mkdtemp-generated sub-dir, specific to each Blender instance. * Only uses base tempdir when we need some shallow persistance accross Blender sessions - and we always reuse the same filename (quit.blend...) or generate small file (crash reports...). * Uses temp sub-dir for heavy files like pointcache or renderEXRs (Save Buffer option). * Erases temp sub-dir on quit or crash. To get this working it also adds a working 'recursive delete' to BLI_delete() under Windows. Note that, as in current code, the 'recover render result' hack-feature that was possible with SaveBuffer option is still removed. A real renderresult cache feature will be added soon, though. Reviewers: campbellbarton, brecht, sergey Reviewed By: campbellbarton, sergey CC: sergey Differential Revision: https://developer.blender.org/D531
2014-04-07blenderplayer - Reviewed some command line options and the respective helpbrita
Doubts: are written as comments in the code Current Problems: - stereo modes sometimes have different names and are ordered differently everywhere (blender properties panel names and tooltips, blenderplayer cmndline) - dome mode as several options, but can only take one at a time, like -D mode bla -D tilt X -D ... - gameoptions are also given one at a time, like above, but with an assignment -g option = X . This is inconsistent. - gameoptions need to be reviewed and docummented - parent to window (-i) is useful for what? (there is no wiki on this either) - there is no support for verbose options like --help (blender itself supports it) Reviewers: dfelinto, moguri CC: Differential Revision: https://developer.blender.org/D312
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-02-04Blenderplayer: Fixing a memory leak.Mitchell Stokes
IMB_moviecache_destruct() was not being called.
2014-01-02Add new BGE Stereo mode: 3DTV top-bottom.Benoit Bolsee
This mode is designed for passive 3D TV: the viewport is split horizontally - left eye above, right eye below - but the original camera viewport is squashed in each half (with half the vertical resolution). This is necessary to restore the aspect ratio in the 3D output because the TV expands each half to the full screen size.
2013-12-30Main API: refactor naming, use BKE_main_ prefix and add main arg.Campbell Barton
2013-12-26Threaded object update and EvaluationContextSergey Sharybin
Summary: Made objects update happening from multiple threads. It is a task-based scheduling system which uses current dependency graph for spawning new tasks. This means threading happens on object level, but the system is flexible enough for higher granularity. Technical details: - Uses task scheduler which was recently committed to trunk (that one which Brecht ported from Cycles). - Added two utility functions to dependency graph: * DAG_threaded_update_begin, which is called to initialize threaded objects update. It will also schedule root DAG node to the queue, hence starting evaluation process. Initialization will calculate how much parents are to be evaluation before current DAG node can be scheduled. This value is used by task threads for faster detecting which nodes might be scheduled. * DAG_threaded_update_handle_node_updated which is called from task thread function when node was fully handled. This function decreases num_pending_parents of node children and schedules children with zero valency. As it might have become clear, task thread receives DAG nodes and decides which callback to call for it. Currently only BKE_object_handle_update is called for object nodes. In the future it'll call node->callback() from Ali's new DAG. - This required adding some workarounds to the render pipeline. Mainly to stop using get_object_dm() from modifiers' apply callback. Such a call was only a workaround for dependency graph glitch when rendering scene with, say, boolean modifiers before displaying this scene. Such change moves workaround from one place to another, so overall hackentropy remains the same. - Added paradigm of EvaluaitonContext. Currently it's more like just a more reliable replacement for G.is_rendering which fails in some circumstances. Future idea of this context is to also store all the local data needed for objects evaluation such as local time, Copy-on-Write data and so. There're two types of EvaluationContext: * Context used for viewport updated and owned by Main. In the future this context might be easily moved to Window or Screen to allo per-window/per-screen local time. * Context used by render engines to evaluate objects for render purposes. Render engine is an owner of this context. This context is passed to all object update routines. Reviewers: brecht, campbellbarton Reviewed By: brecht CC: lukastoenne Differential Revision: https://developer.blender.org/D94
2013-12-22Fix T37898: blenderplayer painfully slow in recent buildsSergey Sharybin
Issue was caused by recent image cache rewrite and root of the issue goes to the fact that blender player doesn't initialize cache limiter and it uses 32meg of memory only. This leads to infinite image loading/freeing. For now disabled cache limiter in game engine, this brings back old behavior. In theory we might be smarter here, but better caching policy is to be discussed.
2013-11-06OSX/player: Remove some very old code ( 11 years+ ), was commented anywayJens Verwiebe
2013-11-04BGE Rasterizer Cleanup: The Blenderplayer now loads the monospace font so it ↵Mitchell Stokes
can properly draw the framerate and profile display.
2013-10-03set mempool debug in the game-engine-player too. also remove redundant ↵Campbell Barton
mempool includes.
2013-08-26blenderplayer builds againCampbell Barton
2013-08-19Speedup for guarded allocatorSergey Sharybin
- Re-arrange locks, so no actual memory allocation (which is relatively slow) happens from inside the lock. operation system will take care of locks which might be needed there on it's own. - Use spin lock instead of mutex, since it's just list operations happens from inside lock, no need in mutex here. - Use atomic operations for memory in use and total used blocks counters. This makes guarded allocator almost the same speed as non-guarded one in files from Tube project. There're still MemHead/MemTail overhead which might be bad for CPU cache utilization
2013-08-19Made modifiers_getVirtualModifierList safe for threadingSergey Sharybin
Move static variables to context filling in by this fcuntion and owned by a callee function. This ensures no conflicts between threads happens because of static variables used in this function. Also moved modifier types and virtual modifiers data to a function called from creator. This is needed to be sure all the information is properly initialied to the time when threads starts to use this data. -- svn merge -r57899:57900 ^/branches/soc-2013-depsgraph_mt
2013-08-11BGE: Fixing the memory leaks reported when the BlenderPlayer exits.Mitchell Stokes
They were caused by not having a free_windowmanager_cb set and by not having registered SpaceTypes, which meant data allocated for thosse SpaceTypes could not be freed. These were solved by defining a free_windowmanager_cb for the player that just frees wmWindows, and by making sure we only allocate memory for registered SpaceTypes.
2013-07-23replace use of strcat() where the string offset is known.Campbell Barton
also correct bad logic with converting a textblock to 3d-text, bytes-vs-number of chars wasn't handled right.
2013-07-20Re fixing BGE bug [#36223] Strange page fault of "Game" actuatorDaniel Stokes
Thanks to Campbell for helping me get a better fix put together.
2013-06-24BGE: fix [#35811] Blenderplayer crash on closing if file saved with an ↵Daniel Stokes
actual version. Making sure free_nodesystem() is called before BLO_blendfiledata_free() fixes the problem. free_nodesystem() relies on blendfiledata.
2013-03-12Patch [#34373] Use i18n monospace font in Text editor and Python consoleIrie Shinsuke
This patch allows Blender to display i18n monospace font in the text editor and the Python interactive console. Wide characters that occupy multiple columns such as CJK characters can be displayed correctly. Furthermore, wrapping, selection, suggestion, cursor drawing, and syntax highlighting should work. Also fixes a bug [#34543]: In Text Editor false color in comment on cyrillic To estimate how many columns each character occupies, this patch uses wcwidth.c written by Markus Kuhn and distributed under MIT-style license: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c wcwidth.c is stored in extern/wcwidth and used as a static library. This patch adds new API to blenfont, blenlib and blenkernel: BLF_get_unifont_mono() BLF_free_unifont_mono() BLF_draw_mono() BLI_wcwidth() BLI_wcswidth() BLI_str_utf8_char_width() BLI_str_utf8_char_width_safe() txt_utf8_offset_to_column() txt_utf8_column_to_offset()
2013-02-24GHOST/X11 - free memory allocated by XF86VidModeGetAllModeLines(),Campbell Barton
Comment from Zr says this crashes but looks like this was because there was no check if the function failed to allocate to begin with.
2013-02-23BGE: Fix for bug #34219 "Webcam support under Linux in Standalone broken" ↵Mitchell Stokes
reported by Thomas Achtner (offtools). No one bothered to update the player for ffmpeg changes made in August 2012. This meant the player was no longer calling avdevice_register_all(), and ffmpeg would fail to open web cam streams.
2013-02-05And one more "G.main" compile fix, this time for BGE ;)Bastien Montagne
2013-02-02style cleanup: comment formatCampbell Barton
2012-12-20style cleanupCampbell Barton
2012-12-11Fix game player still not using fast GPU mipmap generation, user preferencsBrecht Van Lommel
are not actually used here.
2012-12-05Fix #33417: add back GPU Mipmap Generation option, apparently with this disabledBrecht Van Lommel
it takes up less memory on some cards, still unclear why.
2012-11-28GPU: remove GPU Mipmap Generation option and just always enable it, it's an oldBrecht Van Lommel
OpenGL 1.4 feature that is stable, there's no reason not to use it. Also fixed GPU mipmap generation not working in the game player.
2012-11-15Image thread safe improvementsSergey Sharybin
This commit makes BKE_image_acquire_ibuf referencing result, which means once some area requested for image buffer, it'll be guaranteed this buffer wouldn't be freed by image signal. To de-reference buffer BKE_image_release_ibuf should now always be used. To make referencing working correct we can not rely on result of image_get_ibuf_threadsafe called outside from thread lock. This is so because we need to guarantee getting image buffer from list of loaded buffers and it's referencing happens atomic. Without lock here it is possible that between call of image_get_ibuf_threadsafe and referencing the buffer IMA_SIGNAL_FREE would be called. Image signal handling too is blocking now to prevent such a situation. Threads are locking by spinlock, which are faster than mutexes. There were some slowdown reports in the past about render slowdown when using OSX on Xeon CPU. It shouldn't happen with spin locks, but more tests on different hardware would be really welcome. So far can not see speed regressions on own computers. This commit also removes BKE_image_get_ibuf, because it was not so intuitive when get_ibuf and acquire_ibuf should be used. Thanks to Ton and Brecht for discussion/review :)
2012-11-11Replacing gettext i18n backend by boost::locale one.Bastien Montagne
This commit adds a small and simplistic C wrapper around boost's locale library as intern/locale, and heavily simplifies/reduces Blender's own i18n code (under blenfont/ dir). And it adds back UI translation on windows' official builds (with msvc)! Note to platform maintainers: iconv and gettext (libintl) can now be removed from precompiled libs (not gettext binaries, under windows, of course ;) ). Note to MinGW32/64 users: boost_locale lib has not yet been uploaded for those build env, please disable WITH_INTERNATIONAL for now (hopefully will be fixed very soon, have contacted psy-fy).
2012-11-10code cleanup: bge static functions & use C++ guarded alloc for the character ↵Campbell Barton
class.
2012-11-03style cleanup: tabs & whitespaceCampbell Barton
2012-10-22New "dynamic" i18n menu.Bastien Montagne
Now both UI translation menu (in userprefs) and isocodes are defined in a text file (release/datafiles/locale/languages), parsed at lunchtime. This way: * No more need to edit Blender code each time we want to add an new language or reorganize the existing menu; * Translators can easily add a new language for testing, by just editing the text file, so no more need to ask to change Blender code and wait for a new build to see your new translation work in Blender! Remaining todo: * Commit i18n py tools * Update wiki doc!
2012-09-16style cleanupCampbell Barton
2012-09-06style cleanup: indentationCampbell Barton
2012-09-04Fix for [#32469] "standalone blenderplayer no longer starts in lastest ↵Mitchell Stokes
build" reported by narutocanada. It looks like the Hive commit (r50310) didn't take changes from r49998 into account, so it was still relying on Ghost events to push the engine along instead of calling app->EngineNextFrame().
2012-09-04code cleanup: move file string defines into BLI_path_utils.h, ↵Campbell Barton
BKE_utildefines is now unused but keep incase we want to add defines there later.
2012-09-02..\commmit_hive.txtBenoit Bolsee