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-06-23EEVEE: Motion Blur: Add accumulation motion blur for better precisionClément Foucault
This revisit the render pipeline to support time slicing for better motion blur. We support accumulation with or without the Post-process motion blur. If using the post-process, we reuse last step next motion data to avoid another scene reevaluation. This also adds support for hair motion blur which is handled in a similar way as mesh motion blur. The total number of samples is distributed evenly accross all timesteps to avoid sampling weighting issues. For this reason, the sample count is (internally) rounded up to the next multiple of the step count. Only FX Motion BLur: {F8632258} FX Motion Blur + 4 time steps: {F8632260} FX Motion Blur + 32 time steps: {F8632261} Reviewed By: jbakker Differential Revision: https://developer.blender.org/D8079
2020-06-23Preferences: New experimental settings for particle system and hairJacques Lucke
This replaces the cmake options `WITH_NEW_OBJECT_TYPES` and `WITH_NEW_SIMULATION_TYPE` with two experimental userpref settings: * `use_new_particle_system`: Enables the point cloud type and the simulation editor. * `use_new_hair_type`: Only displays the add-operator in the add menu for now. Note, in the current state you can't do anything productive with the new particle system or the new hair type. Features will be added step by step in the upcoming weeks and months. Reviewers: brecht Differential Revision: https://developer.blender.org/D8096
2020-06-23Bevel: Refactor profile type input to use an enumHans Goudey
This will allow the easier addition of a constant radius mode in the future and some changes in the UI to mirror the recent similar change from "Only Vertices" to the "Affect" enum.
2020-06-23Cleanup: rename 'name' to 'filepath' for DNA typesCampbell Barton
Using 'name' for the full path of a file reads badly, especially when id.name is used in related code.
2020-06-22Fix Preferences not saved when changing translation settingsJulian Eisel
2020-06-22UI/BPY: Make layout headings translatable from BPYJulian Eisel
This was an oversight when layout headings were added. There's now the regular translation context option in the Python API.
2020-06-22LibOverride: Add CacheFile properties as overridable.Bastien Montagne
2020-06-22External Player: update DJV to version 2Damien Picard
2020-06-21GPencil: Fix unreported missing material onion filter Antonio Vazquez
This feature was removed by error during the refactor done in draw engine. Differential Revision: https://developer.blender.org/D8082
2020-06-20Cleanup: use const args for property name/description accessCampbell Barton
2020-06-20Fix T54112: curve.splines.new() ignores Curve.resolution_u/vCampbell Barton
2020-06-20Bevel: add new 'Absolute' mode for interpreting 'amount' value.Howard Trickey
This mode is like Percent, but measures absolute distance along adjacent edges instead of a percentage. So, for example, if you use this mode with 2 segments and profile=1, you will see the length that the bevel moves along unbeveled edges between beveled ones will match the value specified. Many users seem to expect this behavior, even though it means the bevel width is uneven, so this option is for them.
2020-06-19UI: ShaderFx Drag and Drop, Layout UpdatesHans Goudey
This patch implements the list panel system D7490 for grease pencil shader effects. It also moves their drawing to a callback in ShaderFxTypeInfo in line with the extensible architecture refactoring goal T75724. The implementation is basically exactly the same as for the modifier patch (9b099c86123fc82). Thanks to Matias Mendiola (@mendio) for helping to develop the layout changes. Differential Revision: https://developer.blender.org/D7985
2020-06-19UI: Grease Pencil Modifier Drag and Drop, Layout ChangesHans Goudey
This patch implements the list panel system D7490 for grease pencil modifiers. It also moves their drawing to a callback in GpencilModifierTypeInfo in line with the extensible architecture refactoring goal T75724. This also adds the "set_error" function for grease pencil modifiers, which hadn't been copied from mesh modifiers yet. The implementation is basically exactly the same as for the modifier patch (9b099c86123fc82). Thanks to Matias Mendiola (mendio) for providing mockups for many of the layout changes. Differential Revision: https://developer.blender.org/D7978
2020-06-19UI: Drag and Drop Constraints, Layout UpdatesHans Goudey
This patch implements the list panel system D7490 for constraints. In this case the panels are still defined in Python. The layouts are also updated to use subpanels and the a more organized single column layout. There may be more tweaks necessary for the layouts. Reviewed By: Severin, billreynish, Mets Differential Revision: https://developer.blender.org/D7499
2020-06-19EEEVEE: Object Motion Blur: Initial ImplementationClément Foucault
This adds object motion blur vectors for EEVEE as well as better noise reduction for it. For TAA reprojection we just compute the motion vector on the fly based on camera motion and depth buffer. This makes possible to store another motion vector only for the blurring which is not useful for TAA history fetching. Motion Data is saved per object & per geometry if using deformation blur. We support deformation motion blur by saving previous VBO and modifying the actual GPUBatch for the geometry to include theses VBOs. We store Previous and Next frame motion in the same motion vector buffer (RG for prev and BA for next). This makes non linear motion blur (like rotating objects) less prone to outward/inward blur. We also improve the motion blur post process to expand outside the objects border. We use a tile base approach and the max size of the blur is set via a new render setting. We use a background reconstruction method that needs another setting (Background Separation). Sampling is done using a fixed 8 dithered samples per direction. The final render samples will clear the noise like other stochastic effects. One caveat is that hair particles are not yet supported. Support will come in another patch. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7297
2020-06-19LibOverride: rempve ID preview from comparison (diffing) process.Bastien Montagne
Accessing this from RNA may actually create some data, which we do not want to happen when comparing data. Further more, preview is not data, but a view of it, so we should be safe ignoring it entirely here.
2020-06-19Cloth: allow forces to act parallel to cloth.Alexander Gavrilov
Currently all force effectors can only act on cloth when the force is perpendicular to the surface. This makes sense for wind, but not for other forces; and the user may want even wind to have some friction. This changes effector code to output two force vectors - although you of course can pass the same pointer for both. The force is split between the two outputs based on a new per-effector setting. Differential Revision: https://developer.blender.org/D8017
2020-06-19Fix T78024: GPencil - Add missing UV Fill prop to RNAAntonio Vazquez
This was changed in the refactor done in 2.83 and was not included by error.
2020-06-19Cleanup: unsupported ATTR_FALLTHROUGH use, clang-formatCampbell Barton
2020-06-18UI: Weight Modifiers Falloff: Use better step iconAaron Carlisle
2020-06-18LibOverride: increase speed of RNA diffing process.Bastien Montagne
By using own path construction instead of handy printf-like functions, we get a 10% improvement on overall diffing process! This remains way to slow on some complex production characters, but always good to have still.
2020-06-18Cleanup: redundant parenthesisCampbell Barton
2020-06-18Fix T73056: Cache not invalidated in fade operatorRichard Antalik
This operator is written in python it is inserting keyframes to create fade effects. Add Sequence.invalidate() python function to invalidate strip if it is changed in python. Perhaps I could implement cache invalidation to actual curve manipulation. I guess it wouldn't be very hard to do but having means to invalidate form python is useful as well. Reviewed By: brecht Differential Revision: https://developer.blender.org/D7885
2020-06-17Cycles: Add new Sky Texture method including direct sunlightLukas Stockner
This commit adds a new model to the Sky Texture node, which is based on a method by Nishita et al. and works by basically simulating volumetric scattering in the atmosphere. By making some approximations (such as only considering single scattering), we get a fairly simple and fast simulation code that takes into account Rayleigh and Mie scattering as well as Ozone absorption. This code is used to precompute a 512x128 texture which is then looked up during render time, and is fast enough to allow real-time tweaking in the viewport. Due to the nature of the simulation, it exposes several parameters that allow for lots of flexibility in choosing the look and matching real-world conditions (such as Air/Dust/Ozone density and altitude). Additionally, the same volumetric approach can be used to compute absorption of the direct sunlight, so the model also supports adding direct sunlight. This makes it significantly easier to set up Sun+Sky illumination where the direction, intensity and color of the sun actually matches the sky. In order to support properly sampling the direct sun component, the commit also adds logic for sampling a specific area to the kernel light sampling code. This is combined with portal and background map sampling using MIS. This sampling logic works for the common case of having one Sky texture going into the Background shader, but if a custom input to the Vector node is used or if there are multiple Sky textures, it falls back to using only background map sampling (while automatically setting the resolution to 4096x2048 if auto resolution is used). More infos and preview can be found here: https://docs.google.com/document/d/1gQta0ygFWXTrl5Pmvl_nZRgUw0mWg0FJeRuNKS36m08/view Underlying model, implementation and documentation by Marco (@nacioss). Improvements, cleanup and sun sampling by @lukasstockner. Differential Revision: https://developer.blender.org/D7896
2020-06-17ID Duplicate: uniformize Action duplication.Bastien Montagne
Previously, object (and sub-data) actions would be controlled by the user preferences flag, collections actions would never be duplicted, and scenes actions were always duplicated... Now they all follow the user preferences settings.
2020-06-16UI: Backspace is one wordAaron Carlisle
2020-06-16CMake: Fix compilation errors related on missing dna_type_offsets.hSergey Sharybin
Some of the files were (indirectly) using dna_type_offsets.h without adding dependency from bf_dna (which is needed to ensure the file is generated prior to library compilation).
2020-06-15Fix T77541: Unregistering DATA_PT_modifiers doesn't remove modifier panelsHans Goudey
This is a pretty quick fix; the solution is just removing all the instanced panels whena panel is unregistered. This also necessitates adding the option to call UI_panels_free_instanced with NULL context. Differential Revision: https://developer.blender.org/D7977
2020-06-15Alembic: remove support for HDF5 archive formatSybren A. Stüvel
Alembic is not a single file format, it can be stored in two different ways: Ogawa and HDF5. Ogawa replaced HDF5 and is smaller and much faster (4-25x) to read ([source](http://exocortex.com/blog/alembic_is_about_to_get_really_fast)). As long as Blender has had Alembic support, it has never supported the HDF5 format in any release. There is a build option `WITH_ALEMBIC_HDF5` that can be used to enable HDF5 support in your own build. This commit removes this build option and the code that it manages. In the years that I have been maintainer of Blender's Alembic code, I only remember getting a request to support HDF5 once, and that was to support very old software that has likely since then been updated to support Ogawa. Ubuntu and Fedora also seem to bundle Blender without HDF5 support. This decision was discussed on [DevTalk](https://devtalk.blender.org/t/alembic-hdf5-support-completely-remove) where someone also mentioned that there is a tool available that can convert HDF5 files to the Ogawa format.
2020-06-15Various UI messages fixes...Bastien Montagne
2020-06-15UI: Do not use term 'Subsurf'Aaron Carlisle
So not to be confused with subsurf scatter Differential Revision: https://developer.blender.org/D8005
2020-06-13Cleanup: clang-format, unused variableCampbell Barton
2020-06-12LibOverride: Remove 'auto override' option.Bastien Montagne
Now all overrides are handled that way. Performances of the process look decent enough, even with production characters... If performance issues still arise, we'll investigate other solutions. This should also make T73154 obsolete now.
2020-06-12Add ability to remove Library data-blocks through RNA API.Simone Barbieri
Just uses same code as for all the other ID types. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D7995
2020-06-12Cloth: implement support for a hydrostatic pressure gradient.Alexander Gavrilov
When a fluid is put under influence of gravity or acceleration, it forms an internal pressure gradient, which causes observable effects like buoyancy. Since now cloth has support for simulating pressure changes caused by fluid compression or expansion, it makes sense to also support the effects of gravity. This is intended for better simulation of objects filled or surrounded by fluids, especially when constrained by collisions or pinned vertices, and should result in more realistic shapes. Obviously, this doesn't actually simulate fluid dynamics; instead it is assumed that the fluid immediately adapts to changes in the shape or acceleration of the object without friction or turbulence, and instantly reaches a new static equilibrium. Differential Revision: https://developer.blender.org/D6442
2020-06-12GPencil: Make accessible via python to keyframe typeAntonio Vazquez
This can be requiered for some add-ons and for some reason this prop was missing in RNA.
2020-06-10UI: Only set first bit of modifier expansion fag with PythonHans Goudey
Only the flag for the top level panels is exposed with RNA, so this adds a set method to only change that bit.
2020-06-10Fix (unreported) disapearance of some overrides after save & reload.Bastien Montagne
The override operations generated from 'do not follow' RNA pointer properties (i.e. pointers to other IDs) were not properly clearing their 'no more used' flag, and hence were incorrectly deleted on second save.
2020-06-10UI: Show library names grayed out and right-aligned in menusJulian Eisel
Should separate the data-block name better from the library name and improve readability.
2020-06-10Cleanup: improve custom data type namesJacques Lucke
This is related to T76659. This just renames data type names to `CD_PROP_STRING`, `CD_PROP_FLOAT` and `CD_PROP_INT32`. It makes them a bit more specific and removes unnecessary abbreviations. Reviewers: brecht Differential Revision: https://developer.blender.org/D7980
2020-06-10LibOverride: Fix issues related to ID name differences.Bastien Montagne
Local datablocks (including overrides) need to have a unique name, which can then differ from the reference linked one (especially when there are several local overrides of a same linked data). Issue is, ID name is a 'rna name property', and as such used as reference when dealing with override of collections of IDs, so we cannot have a changing name. The solution implemented here should work and is simple, but it may have some issues in corner cases (time will say), it is not really robust. Alternative solution would be to store ID pointers as reference in override operations, instead of there name. But that would potentially add quiet a lot of overhead to foreach looping in `lib_query.c`.
2020-06-09UI: Set modifier panel expansion on every redrawHans Goudey
This will fix situations where the modifier epansion was set elsewhere besides the UI, like from the python console, solving the drawing part of T77502. Also adds update tags to the show_expanded property, which means the properties window redraws when the property changes.
2020-06-09Sculpt: Pose Squash and Stretch deform modePablo Dobarro
This implements squash and stretch as a deform mode for the Pose Brush. It is similar to scale, but it applies different scale values in different axis. To achieve this, the pivot local space of the transform needs to be aligned to the segment when using this deform mode to apply the scale in the correct direction. Reviewed By: sergey Differential Revision: https://developer.blender.org/D7934
2020-06-09Cleanup: Move pointcache dna to separate fileJacques Lucke
Reviewers: brecht Differential Revision: https://developer.blender.org/D7965
2020-06-08Simulations: initial simulation state and cacheJacques Lucke
The current particle state is stored in a `CustomData` instance and the cache is stored in `PointCache`. The current state exists on the copy-on-write copies of the simulation, while the cache only exists in the original data block. This patch implements a temporary trivial particle simulation that does not use the node system yet. It is used for testing and will be replaced soon. `PointCache` still has some limitations that need to be overcome using separate refactorings. For example, we need to be able to store the number of particles in the point cache. Also we need to change which attributes are stored for a particle system more dynamically than is currently possible afaik. Reviewers: brecht Differential Revision: https://developer.blender.org/D7836
2020-06-08Cleanup: Rename functionJacques Lucke
I forgot to remove the "_access" suffix in a previous rename.
2020-06-08UI: use term 'Merge Distance' instead of 'Merge Limit'Aaron Carlisle
2020-06-08Fix: Wrong UI Label for mesh cache play modeAaron Carlisle
2020-06-08UI: Use Proper Title CaseAaron Carlisle