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
2020-03-06Cleanup: use 'BKE_' prefix for BKE_deform API callsCampbell Barton
- Use 'BKE_object_defgroup' prefix for object functions. - Rename 'defvert_verify_index' to 'defvert_ensure_index' since this adds the group if it isn't found.
2020-03-06Cleanup: use 'r_' prefix for return argumentsCampbell Barton
Also avoid a redundant strlen call.
2020-03-06Cleanup: use BLI_strnlen instead of strlenCampbell Barton
2020-03-06Cleanup: clang-formatCampbell Barton
2020-03-06Cleanup: use MEM_recallocN_idCampbell Barton
2020-03-06Cleanup: spellingCampbell Barton
2020-03-06Cleanup: add decimal values for event types, order by valueCampbell Barton
2020-03-06Cleanup: quiet switch warningsCampbell Barton
2020-03-06Cleanup: redundant-decls warningCampbell Barton
2020-03-06UI: Using Consistent Font Icon in File BrowserHarley Acheson
Use only one font icon in File Browser for all platforms. Correct mistake to allow this icon to be used. Differential Revision: https://developer.blender.org/D7037 Reviewed by Brecht Van Lommel
2020-03-05Sculpt Face SetsPablo Dobarro
Face Sets are the new system to control the visibility state of the mesh in sculpt and paint modes. They are designed to work in modes where brushes are the primary way of interaction and they provide much more control when working with meshes with complex shapes and overlapping surfaces. This initial commit includes: - Sculpt Face Sets data structures and PBVH rendering. - Face Set overlay and opacity controls. - Sculpt Undo support. - Remesher reprojection support. The visibility state of the mesh is also preserved when remeshing. - Automasking and Mesh filter support. - Mask expand operator mode to expand Face Sets (Shift + W) and flood fill areas by connectivity (press Ctrl while expanding). - Sculpt Mode Face Sets and Visibility API. - Sculpt Face Sets creation and visibility management operators. - Operator to randomize the Face Sets colors. - Draw Face Sets brush tool to create and edit the Face Sets. Drawing on the mesh creates a new Face Set. Pressing Ctrl before drawing modifies the Face Set under the brush at the beginning of the stroke. - Updated keymap and menu to work with Face Sets from Sculpt Mode (H to toggle visibility, Alt + H to show all, Shit + H to hide). - Pie menu on the W key with Face common Sets operations. Know limitations: - Multires support. The Face Sets and Visibility API needs to be implemented for Multires. Reviewed By: jbakker, #user_interface, Severin Differential Revision: https://developer.blender.org/D6070
2020-03-05UI: File Browser FavoritesHarley Acheson
Adding more Windows special folder locations, used when browsing or bookmarking. Differential Revision: https://developer.blender.org/D7014 Reviewed by Brecht Van Lommel
2020-03-05UI: Mac File Browser System List ChangesYevgeny Makarov
Nicer icons for File Browser System and Favorites lists on Mac. Differential Revision: https://developer.blender.org/D6398 Reviewed by Brecht Van Lommel
2020-03-05Fluid: Optimization in mesh generating loopSebastián Barschkis
No need to have three separate loops for vertices, normals and speed vectors. Since all of them loop over the vertex count, a single loop can be used.
2020-03-05Cleanup: Move std::deque to depsgraph_type.hSybren A. Stüvel
Since `std::deque` is used in a few areas of the Depsgraph, and an upcoming patch adds one more, it's time it's considered as "commonly used type". No functional changes.
2020-03-05Add an session-wise uuid integer to IDs.Bastien Montagne
"session-wise" here mean while editing a same .blend file. So creating or opening a new one will reset the uuid counter. This should avoid any overflow in practice. Only IDs added to Main database get an uuid, runtime-only ones are not affected. This is intended to provide undo with a way to find IDs across several 'memory realms' (undo speedup project). No behavior change is expected from this commit itself. Part of T60695. Differential Revision: https://developer.blender.org/D7007
2020-03-05Fix T74332: selection sync replacing parent selectionNathan Craddock
Selecting certain child datablocks also selects the parent (e.g. selecting a pose bone selects the armature). The base was selected, but the outliner tree element was left unselected. The subsequent selection sync would then deselect the parent base because it was not flagged as selected in the outliner. This led to issues like T74332 where selecting a pose bone in the outliner did not show drivers in the driver editor unless the armature was explicitly added to the selection afterwards. The solution is to also flag the outliner elements as selected when selecting parent bases. Differential Revision: https://developer.blender.org/D7029
2020-03-05Fluid: Fix initial velocities for new static emission modeSebastián Barschkis
For now, disabling static mode whenever initial velocities are being used.
2020-03-05Fluid: Diffusion settings now optionalSebastián Barschkis
For optimization purposes these settings need to be enabled explicitly from now on.
2020-03-05EEVEE: Render Passes BlendingJeroen Bakker
Changed the blending mode to full blending. I found the issue when during development of a material pass containing alpha values.
2020-03-05Fix T74446: Liquid Inflow Does Not WorkSebastián Barschkis
Somehow this was forgotton in the optimization patch a5c4a44df67e.
2020-03-05Initial step for IDTypeInfo refactor 'cleanup' project.Bastien Montagne
Introduce new IDTypeInfo structure. Each ID type will have its own, with some minimal basic common info, and ID management callbacks. This patch only does it for Object type, for demo/testing purpose. Moving all existing IDs is a goal of next "cleanup Friday". Note that BKE_idcode features should then be merged back into BKE_idtype - but this will have to be done later, once all ID types have been properly converted to the new system. Another later TODO might be to try and add callbacks for file read/write, and lib_query ID usages looper. This is part of T73719. Thanks to @brecht for initial idea, and reviewing the patch. Differential Revision: https://developer.blender.org/D6966
2020-03-05Cleanup: Clarified commentSybren A. Stüvel
No functional changes.
2020-03-05Fix T74431: EEVEE AO Render PassJeroen Bakker
Missing code-path in recent refactoring.
2020-03-05Cleanup: redundant castsCampbell Barton
2020-03-05Cleanup: material API namingCampbell Barton
- Use 'BKE_object_material_*', 'BKE_id_material_*' prefix for functions that operate on Object and ID types. - Use '_len' suffix for length (matching BLI naming). - Use '_p' suffix for functions that return a pointer to values where the value would typically be returned. Functions renamed: - BKE_object_material_resize was BKE_material_resize_object - BKE_object_material_remap was BKE_material_remap_object - BKE_object_material_remap_calc was BKE_material_remap_object_calc - BKE_object_material_array_p was BKE_object_material_array - BKE_object_material_len_p was BKE_object_material_num - BKE_id_material_array_p was BKE_id_material_array - BKE_id_material_len_p was BKE_id_material_num - BKE_id_material_resize was BKE_material_resize_id - BKE_id_material_append was BKE_material_append_id - BKE_id_material_pop was BKE_material_pop_id - BKE_id_material_clear was BKE_material_clear_id
2020-03-05Cleanup: formatting, strip trailing spaceCampbell Barton
2020-03-04Cleanup: replace unnecessary MEM_callocN callsCampbell Barton
Use MEM_mallocN when memory is immediately copied over.
2020-03-04Fluid: Bounding boxes for effector objectsSebastián Barschkis
This commit adds bounding box support for emission objects - similarly to flow objects. Before, each effector object had to iterate over the entire domain. Bake times of scenes with multiple obstacles improved significantly with this optimization. Other improvements that were implemented alongside the bbox feature: - Option for subframe sampling for effector objects - Option to enable / disable effectors (can be animated) - Optimization for static objects. If a flow or effector object does not move and the adaptive domain is not in use, the bake time will be optimized further by reusing the flow / effector grids from the previous frame (no recalculation).
2020-03-04Fluid: Fix issue with fire emissionSebastián Barschkis
Fixes weird behavior at inflow regions. Issue was introduced with d6d44ccc7786.
2020-03-04Fluid: Naming cleanup for flags gridSebastián Barschkis
Use flags instead of obstacle to avoid confusion with obstacle levelset grid.
2020-03-04Fluid: Added an option to delete fluid inside obstaclesSebastián Barschkis
Simple checkbox that - if enabled - will tell the solver to clear density or liquid particles in obstacle cells.
2020-03-04Fix T74434: Video Sequencer: Alt+ clicking (assign to all selected) doesPhilipp Oeser
not work for unlocking Special case for when we do this on "lock": - locked sequences are not in "selected_editable_sequences" - use "selected_sequences" in that case Maniphest Tasks: T74434 Differential Revision: https://developer.blender.org/D7023
2020-03-04Fix T71578: knife tool draws some points incorrectlyJacques Lucke
D6417 by @fbessou
2020-03-04Build System: Add OpenXR-SDK dependency and WITH_XR_OPENXR build optionJulian Eisel
The OpenXR-SDK contains utilities for using the OpenXR standard (https://www.khronos.org/openxr/). Namely C-headers and a so called "loader" to manage runtime linking to OpenXR platforms ("runtimes") installed on the user's system. The WITH_XR_OPENXR build option is disabled by default for now, as there is no code using it yet. On macOS it will remain disabled for now, it's untested and there's no OpenXR runtime in sight for it. Some points on the OpenXR-SDK dependency: * The repository is located at https://github.com/KhronosGroup/OpenXR-SDK (Apache 2). * Notes on updating the dependency: https://wiki.blender.org/wiki/Source/OpenXR_SDK_Dependency * It contains a bunch of generated files, for which the sources are in a separate repository (https://github.com/KhronosGroup/OpenXR-SDK-Source). * We could use that other repo by default, but I'd rather go with the simpler solution and allow people to opt in if they want advanced dev features. * We currently use the OpenXR loader lib from it and the headers. * To use the injected OpenXR API-layers from the SDK (e.g. API validation layers), the SDK needs to be compiled from this other repository. The extra "XR_" prefix in the build option is to avoid mix-ups of OpenXR with OpenEXR. Most of this comes from the 2019 GSoC project, "Core Support of Virtual Reality Headsets through OpenXR" (https://wiki.blender.org/wiki/User:Severin/GSoC-2019/). Differential Revision: https://developer.blender.org/D6188 Reviewed by: Campbell Barton, Sergey Sharybin, Bastien Montagne, Ray Molenkamp
2020-03-04Cleanup: use MEM_recallocN_id utility functionCampbell Barton
2020-03-04RNA: ensure missing calls to RNA_enum_item_end crash in debug modeCampbell Barton
Would have prevented T74227 from slipping through since it didn't crash on some systems.
2020-03-04Fix T74426: Crash in the IK Pose Brush preview with null preview chainPablo Dobarro
After switching tools, the active vertex can be the same and the cursor won't update the previews, so the pose_ik_chain_preview will be null. This often happens in low poly meshes where chances of hovering the same vertex are high. Reviewed By: sergey Maniphest Tasks: T74426 Differential Revision: https://developer.blender.org/D7021
2020-03-04Cleanup: spellingCampbell Barton
2020-03-04Refactor ID make local to use a single flag parameter.Bastien Montagne
Instead of using anonymous booleans flags, also allows to keep the same behavior in all cases, without needing special handling from calling code for our beloved oddballs object proxies...
2020-03-04Cleanup: ID make local: remove `id_in_bmain` argument.Bastien Montagne
This info is now stored in ID tags themselves, so no need to pass an extra anonymous boolean parameter around, yay!
2020-03-04Cleanup: Rename 'make local' functions to new scheme.Bastien Montagne
Also removed some only used locally from the header, `BKE_lib_id.h` is already way too big, no need to overload it with unused things.
2020-03-04UI: rename View Selected" to "Frame Selected"Asad-ullah Khan
Addresses T74331
2020-03-04Fix T73797: Selection/Editing after Make Single User for Object DataPhilipp Oeser
fails Exposed by rB50d5c03e2d14. This was only a problem when _only_ 'Object Data' was made local. If also e.g. 'Object' or 'Materials' was checked, these were already making sure realations were updated [DEG_relations_tag_update(bmain)]. Now also call DEG_relations_tag_update(bmain) for the 'Object Data' case. I assume the underlying issue is that there is some ID_NEW_REMAP happening in 'single_obdata_users()' -- including that for 'me- >texcomesh', which might be responsible for the glitches in selection/ editing? Also not entirely sure why this wasnt a problem prior to rB50d5c03e2d14.(I assume this was somewhat hidden by the fact this was always called with a default action being nothing, the user would always need to access the redo panel. So this might have been hidden by an Undo step involved?) Maniphest Tasks: T73797 Differential Revision: https://developer.blender.org/D7020
2020-03-04Cleanup: avoid the term old when storing/restoring context variablesCampbell Barton
2020-03-04Cleanup: remove unused BLI_strncat_utf8Campbell Barton
Behaves differently to strncat, BLI_strncpy_utf8_rlen can be used for a similar purpose.
2020-03-04Fix possible buffer overflow from incorrect 'strncat' useCampbell Barton
The size argument is the maximum number of bytes to copy, not the destination buffer size. Replace with utility function that joins strings.
2020-03-04BLI_string_utils: add BLI_string_join_array_by_sep_charCampbell Barton
Utility to join strings into a fixed size buffer.
2020-03-04Cleanup: replace CLAMP macros with functionsCampbell Barton
2020-03-04BLI_math: inline clamp functionsCampbell Barton
These are used in some per-pixel operations such as image sampling and color conversion, where replacing existing macro use could add overhead.