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
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-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-04-25Always init pointcache frame step to 1.Bastien Montagne
Note it was already the case for many simulations (cloth, rigidbody, etc.), just doing this systematically in BKE_ptcache_add() now, will avoid us some recurring bug reports. Advanced users will know when they can/have to raise this parameter!
2014-04-13Code cleanup: quiet warnings & styleCampbell Barton
2014-04-11Fix for rigidbody treating the quat as a v3 with pointcacheCampbell Barton
2014-04-02Rename "BLI_cpu.h" to "BLI_system.h" and add to it BLI_getpid() helper.Bastien Montagne
There is not much sense to have a whole BLI file just to check SSE2 on CPUs... So idea is to rename it to more generic "BLI_system", and add to it more system-related utils, like e.g. an include helper for getpid(), which allows to hide unix/windows internals from rest of the code... Reviewers: campbellbarton Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D439
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-02-07ListBase API: add utility api funcs for clearing and checking emptyCampbell Barton
2014-02-05Fix T35328: Disk caches of multiple particle systems on a single object ↵Sergey Sharybin
overwrite each other It was intended to work actually using particle cache's stack index but this index might have been calculated incorrect in special case: * With default cube scene, add particle system to the cube * Add disk cache to the particle system * Save file and reload it * Add another particle system and enable disk cache This would lead to two point caches with the same stack index of zero. This happened because point cache indices list wasn't stored in the .blend file so once you've reload your file blender doesn't know anything about number or point caches used. And what was even more confusing is that point cache indices list was trying to be load from the file, but this failed because it wasn't in the file. This commit solves the root of the issue which is ability of producing .blend file with two point caches using the same disk cache. This is done by making it sure that point cache indices list is stored in the .blend file. And also made it so disabling disk cache will tag it to recalculate stack index. Old broken files wouldn't magically start working, but fixing them is rather simple manually by toggling Disk Cache option. Reviewers: lukastoenne, brecht CC: sergof Differential Revision: https://developer.blender.org/D286
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-09Fix T37712: Point cache index lookup crashed with 0 points stored.Lukas Tönne
The BKE_ptcache_mem_index_find is using unsigned ints for binary search "high" values - but this leads to integer overflow if the totpoint number is 0 and causes invalid array access.
2013-09-03Related to #36532: show message in modifier when cloth point cache read fails,Brecht Van Lommel
for example due to a subsurf modifier preceding a cloth modifier.
2013-08-27ghash/bli-listbase edits, rename BLI_ghash_pop -> BLI_ghash_popkey (since it ↵Campbell Barton
takes a key as an arg and isnt popping any element from the hash as you might expect). add BLI_pophead/tail, since getting the first element from a list and removing it is a common task.
2013-08-02Fix [#35541]: Point cache doesn't load existing frames from disk if cache ↵Miika Hamalainen
file name is changed.
2013-07-27fix for possible out of bounds read, printing a warning with pointcache header.Campbell Barton
2013-07-25add missing break to space-buttons listener, also rewind own recent change ↵Campbell Barton
(uiPopupBlockHandle.retvec size)
2013-07-15Fix #36058: Displace Modifier errors using a baked Image and displace baking ↵Sergey Sharybin
inconsistency between 2.67/2.68RC and previous versions This was in fact really nasty bug, caused by multitex_nodes function using global variable R (which is a copy of current renderer). this variable is not initialized to anything meaningful for until first rendering (preview or final) happened. Since multitex_nodes might be used outside of render pipeline, made it so whether CM is on or off as an argument to functions multitex_ext_safe and multitex_ext. Now multitex_nodes() is only shall be used for stuff happening from render pipeline! Also needed to make some changes to other places, so all the usages of texture sampling knows for the fact whether CM is on or off. And one more change is related on behavior of dispalcement, wave, warp, weightvg modifiers and smoke. They'll be always using CM off since texture is used for influence, not for color. It's rather bigger patch, but it's mostly straightforward changes, which we really need to be done. Reviewed by Brecht, thanks!
2013-04-12minor edit to bake printouts which could get mixed because of \r.Campbell Barton
2013-04-07Fix for [#34898] Typo in error message of mathutils.VectorThomas Dinges
* Also fixed some more cases of "more then" -> "more than".
2013-03-31style cleanupCampbell Barton
2013-03-19Smoke Bugfix /enhancement: Load pre 2.65 pointcaches.Daniel Genrich
Warning: Just make sure that you DON'T free the cache at any point. This patch can only display existing pointcaches from e.g. 2.64
2013-03-18code cleanupCampbell Barton
2013-03-12Temp fix for stupid -Wformat-security issue.Bastien Montagne
Also makes more use of BLI_snprintf, and makes more consistent code acrross all "header strings" generation in transform.c.
2013-03-12replace sprintf -> strcpy where its not needed.Campbell Barton
2013-03-08style cleanupCampbell Barton
2013-03-05patch [#34103] fileops_1.patchCampbell Barton
from Lawrence D'Oliveiro (ldo) Add comments and use of bool type in fileops.c
2013-02-28More UI messages fixes...Bastien Montagne
2013-02-17Another huge bunch of UI translation fixes, mostly reported by Leon Cheung, ↵Bastien Montagne
Sv.Lockal, Gabriel Gazzán and Satoshi Yamasaki, thanks!
2013-02-06style cleanup: some warnigs & spelling.Campbell Barton
2013-01-23make bullet optional againCampbell Barton
2013-01-23rigidbody: Add rigid body constraintsSergej Reich
Constraints connect two rigid bodies. Depending on which constraint is used different degrees of freedom are limited, e.g. a hinge constraint only allows the objects to rotate around a common axis. Constraints are implemented as individual objects and bahave similar to rigid bodies in terms of adding/removing/validating. The position and orientation of the constraint object is the pivot point of the constraint. Constraints have their own group in the rigid body world. To make connecting rigid bodies easier, there is a "Connect" operator that creates an empty objects with a rigid body constraint connecting the selected objects to active. Currently the following constraints are implemented: * Fixed * Point * Hinge * Slider * Piston * Generic Note: constraint limits aren't animatable yet).
2013-01-23rigidbody: Add point cache supportSergej Reich
Add read/write/interpolate functions. In order to get rigid body point cache id from object it's now required to pass the scene to BKE_ptcache_ids_from_object(). Rigid body cache is drawn in the orange color of the bullet logo.
2013-01-23sim: Remove "continue physics" codeSergej Reich
This was left over from 2.4x days and is not used anymore. Now simulations are always interactive.
2013-01-20code cleanup: remove some paranoid checks which would have crashed anyway ↵Campbell Barton
earlier on. Also some minor formatting.
2013-01-09style cleanupCampbell Barton
2013-01-08style cleanupCampbell Barton
2012-12-28style cleanupCampbell Barton
2012-12-18Fix #33600: copying objects with point caches did not copy the external,Brecht Van Lommel
disk cache and lib path settings.
2012-11-30Fix #33353: Smoke color problems with adaptive domainMiika Hamalainen
High resolution cache didn't always read all written data fields which caused colors to get messed up.
2012-11-18style cleanup: comments & spellingCampbell Barton
2012-11-03style cleanup: tabs & whitespaceCampbell Barton
2012-10-23Related to previous commit I did:Ton Roosendaal
Removed checks for PTCACHE_QUICK_CACHE for exception handling. This to ensure normal cache works as if old PTCACHE_QUICK_CACHE wasn't set. Thanks Campbell for pointing at this!
2012-10-23Bugfix 30974Ton Roosendaal
- Disabled "Quick Cache" option. It was causing ridiculous updates on the entire animation system for start-end frame on every user event causing changes here (like during transform). Worst was that you couldn't transform animated objects for that reason either. Most of the code is still there, waiting for a moment to revise it... - Constraint "Follow Track" (marker) wasn't using inverse matrix code in transform, making it wacko to use (wrong pivot, crazyspace)
2012-10-23style cleanup: also rename bmesh_decimate.c --> bmesh_decimate_collapse.cCampbell Barton
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-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton
2012-10-21code cleanup: spellingCampbell Barton
2012-10-20style cleanupCampbell Barton
2012-10-14style cleanupCampbell Barton