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-19Cleanup: `make format` (and adding . to end of comment)Dalai Felinto
2020-03-19UI: add view aligned gizmo colorCampbell Barton
Was hard coded to white making white backgrounds impractical. D7162 by @billreynish with edits.
2020-03-19Cleanup: use '\' for doxygen commandsCampbell Barton
2020-03-19Cleanup: spellingCampbell Barton
2020-03-19Fix building on Linux as '__time64_t' isn't portableCampbell Barton
2020-03-19VSE: Strip drawing improvementsRichard Antalik
This patch include changes: - Thicker and clearer selection indication - Slimmer handles - More transparent muted strips - Trim frame number is drawn inside the strip - Strip text is drawn in upper part of strip - Color strips now have specific color, with chosen color drawn under strip text - Transition strip will use color of input strips showing direction of transition - Selecting effect strip will highlight input strips - Selecting multicam strips will highlight target channel - Missing media state is now indicated by a red line drawn on the top part of the strip - A checkerboard pattern is now drawn on the outsides of the meta range - Hold still regions are now always drawn if existent, with a darker shade of the strip’s background color Author: Alessio Monti di Sopra <a.monti> Reviewed By: ISS Differential Revision: https://developer.blender.org/D6883
2020-03-19VSE: Disk cacheRichard Antalik
This patch implements dumping images from cache to HDD. The main goal of this system is to provide a means to achieve consistent playback speed mainly for strips that are not possible to preview in real time. How to use: Disk cache has own settings in user preferences for path to storage, size limit and compression level. To use disk cache, you need to check `Use Disk Cache` box, set `Disk Cache Directory`, `Disk Cache Limit` and save or open existing .blend file. By default sequencer output will be cached only. Manual setting is possible in cache panel. Uses: - Replacement or alternative for proxies. Disk cache will work with any strip type, supports float images as well. - Storage for strip thumbnails. - Less RAM needs to be allocated for preview cache How it works: Disk cache is extension of RAM cache. Every image, that is stored or deleted in RAM will be stored or deleted on HDD as well. Images can be compressed to save space and for use on slower drives. Compressed images are slower to write and read though. Images are stored in bulk of 100 rendered frames per one file. This is to overcome slow file access time for large amount of files. Drawback is, that if one frame needs to be redrawn, all 100 frames are deleted. Reviewed By: sergey Differential Revision: https://developer.blender.org/D5524
2020-03-19Fluid: Fixed issue with intial velocities in liquid domainsSebastián Barschkis
The fix for T74762 (bf9c4af9bb74) introduced this issue. Initial velocities were not applied to liquids anymore.
2020-03-18Cleanup: 64 bit file IO on windows.Ray Molenkamp
Unlike Linux where fseek/tell will be either 32 or 64 bit depending on the target platform, it will always be 32 bit on windows. We had some macro magic in BLI_winstuff.h that substituted them for 64 bit versions, but that is upsetting the system headers if they get included after BLI_winstuff.h which is problematic for D6811. This diff adds proper functions in blenlib and updates all calls that were using the BLI_winstuff.h header to gain 64 bit file IO. note: Anything that was using the 32 bit versions (ie not including BLI_winstuff.h) will still be using the 32 bit versions, which is perhaps a good code quality Friday project. Differential Revision: https://developer.blender.org/D7160 Reviewers: brecht dfelinto
2020-03-18Cleanup: spellingCampbell Barton
2020-03-18Volumes: add render settings for volume datablockBrecht Van Lommel
* Space: volume density and step size in object or world space * Step Size: override automatic step size * Clipping: values below this are ignored for tighter volume bounds The last two are Cycles only currently. Ref T73201
2020-03-18Objects: Eevee and workbench rendering of new Volume, Hair, PointCloudBrecht Van Lommel
Only the volume drawing part is really finished and exposed to the user. Hair plugs into the existing hair rendering code and is fairly straightforward. The pointcloud drawing is a hack using overlays rather than Eevee and workbench. The most tricky part for volume rendering is the case where each volume grid has a different transform, which requires an additional matrix in the shader and non-trivial logic in Eevee volume drawing. In the common case were all the transforms match we don't use the additional per-grid matrix in the shader. Ref T73201, T68981 Differential Revision: https://developer.blender.org/D6955
2020-03-18Objects: add Volume object type, and prototypes for Hair and PointCloudBrecht Van Lommel
Only the volume object is exposed in the user interface. It is based on OpenVDB internally. Drawing and rendering code will follow in another commit. https://wiki.blender.org/wiki/Source/Objects/Volume https://wiki.blender.org/wiki/Reference/Release_Notes/2.83/Volumes Hair and PointCloud object types are hidden behind a WITH_NEW_OBJECT_TYPES build option. These are unfinished, and included only to make it easier to cooperate on development in the future and avoid tricky merges. https://wiki.blender.org/wiki/Source/Objects/New_Object_Types Ref T73201, T68981 Differential Revision: https://developer.blender.org/D6945
2020-03-18Weight Paint: Implement a new Lock-Relative mode.Alexander Gavrilov
This check box alters how weights are displayed and painted, similar to Multi Paint, but in a different way. Specifically, weights are presented as if all locked vertex groups were deleted, and the remaining deform groups normalized. The new feature is intended for use when balancing weights within a group of bones while all others are locked. Enabling the option presents weight as if the locked bones didn't exist, and their weight was proportionally redistributed to the editable bones. Conversely, the Multi-Paint feature allows balancing a group of bones as a whole against all unselected bones, while ignoring weight distribution within the selected group. This mode also allows temporarily viewing non-normalized weights as if they were normalized, without actually changing the values. Differential Revision: https://developer.blender.org/D3837
2020-03-17VR: Initial Virtual Reality support - Milestone 1, Scene InspectionJulian Eisel
NOTE: While most of the milestone 1 goals are there, a few smaller features and improvements are still to be done. Big picture of this milestone: Initial, OpenXR-based virtual reality support for users and foundation for advanced use cases. Maniphest Task: https://developer.blender.org/T71347 The tasks contains more information about this milestone. To be clear: This is not a feature rich VR implementation, it's focused on the initial scene inspection use case. We intentionally focused on that, further features like controller support are part of the next milestone. - How to use? Instructions on how to use this are here: https://wiki.blender.org/wiki/User:Severin/GSoC-2019/How_to_Test These will be updated and moved to a more official place (likely the manual) soon. Currently Windows Mixed Reality and Oculus devices are usable. Valve/HTC headsets don't support the OpenXR standard yet and hence, do not work with this implementation. --------------- This is the C-side implementation of the features added for initial VR support as per milestone 1. A "VR Scene Inspection" Add-on will be committed separately, to expose the VR functionality in the UI. It also adds some further features for milestone 1, namely a landmarking system (stored view locations in the VR space) Main additions/features: * Support for rendering viewports to an HMD, with good performance. * Option to sync the VR view perspective with a fully interactive, regular 3D View (VR-Mirror). * Option to disable positional tracking. Keeps the current position (calculated based on the VR eye center pose) when enabled while a VR session is running. * Some regular viewport settings for the VR view * RNA/Python-API to query and set VR session state information. * WM-XR: Layer tying Ghost-XR to the Blender specific APIs/data * wmSurface API: drawable, non-window container (manages Ghost-OpenGL and GPU context) * DNA/RNA for management of VR session settings * `--debug-xr` and `--debug-xr-time` commandline options * Utility batch & config file for using the Oculus runtime on Windows. * Most VR data is runtime only. The exception is user settings which are saved to files (`XrSessionSettings`). * VR support can be disabled through the `WITH_XR_OPENXR` compiler flag. For architecture and code documentation, see https://wiki.blender.org/wiki/Source/Interface/XR. --------------- A few thank you's: * A huge shoutout to Ray Molenkamp for his help during the project - it would have not been that successful without him! * Sebastian Koenig and Simeon Conzendorf for testing and feedback! * The reviewers, especially Brecht Van Lommel! * Dalai Felinto for pushing and managing me to get this done ;) * The OpenXR working group for providing an open standard. I think we're the first bigger application to adopt OpenXR. Congratulations to them and ourselves :) This project started as a Google Summer of Code 2019 project - "Core Support of Virtual Reality Headsets through OpenXR" (see https://wiki.blender.org/wiki/User:Severin/GSoC-2019/). Some further information, including ideas for further improvements can be found in the final GSoC report: https://wiki.blender.org/wiki/User:Severin/GSoC-2019/Final_Report Differential Revisions: D6193, D7098 Reviewed by: Brecht Van Lommel, Jeroen Bakker
2020-03-17Cleanup: Fix warnings about function signature of register passRay Molenkamp
RE_engine_register_pass is sometimes in the headers with type as an integer parameter, sometimes as eNodeSocketDatatype. This caused warnings, the root cause was makesrna was not able to generate the proper type for enums and defaulted to int. makesrna has been extended with the RNA_def_property_enum_native_type that allows telling makesrna the native type of an enum, if set it will be used otherwise it will still fall back to int. Differential Revision: https://developer.blender.org/D7117 Reviewed By: brecht
2020-03-17Fix T74762: Mantaflow: Non emmiting flow source affects simulationSebastián Barschkis
2020-03-17Cleanup: Remove unused functionSergey Sharybin
Was introduced earlier today and did not turn out to be very useful and clear.
2020-03-17Multires: Properly support virtual modifiers for Apply BaseSergey Sharybin
The initial code from earlier from today didn't really work reliable since it is not possible to apply virtual modifiers but not the real multires one (in a situation like mesh with shapekeys and multires). New code uses less memory and has better performance for the case when there are actual modifiers leading the multires. The case when there is only multires will not be as performant as possible at this moment.
2020-03-17GPencil: Fix Parent layer not workingAntonio Vazquez
The parenting was using the old logic, but with new engine the draw is done using eval data. Fixed the depsgraph relationship missing with bones to get an update when the bone is transformed. Also fixed Snap cursor to Selected
2020-03-17Cleanup: blenkernel proper header inclusion for BKE_ocean.hRay Molenkamp
BKE_ocean.h uses the bool type without including stdbool.h counting on someone else including that before it. With D6811 enabling automatic sorting of the includes this can no longer be counted on. This changes includes stdbool.h in BKE_ocean.h so it can build without being depended on others including the right headers before it.
2020-03-17Multires: Fix Apply Base when there are deform modifiersSergey Sharybin
Their effect was applied twice after hitting Apply Base since the operator was also applying deformation caused by those modifiers.
2020-03-17Multires: Add utility to create deformed base meshSergey Sharybin
The new function will use original object as a starting point and apply all enabled deformation modifiers prior to the multires.
2020-03-17Mesh: Fix applying deform modifier up to indexSergey Sharybin
The code would have break the first (deform only) modifiers once the index is reached, but it will not prevent second loop (over remaining modifiers) from run. This was applying deform modifier twice in some conditions: having single deform modifier and calculating deformed mesh up to the first modifier (index=0).
2020-03-17Mesh: Add utility to calculate deform modifier up to indexSergey Sharybin
Intention is to be used to create mesh at the state which is an input to the multires modifier.
2020-03-17Multires: Cleanup, argument naming and orderSergey Sharybin
Use full argument name. Also order arguments in the generosity order: from depsgraph (which has everything) to object (which contains multires) specific multires modifier.
2020-03-17Multires: Cleanup, remove redundant argumentSergey Sharybin
Scene can be queried from the dependency graph.
2020-03-17Fluid: Fixes for new abort bake faster featureSebastián Barschkis
In addition to previous commit that made it possible to abort bakes faster.
2020-03-17Add experimental global undo speedup.Bastien Montagne
The feature is hidden behind an experimental option, you'll have to enable it in the preferences to try it. This feature is not yet considered fully stable, crashes may happen, as well as .blend file corruptions (very unlikely, but still possible). In a nutshell, the ideas behind this code are to: * Detect unchanged IDs across an undo step. * Reuse as much as possible existing IDs memory, even when its content did change. * Re-use existing depsgraphs instead of building new ones from scratch. * Store accumulated recalc flags, to avoid needless re-compute of things that did not change, when the ID itself is detected as modified. See T60695 and D6580 for more technical details.
2020-03-17Revert "Cleanup: use doxy sections"Campbell Barton
This reverts commit 626b2bd071b334201996081b907e18d9c2dee919. Sergey prefers not to use doxy sections for this code. Revert pending a decision on T74845
2020-03-17Fluid: Abort baking jobs fasterSebastián Barschkis
With this change baking jobs will be aborted faster. The user will not have to wait for the current frame to finish baking. The bake job will exit early and discard the incomplete frame.
2020-03-17Multires: Cleanup, naming, make it more consistentSergey Sharybin
The coarse mesh is an input to generic Subdiv, and exact meaning is ambiguous. The input to Multires is a base mesh, which owns CD_MDISPS.
2020-03-17Cleanup: minor changes.Bastien Montagne
2020-03-17Fluid: Re-dded Empty Space option in the UISebastián Barschkis
This option existed already and was just hidden in the UI. With the new fluids system though, it will only be used for rendering - and not to optimize the cache.
2020-03-17Depsgraph: Adds helpers to extract/restore despgraphs in a given Main.Bastien Montagne
Extract will steal all depsgraphs currently stored in given bmain, and restore will put them back in place, using scene and viewlayers as keys. Preliminary work for undo-speedup. Part of T60695/D6580.
2020-03-17BKE_lib_id: Add helper to swap full ID content and use proper naming.Bastien Montagne
Preliminary work for undo-speedup. Part of T60695/D6580.
2020-03-17Cleanup: rename 'centre' to 'center' in View3DCampbell Barton
2020-03-17Cleanup: use more descriptive variable name for the data-maskCampbell Barton
Make it explicit this data mask is added to the default mask.
2020-03-16Fix T61234 Mirroring Grease Pencil keyframes in the Dopesheet failsSybren A. Stüvel
`ANIM_animdata_update()` did not sort grease pencil frames. A pre-existing comment stated this wouldn't be necessary as `posttrans_gpd_clean()` already does this. However, this is only applicable when the change is performed via the transform system. The mirror operator doesn't call `posttrans_gpd_clean()`, invalidating the assumption in the comment. I moved the sorting code into `BKE_gpencil_layer_frames_sort()`, which is now called from both `ANIM_animdata_update()` and `posttrans_gpd_clean()`.
2020-03-16Cleanup: Typo in commentSergey Sharybin
2020-03-15Fix potential NULL pointer de-reference creating liquid geometryCampbell Barton
2020-03-15Cleanup: avoid setting float values by bit-patternCampbell Barton
Replace memset with copy_vn_fl, note that the exact values are slightly different in this case. The value being set was close to FLT_MAX.
2020-03-15Cleanup: redundant assignmentsCampbell Barton
2020-03-14UI: Larger Alert IconsHarley Acheson
Adding a set of larger icons for use in informational dialogs. Differential Revision: https://developer.blender.org/D6859 Reviewed by Campbell Barton
2020-03-14Cleanup: spellingCampbell Barton
2020-03-14Cleanup: sort file lists & struct declatationsCampbell Barton
2020-03-14Cleanup: use doxy sectionsCampbell Barton
2020-03-13Cleanup: `BKE_mesh_nomain_to_mesh`: Add assert that source mesh is indeed ↵Bastien Montagne
not in Main.
2020-03-13Fix T74686: Loading btx file in multires modifier is not workingSergey Sharybin
Was happening when object does not have CD_MDISPS allocated yet. Need to make sure totdisp and level is specified on CD_MDISPS data prior to loading (as the load expects them to be properly set).
2020-03-13Multires: Fix loosing sculpt data when using external BTX fileSergey Sharybin