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
path: root/source
AgeCommit message (Collapse)Author
2014-04-17Viewport Text Drawing: replace single allocs with a memarenaCampbell Barton
- pass label strlen since in many cases its already known. - use single linked list for cached text drawing. - add BLI_link_utils.h for single linked list macros. own tests give approx 22% overall speedup.
2014-04-17Code cleanup: use boolsCampbell Barton
also rename BLI_omp_thread_count -> BLI_system_thread_count_omp
2014-04-17Freestyle: removed unnecessary #include "FreestyleConfig.h".Tamito Kajiyama
2014-04-17Freestyle: removed unused *_EXPORT qualifiers for building Windows DLLs.Tamito Kajiyama
These qualifiers were leftovers of the stand alone Freestyle program and not used (set to an empty string) in Blender for years.
2014-04-17Fix for missing changes in commit 6b0b6f876a4d68acd5c9252270a5135d0308d782.Tamito Kajiyama
2014-04-17Replaced assert() with BLI_assert().Tamito Kajiyama
2014-04-17Freestyle: removed unnecessary #include files and made minor code cleanup.Tamito Kajiyama
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 4).Tamito Kajiyama
(See commit e1771e72fbbf828dbf5bed871b814288389f3611 for more detail of the problem). Fix for a C++ scope issue caused by 'using namespace Freestyle' that was assumed even within the Freestyle namespace definition.
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 3).Tamito Kajiyama
(See commit e1771e72fbbf828dbf5bed871b814288389f3611 for more detail of the problem). Made changes to intern/view_map/Interface0D.h and intern/python/Director.h to avoid #include <Python.h> and keep non-Python header files independent of it.
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 2).Tamito Kajiyama
(See commit e1771e72fbbf828dbf5bed871b814288389f3611 for more detail of the problem). Fixed for #include <Python.h> not properly put in the extern "C" { ... } construct. Also removed redundant inclusion of the header file in the Freestyle Python API code.
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 1).Tamito Kajiyama
The issue was caused by including both Python.h and BLI_math.h. Since the macro definition in Python.h was unconditional, it was necessary to include it first and then BLI_math.h. Addressing the issue turned out to affect many Freestyle source files. There were several other coding flaws that complicated the situation: 1. intern/system/FreestyleConfig.h was abused just to include BLI_math.h which was in fact unnecessary in FreestyleConfig.h. While addressing this, inclusion of both math.h and BLI_math.h had to be duly dealt with to avoid a compiler error about round(). 2. #include <Python.h> was not properly put in the extern "C" { ... } construct. 3. intern/view_map/Interface0D.h and intern/python/Director.h, both of which included Python.h, were included from within Freestyle header files that were almost or completely independent of Python. These non-Python header files were used everywhere in the Freestyle code base, causing many cases of the reported macro redefinitions. 4. The Director.h file was also declaring 'using namespace Freestyle', which was causing another scope issue in several Freestyle header files. This commit is intended to address the first problem above. Subsequent commits will deal with the other three.
2014-04-17Fix T39767: Parent in Mask mode crashesCampbell Barton
2014-04-17Fix T39768: GLOBAL_X/Y/Z don't exist for bpy.ops.armature.calculate_roll ↵Joshua Leung
type enum
2014-04-17BGE - button for deactivate sensors, controllers and actuatorsJorge Bernal
This change introduces a new checkbox to deactivate the sensors, controllers and/or actuators. It is useful during the development phase to avoid delete sensors, controllers or actuators if you want to test something new. NOC: The wiki page is being updated (the images mostly), but the feature is already in the 2.71 release log. {F61628} Reviewers: moguri, dfelinto, campbellbarton, dingto, #user_interface, billrey Reviewed By: moguri CC: billrey Differential Revision: https://developer.blender.org/D16
2014-04-16Fix Knife bug T39617: midpoint snap should affect intermediate points.Howard Trickey
This reverts to the 2.69 behavior, where the snap-to-midpoint option affected the intermediate crossed edges as well as the endpoints.
2014-04-16Fix T39756: Extrude, immediate scaleCampbell Barton
While not exactly a bug, switching to scale isnt generally useful to keep normal constraint.
2014-04-16Code cleanup: use bools & const argsCampbell Barton
2014-04-16Fix T39750: Bones disappearing with strange transforms.Bastien Montagne
Fixed this issue and another similar one, and some minor optimizations.
2014-04-16Fix related to new split normals draw code.Bastien Montagne
Tessellated split normals CDlayer had no swap func, hence ugly little test_index_face() could not rotate its values correctly when rotating tessellated faces... Extra-reported in T39735.
2014-04-16Add Edge sharp/smooth to 3DView shading panel, as well as new Vert sharp/smooth.Bastien Montagne
2014-04-16Fix for half pixel offset rasterizing masksCampbell Barton
2014-04-16Math Lib: optimize axis_dominant_v3_to_m3, approx 6x speedupCampbell Barton
build the matrix directly rather then calculating with axis/angle also remove unused function calc_poly_plane
2014-04-16Math Lib: increase epsilon for ortho_basis_v3v3_v3Campbell Barton
passing in a unit length vector wouldn't always compute unit length vectors because the epsilon tested was too small.
2014-04-16Fix T39445: Async LibLoad CrashMitchell Stokes
There was some deadlock due to trying manage Python's GIL. Instead of continuing to fight with it, anything needing to call into Python while conversion during lib loading is just delayed until it can be done in the main thread.
2014-04-16Fix T39745: "Origin to geometry" not working with Text objects. (regression)Campbell Barton
2014-04-16Fix T39509: Crash when assign an empty as a LoDDaniel Stokes
Missing check when looking for appropriate LoD
2014-04-16Dyntopo:Antony Riakiotakis
Store PBVH node ID in CustomData. This avoids a number of hash deletions and checks/insertions on big hashes.
2014-04-16Dyntopo: slightly change node invalidation, only vertices can change BBAntony Riakiotakis
recalculation, only faces can change normal invalidation.
2014-04-15Fix T39607: Audio not in synch when the blend file loads.Jörg Müller
The problem here was that animation buffers got initialized with zeros in the beginning for unknown parts. Now it gets initialized with the first known value. The bug's result was that the animation of the pitch started with 0 on first playback and thus any seeking while the pitch is zero resulted in seeking to the beginning.
2014-04-15Fix regression, sculpting on mesh with matcaps (without multires/Antony Riakiotakis
2014-04-15Building with C++ guarded alloc works againCampbell Barton
2014-04-15Fix T39685: triangulation modifier creates zero-area facesCampbell Barton
2014-04-15Use binary search threshold when deciding whether to create ActKeyColumns too...Joshua Leung
2014-04-15Optimisations for building "Long Keyframes"Joshua Leung
For a long time, one of the bottlenecks when drawing summary channels in the dopesheet (especially with many objects) was how the long keyframes feature (i.e showing holds between keyframes) got built. Specifically, it was the step where we check on the previous keyframe to see whether there's a hold between those two. The old code performed some elaborate checks, which made sense back when we used to handle certain summary channels (e.g. object-action/ipo, and groups IIRC) differently. However, nowadays, everything just does it by going over the FCurves one by one, so the offending code wasn't really providing much benefit. Unless I've forgotten some other reason why that old method is necessary, this commit should provide a decent speedup here, making things somewhat interactive now (if still a bit jerky). Other Tweaks: 1) Introduced float-precision threshold when checking to see whether an existing long keyframe could be reused. This should hopefully reduce the number of fp-jitter issues when creating summaries for many channels, reducing the number of duplicates created. 2) Precompute colours used for shading the long keyframes, instead of recomputing for each block.
2014-04-15Move binary-search threshold used for FCurves to BKE_fcurve.h headerJoshua Leung
Since this is now pretty much the de-facto "minimum distance between keyframes", we might as well expose this in this header so that other places which need similar thresholds can perform similar checks (needed for my next commit)
2014-04-15Fix T39234: popup menus behave poorly when they have not enough width for ↵Bastien Montagne
all their columns. Issue fixed by: * Not having constant width for all columns, but adapt each to its content's width; * Adapting undo's menu height to undo list length (so that we never have more than three columns). It is still possible to get issues in extreme cases (small screen, high DPI size, long op names everywhere...), but this should now be rare corner cases. Also fixes a minor glitch with undo menu (first column had one item less than the others...).
2014-04-15Structural cleanup and improvements for the compositor.Lukas Tönne
Many parts of the compositor are unnecessarily complicated. This patch aims at reducing the complexity of writing nodes and making the code more transparent. == Separating Nodes and Operations == Currently these are both mixed in the same graph, even though they have very different purposes and are used at distinct stages in the compositing process. The patch introduces dedicated graph classes for nodes and for operations. This removes the need for a lot of special case checks (isOperation etc.) and explicit type casts. It simplifies the code since it becomes clear at every stage what type of node we are dealing with. The compiler can use static typing to avoid common bugs from mixing up these types and fewer runtime sanity checks are needed. == Simplified Node Conversion == Converting nodes to operations was previously based on "relinking", i.e. nodes would start with by mirroring links in the Blender DNA node trees, then add operations and redirect these links to them. This was very hard to follow in many cases and required a lot of attention to avoid invalid states. Now there is a helper class called the NodeConverter, which is passed to nodes and implements a much simpler API for this process. Nodes can add operations and explicit connections as before, but defining "external" links to the inputs/outputs of the original node now uses mapping instead of directly modifying link data. Input data (node graph) and result (operations graph) are cleanly separated. == Removed Redundant Data Structures == A few redundant data structures have been removed, notably the SocketConnection. These are only needed temporarily during graph construction. For executing the compositor operations it is perfectly sufficient to store only the direct input link pointers. A common pointer indirection is avoided this way (which might also give a little performance improvement). == Avoid virtual recursive functions == Recursive virtual functions are evil. They are very hard to follow during debugging. At least in the parts this patch is concerned with these functions have been replaced by a non-virtual recursive core function (which might then call virtual non-recursive functions if needed). See for example NodeOperationBuilder::group_operations.
2014-04-15Math Lib: avoid having to pass a pre-calculated normal tot area_poly_v3Campbell Barton
add normal_poly_v3
2014-04-15Various fixes/improvements regarding BMesh's elem_index_dirty and BM_LOOP ↵Bastien Montagne
handling. Most notably, BM_LOOP and BM_FACE index recompute should now be fully decoupled.
2014-04-15Fix T39743: Crash when deleting faces in with new autosmooth.Bastien Montagne
Odd I did not catch this one... :/
2014-04-15Fix T37675: blender internal viewport render wrong for volumes after rotation.Brecht Van Lommel
We really should not have Object.imat_ren, that's the wrong place to put render data. But just update it now on rotation rather than doing a bigger refactor to remove it.
2014-04-15Fix T39610: Shared mesh used for Mesh Deform causes crashSergey Sharybin
For now disable using linked edit mesh in the meshdeform modifier. This is because editbmesh_get_derived_cage_and_final() might easily conflict with the thread which evaluates object which is in the edit mode for this mesh. We'll support this case once granular dependency graph is landed.
2014-04-15Fix T39607: Audio not in synch when the blend file loads.Bastien Montagne
Root of issue is probably in AUDASPACE itself (or even in OpenAL?). Issue not present with SDL backend, only OpenAL afaik. For now, workaround in Blender is to call seek twice when starting play (not needed when resuming from pause).
2014-04-15Some style cleanup in sound area.Bastien Montagne
2014-04-15Code cleanup: indentationCampbell Barton
2014-04-15Fix compilation (size_t not defined) by including stddef.h in BLI_sys_types.hBastien Montagne
2014-04-15Fix my last commit cad4bfe: Added 'use_' prefix to Freestyle edge/face mark ↵Tamito Kajiyama
properties.
2014-04-15Revert part of last commit,Campbell Barton
RNA is low level data access, setting mesh values shouldn't change draw options. Also its redundant to name attrs Face.freestyle_face_mark, removed edge/face from attr names
2014-04-15GHash: add BLI_ghashutil_uinthash_v4 for hashing 4 ints at onceCampbell Barton
2014-04-15Freestyle: Added missing mesh property definitions for Freestyle Edge/Face ↵Tamito Kajiyama
marks. This revision also addresses the issue of these properties not shown in the Outliner in the Datablocks display mode. Now Freestyle edge/face marks can be keyframed through the Outliner.