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
2016-11-16Fix T50046: Segmentation fault due to out-of-range VertexGroup.weight() call.Bastien Montagne
`get_vert_def_nr()` was not checking vert index in bmesh case (aka Edit mode).
2016-11-16Remove unused vector iconsMartijn Berger
it seems to me the icons are unused: - VICO_VIEW3D_VEC - VICO_EDIT_VEC - VICO_EDITMODE_VEC_DEHLT - VICO_EDITMODE_VEC_HLT - VICO_DISCLOSURE_TRI_RIGHT_VEC - VICO_DISCLOSURE_TRI_DOWN_VEC - VICO_MOVE_UP_VEC - VICO_MOVE_DOWN_VEC - VICO_X_VEC Since their code contains immediate mode GL calls and they seem to be unused i thought we could remove them. Reviewers: mont29 Reviewed By: mont29 Subscribers: merwin Tags: #bf_blender_2.8 Differential Revision: https://developer.blender.org/D2356
2016-11-16Disable possibility to flip bone names of linked armaturesSergey Sharybin
Linked data should not be modified in such a way. Reported by Nathan here in the studio, reviewed by Bastien, thanks!
2016-11-16Cleanup: Remove unused functionSergey Sharybin
2016-11-16Fix T50026: "Only Insert Needed" doesn't work when using Trackball rotationJoshua Leung
The rotation case here only covered rotation by the "Rotate" tool, but skipped the "Trackball" tool.
2016-11-16Fix T50023: Inverse Kinematics angle limits defaulting to 10313.2403124°Joshua Leung
Regression from 2.77a. The units for the min/max limits were changed in RNA but the pose channels were still being initialised with in degrees.
2016-11-15RNA Main API: set remove's do_unlink default value to true.Bastien Montagne
On second and third thoughts, this should have been done that way since the begining, cases were you just delete a few data-blocks without any serious knowledge of their usages are much, much more frequent than cases where you are deleting thousands of data-blocks and are sure they are not used anywhere anymore... Own fault, but really frustrated that this topic was only raised the day after 2.78a was released. :(
2016-11-15Get rid of 'drivers unlinking' code in `BKE_libblock_free_data()`Bastien Montagne
This has nothing to do here (freeing is not unlinking/remapping!), and was actually redoing something already taken care of by `BKE_libblock_relink_ex()` call in `BKE_libblock_free_ex()`. Also, gives some noticeable speedup when removing datablocks with do_unlink=True, about 5 to 10% quicker e.g. when deleting all objects from a py console, in a big production file...
2016-11-15Depsgraph: Fix frash with iTaSC solverSergey Sharybin
This commit reverts part of a fix for T33275, but things are: - I can not reproduce the original issue at all, so doesn't seem to cause any regressions. - It is really bad idea to do delayed initialization in the threaded environment, it's a straight way to some nasty issues. - We can't do things like this anyway because we go more granular, meaning such a delayed initialization will fail in the case of having several IK solvers (unless they properly accommodate to changed bone head). - Verified the fix with various files from Mango project and all of them seems to work nice with new depednency graph now (old depsgraph has some flickering, but it's not related on DEG itself, but on an environment with lots of proxies and threaded evaluation and it is not a new behavior).
2016-11-15Revert "Proxy: Construct pchan hash when syncing armature proxy"Sergey Sharybin
This reverts commit 9b5a32cbfb8a8565202bdccd232c53f98b62eeec. Apparently it is possible to have other thread mocking around with the hash. Needs deeper investigation, for the time being reverting to prevent crashes.
2016-11-15Cleanup: More explicit parenthesesSergey Sharybin
2016-11-15Avoid interface ID remapping when freeing the whole databaseSergey Sharybin
This makes heavy scenes to be freed almost instantly (so now quadbot scene takes only 0.06sec to free),
2016-11-15Avoid driver target remapping when freeing the whole databaseSergey Sharybin
Added BKE_libblock_free_data_ex() which takes special do_id_user argument which basically indicates whether main database was already taken care about not having "dead" pointers. Gives about 40% speedup of main database free with quadbot scene (3.4sec vs. 5.4 sec on quite powerful desktop).
2016-11-15Fix T50022: "Mirror" in Dopesheet Crashes BlenderJulian Eisel
Just fixing crash itself. Actually operator shouldn't run in most editors (not in dopesheet either I guess), but don't want to spend time on that right now.
2016-11-15Implement grouped undo option for operatorsDalai Felinto
This option makes an operator to not push a task to the undo stack if the previous stored elemen is the same operator or part of the same undo group. The main usage is for animation, so you can change frames to inspect the poses, and revert the previous pose without having to roll back tons of "change frame" operator, or even see the undo stack full. This complements rB13ee9b8e Design with help by Sergey Sharybin. Reviewers: sergey, mont29 Reviewed By: mont29, sergey Subscribers: pyc0d3r, hjalti, Severin, lowercase, brecht, monio, aligorith, hadrien, jbakker Differential Revision: https://developer.blender.org/D2330
2016-11-15Depsgraph: Fix typo in previous optimization commitSergey Sharybin
Was a residue from another experiment, caused infinite loop when reporting dependency cycles.
2016-11-15Atomics: Make naming more obvious about which value is being returnedSergey Sharybin
2016-11-15BMesh: remove redundant link-list manipulationCampbell Barton
No need to track previous edge in vert-separate cleanup
2016-11-14BMesh: match BM_vert_find_first_loop with iterator logicCampbell Barton
Use changes from previous commit for BM_vert_find_first_loop.
2016-11-14BMesh: avoid extra calls per faces-of-vert iteratorCampbell Barton
- `bmesh_radial_faceloop_find_first` & `bmesh_disk_faceedge_find_first` can be replaced with a single call to a new function: `bmesh_disk_faceloop_find_first` - `bmesh_disk_faceedge_find_first` called `bmesh_radial_facevert_check` which isn't needed, since either the current or next loop in the cycle is attached to the edge we're looking for.
2016-11-14BMesh: use const for BM_vert_face_checkCampbell Barton
2016-11-14BMesh: minor improvement to BM_vert_face_checkCampbell Barton
No need to perform edge-of-vert then loop-of-edge check. Any vertex that has an edge with a face will be connected to a face.
2016-11-14BMesh: fix edge-rotate with w/ flipped facesCampbell Barton
Edge-rotate would randomly flip one of the faces to match the other. Also maintain active-face when rotating the edge.
2016-11-14BMesh: fix edge-rotation selection state bugCampbell Barton
Failed edge rotation could leave unselected edge between selected faces, also report warning when edges fail to be rotated.
2016-11-14BMesh: replace iterator with BM_face_vert_share_loopCampbell Barton
2016-11-14BMesh: remove redundant argumentCampbell Barton
2016-11-13BMesh: BM_face_exists no longer uses return argCampbell Barton
Just return the face or NULL, like BM_edge_exists(), Also for BM_face_exists_overlap & bm_face_exists_tri_from_loop_vert. No functional changes. Old code did some partial overlap checks where this made some sense, but it's since been removed.
2016-11-13Fix T50013: Blender 2.78a Link/Append Crash.Bastien Montagne
Object freeing may in some kind access its obdata (in case it has some caches e.g.), since here obdata may have already been freed, let's set object's data pointer to NULL (probably not ideal solution, but we don't care much, those form archipelagos of unused linked datablocks, we nuke'em all anyway). Also fix stupid mistake in one of own recent commits (using ID we just freed, tsst...).
2016-11-13Fix T49997: don't flip texture users menu in texture properties.Brecht Van Lommel
2016-11-13Fix T50008: camera DOF Distance picking from W key menu not working.Brecht Van Lommel
2016-11-13fix T50004: Removed check for empty mesh and adjusted the vertex import ↵Gaia Clary
function to accept meshes without vertices as well
2016-11-12Sculpt UI: Make DynTopo constant detail a resolution valueJulian Eisel
This should make it easier to sculpt in high resolutions, downside is that the new way to calculate maximum edge length is a bit less intuitive. Maximum edge length used to be calculated as blender_unit * percentage_value, now it's blender_unit / value. Reused old DNA struct member, but had to bump subversion to ensure correct compatibility conversion. Also changed default value slightly (would have had to set to 3.333... otherwise). Was Requested by @monio (see https://rightclickselect.com/p/sculpting/zpbbbc/dyntopo-better-scale-input-in-constant-detail-mode) and I think it's worth testing.
2016-11-12BMesh: update comments, ifdef'd codeCampbell Barton
2016-11-12BMesh: Minor improvement to face-joinCampbell Barton
Pass in loops instead of edge & faces. Nearly all callers have the loop-pairs to pass in.
2016-11-12Fix renaming error in last commitCampbell Barton
2016-11-12BKE_library_make_local(): some minor improvements.Bastien Montagne
Do not set 'real user' to groups every time we run the first clearing loop. And do fully clear properly LIB_TAG_DOIT (this is not yet enforced in existing code, but would love to get to that stage in future, so let's do it at least with new code!).
2016-11-12Minor naming cleanup.Bastien Montagne
2016-11-12Enhance BKE_library_make_local() to make it much quicker in complex cases.Bastien Montagne
Basic idea is to split first loop in two, and run checks before making anything actually local, to detect data-blocks that we can directly make local (because we are sure they are only used by already/future local datablocks). This allows to avoid a lot of overhead in later 'cleanup' steps of this function, here with barbershop shot it's four times quicker (from 190s to 48s). We are still far from the instantaneous results of MakeLocal in 2.77, but in that version main characters lose their connection to their armature and remain static after makelocal, so guess new code is still better. ;) There are probably more optimizations possible here, but would rather polish this area of code once we get rid of proxies, those really make it a nightmare to work on.
2016-11-12Minor optimization to BKE_library_tag_unused_linked_data().Bastien Montagne
2016-11-12Switch to unsafe but quick freeing of archipelagos of linked data.Bastien Montagne
This *should* work, but do not hesitate to revert in case it creates new crashes in append or makelocal processes.
2016-11-12Fix T49996: VSE opengl render crash with grease pencil if current frame is ↵Antonioya
empty If the opengl render with grease pencil is run from VSE with the current frame outside visible frames, the render pass is wrong and the render must be canceled because nothing to render. Related to #T49975
2016-11-11GPencil: Create brush set when create new datablock or layerAntonioya
Before this commit, the brush set was created with the first stroke drawing, but if the user creates the datablock or the layer manually (not drawing) the brush list was empty. This commit complement the python fix by Sergey: https://developer.blender.org/rB89c1f9db37cc1becdd437fcfdb1877306cc2b329
2016-11-11Fix crash happening in some cases with MakeLocal operator.Bastien Montagne
Culprit here was once more proxies. Think what was happening here was: 1) Both proxy and proxified armatures' PoseChannels were cleared (needed after remapping due to Bone pointers being stored in pchans). 2) Proxy PoseChannels got rebuilt in `BKE_pose_rebuild_ex()`, which ends, in proxy cases, by actually replacing rebuilt pchans by those from the proxified object... which has not yet been rebuilt. Fixed the issue by merely adding bone pointer to data copied from original pchan into new 'from proxy' one... Sounds much, much safer and sanier anyway, that way we can be sure bone pointer is actually pointing to a bone of the object's armature (this is supposed to be the same Armature datablock between proxy and proxified objects, but that may not be always true especially during makelocal process).
2016-11-11Fix T49994: Setting dupligroup which uses indirect relation will crashSergey Sharybin
Did similar trick to old dependency graph: tag invisible relations for update. Might need some re-consideration, see the comment. This should solve our issues with powerlib addon here in the studio.
2016-11-11Depsgraph: Add missing NULL pointer checkSergey Sharybin
2016-11-11Depsgraph: Fix missing DONE flag in relations builderSergey Sharybin
Was causing relations be build twice in certain cases.
2016-11-11Fix T49993: Indirectly used taper/bevel crashes new dependency graphSergey Sharybin
New dependency graph expects strict separation between nodes and relations builder, meaning, if we try to create relation with an object which is not in the graph yet we'll have an error in depsgraph. Now, so far object nodes were created from bases of the current scene, which caused missing objects in graph in certain cases. Didn't find better approach than to simply ensure object nodes exists when we know they'll be used by relation builder.
2016-11-11Depsgraph: Fix typo in text on curve relation builderSergey Sharybin
2016-11-11Depsgraph: Fix missing ID node tagSergey Sharybin
Might have caused nodes created multiple times for the same object.
2016-11-11Depsgraph: Add some data builder logic to corresponding functionSergey Sharybin