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
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-10-26rename give_cursor to ED_view3d_cursor3d_getCampbell Barton
2013-10-23refactor transform.c - minor changesCampbell Barton
- use TREDRAW_HARD define - use apply prefix for transform callbacks. - make callbacks static.
2013-10-12code cleanup: use const's for vector args.Campbell Barton
2013-09-09screw tool used uninitialized normal to detect flipping direction.Campbell Barton
lookes like bug from bmesh merge, restored from 2.4x.
2013-07-26fix [#36282] Spin error with non uniform scaleCampbell Barton
add support for passing object matrix to bmesh transform operators.
2013-06-16resolve [#33374] Extrude and mirror editingCampbell Barton
mirror editing option was only added to extrude so mirror editing would always be disabled. the option is now hidden to avoid confusing users.
2013-06-09Code cleanup: removed some unused UI button typesBrecht Van Lommel
* CHARTAB: not needed anymore with improved copy/paste support and text input. * IDPOIN: replaced by SEARCH_MENU. * ICONROW/ICONTEXTROW: replaced by RNA enums. * NUMABS: can use min/max limits instead. * BUT_TOGDUAL, TOG3, TOGR, SLI: not used in 2.5 interface.
2013-05-26BLI_math rename functions:Campbell Barton
- mult_m4_m4m4 -> mul_m4_m4m4 - mult_m3_m3m4 -> mul_m3_m3m4 these temporary names were used to avoid problems when argument order was switched.
2013-04-16code cleanup: use BKE naming conventions for functions in BKE_editmesh.h and ↵Campbell Barton
BKE_editmesh_bvh.h
2013-04-14code cleanup: rename BKE_tessmesh -> BKE_editmesh, rename ↵Campbell Barton
EditDerivedBMesh.tc -> em. ('tc' is odd name which isn't used elsewhere).
2013-04-01code cleanup: split editmesh_tools.c, into inset, bevel (both modal ↵Campbell Barton
operators) and moved extrude operators into their own file. also move some selection operators from editmesh_tools.c into editmesh_select.c