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
2018-12-03Depsgraph: completely move customdata_mask to the ID node.Alexander Gavrilov
Move all mask-related fields from Object and OperationDepsNode to Object_Runtime and IDDepsNode. Auto-apply DEG_TAG_GEOMETRY if the mask changes after DEG rebuild. Update DEG API and all code that uses it. This fixes "source mesh data is not ready" errors from Data Transfer modifier when parameters are changed in the UI after the recent mesh_get_eval_final fix. Reviewers: sergey Differential Revision: https://developer.blender.org/D4025
2018-12-01Cleanup: redundant NULL checksCampbell Barton
Also use unsigned shifting for values not in int range.
2018-11-30StudioLight: Renaming stuffsClément Foucault
2018-11-30StudioLight: Add a 4th light to adjust lightingClément Foucault
There was a bug due to non-aligned struct in the DNA that prevented us to increase the size of the userdef light array. Since the studio lights are now presets and stored in external files, there is no need to keep backward compatibility with theses lights. Remove the old array and create a new one. Add blue tint light for specular.
2018-11-30Workbench: Add Shadow Focus and change Shadow OrientationClément Foucault
Shadow focus let the user choose how hard are is the shadows transition. Harder shadow transition can be used for stylistic effects or more uniform shading. Make shadow orientation respect the same orientation as the studio light (view from +Y direction aka. front view). Make the default shadow direction more similar to the default light position (the default light object, not the default studio lighting).
2018-11-29Workbench: Add option to have world space lighting in studio light modeClément Foucault
This option is per viewport. Having view space shading make sense when working on isolated objects like if you were holding them in your hands. But for entire scene work, it is better to have the lighting fixed to have a better spatial representation.
2018-11-29Workbench: Add back studio lighting presetsClément Foucault
This changes a bit how the userprefs solid lights works. They are not visible until enabling the "Edit Solid Light" checkbox. Once enabled the current studiolight used for solid mode will be overwritten. Once the lighting settings are tweaked, the user can click the "Save as Studio light" button to save the current settings. This makes it easy to create new lighting without messing the other presets. The studio lights are stored as ASCII files on the disk using a dead simple custom format. The UI/UX is not perfect and will be improved in other commits. Also includes: * Separate LookDev HDRI selection from Solid Lights * Hide LookDev HDRIs from the Solid Lights selection list
2018-11-29Cleanup: mark `PART_DRAW_EMITTER` of ParticleSetting drawflags as dreprecated.Bastien Montagne
2018-11-28Add Onion Skin support to AnnotationsAntonioya
The old onion skinning used in 2.7x has been ported and converted to 2.8. Only basic features have been included. For more advanced onion skin features, use grease pencil objects. Onion Skin is supported in View 3D and Sequencer.
2018-11-28Workbench: Change Studio lightingClément Foucault
This is in order to have more flexible ligthing presets in the future. The diffuse lighting from hdris was nice but lacked the corresponding specular information. This is an attempt to make it possible to customize the lighting and have a cheap/easy/nice-looking pseudo-PBR workflow. * Add cheap PBR to Workbench with fresnel and better roughness support. This improves the look of the metallic surfaces and is easier to control. * Add ambient light to studio lights settings: just a constant color added to the shading. * Add Smooth option to studio lights settings: This option fakes the effect of making the light bigger making the lighting smoother for this light. Smoother lights gets reflected like a background hdri. * Change default light settings to include the smooth params. * Remove specular highlights from flat shading. (could be added back but how do we make it good looking?) * If specular lighting is disabled, use base color without using metallic. * Include a lot of code simplification/cleanup/confusion fix.
2018-11-28Outliner/visibility: revert changes for now until we find better solutions.Brecht Van Lommel
See T57857 for discussion. This reverts: "Outliner: Do not gray out empty collections" 4521d3e7074d2e08ca813e1f4a2297f5000f335b. "Remove eye column from the outliner" fd16b359977c8932ada8db4ff0e43d0402fdc280. Fix/workaround issues in pose and edit mode" 6d2e2e30d50c40f302b62d3601b5742d7c7056c6. "Per view-layer collection visibility" 4de6a210c69fe254518ca8d6c860782c54f03749.
2018-11-28Per view-layer collection visibilityDalai Felinto
We still control this in the viewport collections visibility menu. But now we are actually changing the visibility of the collections, not of the objects. If a collection is indirectly invisible (because one of its parents are invisible) we gray it out. Also if you click directly in the collection names, it "isolates" the collection by hiding all collections, and showing the direct parents and all the children of the selected collection. Development Note: Right now I'm excluding the hidden collections from the depsgraph. Thus the need for tagging relations to update. If this proves to be too slow, we can change.
2018-11-28Fix tool not being initialized switching windowsCampbell Barton
2018-11-28Cleanup: remove unused app-template flagCampbell Barton
2018-11-28UI: Reduce amount of padding between VSE channels.Pablo Vazquez
Suggested by cezarfarias on RightClickSelect. Code snippet by MalDuffin.
2018-11-27Font textbox overflow: Different methodsDalai Felinto
Sometimes the text doesn't fit. What to do in this case? * Overflow: The default behaviour still is to overflow the text. * Truncated: If any text box is defined we can also not draw the text that goes outside the text boxes. * Scale to Fit: For single-text box texts we can scale down the text until it fits. To support textboxes we are bisecting the scale until we find a good match. Right now the hardcoded iteration limit is 20, and the threshold 0.0001f. An alternative in the future would be to tackle this by integrating existing layout engines such as HarfBuzz. Note: Scale to fit won't work for multiple text-boxes if any of them has either width or height as zero. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D3874 Feature development sponsored by Viddyoze.
2018-11-26UI: rename "OpenGL" render engine to "Workbench".Brecht Van Lommel
Neither is very descriptive for its task, but at least workbench is more future proof and distinguishes it from Eevee.
2018-11-26GP: New Blend Layers functionalityAntonioya
Now it's possible define the blend mode between layers including the option to clamp the layer using underlying layers. Also a new Simplify option has been added to disable blend layers.
2018-11-26Workbench: Add Curvature overlay for better visibility of surface detail for ↵Lukas Stockner
e.g. sculpting The approach is fairly simple, just apply an edge detection filter to the view normal and scale the brightness based on that. The overlay is disabled at object boundaries to avoid dark lines around objects. Generally, this implementation follows the proposal of @monio at https://blender.community/c/rightclickselect/J9bbbc. The changes are: - Dynamic filter radius (on high-DPI displays, a radius of two is used) - Options to reduce the strength of both ridges and valleys - Tweaked function for the strength reduction (the original method actually had a local maximum, resulting in a brighter line inside valleys) - Multiplication for blending instead of overlay, which doesn't work reliably with scene-referred intensities - Renamed to point out the distinction between it and the SSAO-based cavity overlay Reviewers: jbakker Reviewed By: jbakker Subscribers: billreynish, manitwo, linko, monio Differential Revision: https://developer.blender.org/D3617
2018-11-26Fix T58027: Scene.ray_cast crashCampbell Barton
Reintroduce BASE_VISIBLE_BGMODE D3987 by @Soundwave
2018-11-263D View: remove 3D cursorCampbell Barton
Use 3D cursor from the scene (was previously used for local-view).
2018-11-25UI: Initial User-Preferences redesignJulian Eisel
Implements the first changes for T54115: * Rename "User Preferences" window to "Settings" in the UI. We'll likely put workspace settings in there, separate from the global user settings. System settings should become separate from user settings in future to allow settings for specific hardware. * Add sidebar region for navigation (scrolls independently). Addresses space problems, so we can add more categories as needed now. * Increase size of Settings window to compensate new navigation bar. * Group sections into User Preferences and System. Icons for section groups by Andrzej Ambroz. Thanks! * Bumps subversion for file compatibility. Screenshot: https://developer.blender.org/F5715337 I also added categories for future work, but commented them out. We may also want to redesign contents of each section now. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D3088 Design Task: https://developer.blender.org/T54115
2018-11-25Local ViewDalai Felinto
Bring back per-viewport localview. This is based on Blender 2.79. We have a limit of 16 different local view viewports. We are using both the numpad /, as well as the regular /. Missing features: * Hack to make sure lights are always visible. * Make rendered mode with external engines to support this as well (probably just need to support this in the RNA iterators). * Support over 16 viewports by taking existing viewports out of local view. The code can use a cleanup pass in the future to unify the test to see if an object is visible (or we can use TESTBASE in more places).
2018-11-23Depsgraph: add a new operation node for computing B-Bone segments.Alexander Gavrilov
Computing the shape of a B-Bone is a quite expensive operation, and there are multiple constraints that can access this information in a variety of useful ways. This means computing the shape once per bone and saving it is good for performance. Since the shape may depend on the position of up to two other bones, often in a "cyclic" manner, this computation has to be a separate node with its own dependencies. Reviewers: sergey Differential Revision: https://developer.blender.org/D3975
2018-11-23Pass viewport to BASE_ related tests, for viewport view/select restrictionsDalai Felinto
Note: functions like select all are still not respecting that. I will fix this as part of the local view commit though.
2018-11-23Fix wire-toggle restoring previous shading modeCampbell Barton
2018-11-23Cleanup: rename bone-select to xrayCampbell Barton
This shows bones in font and uses the xray toggle binding. Also 'bone select' isn't very meaningful on it's own.
2018-11-21Implement basic global tablet pressure curve options.Alexander Gavrilov
Grease Pencil already implements support for full-featured per-brush pressure curves, but it is useful to have some basic global settings that affect all brushes and tools. This adds two simple options: - Raw pressure required to achieve full brush intensity. - Softness control, using a gamma curve internally. The most important one is the max pressure setting, because it is critical for ergonomics, but the Linux Wacom driver lacks it. The softness option internally converts to gamma = 4^-softness. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D3967
2018-11-21GP: Remove Target Weight switchAntonioya
2018-11-21Cleanup: use boolean array for mirror modifierCampbell Barton
2018-11-21Modifier: Mirror learns to bisect on planeCampbell Barton
D3966 by @kioku w/ edits. This adds bisect and flip options to mirror modifier.
2018-11-20GP: Refactor target weight paintAntonioya
Now, the target weight is defined as the final maximum value with a new property and all fields have be moved to brush struct.
2018-11-20GP: Refactor drawing engine to single VBOAntonioya
This is part of T57829. Reduce the number of batches used to only one by shader type. This reduces GPU overhead and increase a lot the FPS. As the number of batches is small, the time to allocate and free memory was reduced in 90% or more. Also the code has been simplified and all batch management has been removed because this is not necessary. Now, all shading groups are created after all vertex buffer data for all strokes has been created using DRW_shgroup_call_range_add(). All batch cache data has been moved to the Object runtime struct and not as before where some parts (derived data) were saved inside GPD datablock. For particles, now the code is faster and cleaner and gets better FPS. Thanks to Clément Foucault for his help and advices to improve speed.
2018-11-20GP: New option to paint a predefined weightAntonioya
Enabling this option, the weight is set to the predefined value and not the result of the sum of the paint actions.
2018-11-20Speedup rigs with multiple objects deformed by bbonesSergey Sharybin
Previously each of the objects which has armature modifier will request deformation matricies from bbones. Thing is, all those deformations are the same and do not depend on object which is being modified. What's even worse is that this calculation is not cheap. This change makes it so bbones deformation is calculated once and stored in the armature object. After this armature modifiers simply use it. With a rigs we've got here dependency graph evaluation time goes down from 0.02 sec to 0.012 sec. Possible further optimization is to make bbone deformation calculated at the time when bone is calculated. This will avoid an extra threaded loop over all bones.
2018-11-20UI: show keyconfig prefs directly under presetCampbell Barton
The keyconfig preset and it's preferences were too far apart, show the preferences under the preset in a collapsible box.
2018-11-19Image Empties: Option to not display the backside of image emptiesJacques Lucke
Reviewers: brecht Differential Revision: https://developer.blender.org/D3964
2018-11-19Cleanup: use define for key-config stringCampbell Barton
2018-11-18Keymap: move left click select to a preferenceCampbell Barton
2018-11-18GP: Harmonize Sculpt Struct and field namesAntonioya
Changed the following names: - GP_EditBrush_Data->GP_Sculpt_Data - eGP_EditBrush_Types->eGP_Sculpt_Types - eGP_EditBrush_Flag->eGP_Sculpt_Flag - eGP_BrushEdit_SettingsFlag->eGP_Sculpt_SettingsFlag - GP_BrushEdit_Settings->GP_Sculpt_Settings - GP_EDITBRUSH_FLAG*->GP_SCULPT_FLAG* - GP_EDITBRUSH_TYPE*->GP_SCULPT_TYPE* - GP_BRUSHEDIT_FLAG_*->GP_SCULPT_SETT_FLAG_*
2018-11-16Keymap: add support for key-config preferencesCampbell Barton
This is needed for keymaps to define their own options, which can include left/right mouse select. This can also help to us to provide popular keymap tweaks as options, so users can easily fit blender to their workflow with well supported adjustments which don't give the overhead of having to maintain your own keymap, which become out-dated when operators change.
2018-11-16Keymap: remove loading keymaps from old filesCampbell Barton
These keymaps are not going to work usefully in 2.8x, remove support for loading them.
2018-11-16RNA: LayerCollection.has_hidden_objectsDalai Felinto
With this we have a way to tell that a collection has visible objects but not all of its objects are visible.
2018-11-16Keymaps: replace select / action mouse systemBrecht Van Lommel
For Blender builtin configurations the option to choose the select mouse remains and is now also in the splash screen. It works by changing the keymap dynamically in the script, rather than using special events. The system of automatic switching of events was not flexible enough to deal with side effects that require further keymap changes, so it is now under more manual control in the script. This breaks compatibility for some scripts and exported key configurations. These can be fixed by replacing SELECTMOUSE, ACTIONMOUSE, EVT_TWEAK_S and EVT_TWEAK_A with appropriate LEFTMOUSE, RIGHTMOUSE, EVT_TWEAK_L and EVT_TWEAK_R events. Other than that, there should be no functional changes.
2018-11-15Eevee: Add Filter Quality settingClément Foucault
This setting can be tweaked to improve glossy reflection cubemaps. It increases the sample count for each roughness level. This settings affect the lookdev mode quality as well.
2018-11-15Eevee: Add Glossy Reflection clampingClément Foucault
This enables reducing the noise comming from very bright light sources (like a sun) that can be found in distant HDRIs. The lost energy may be replaced manually by a sunlight that compensate the this loss. This clamping only concerns Reflection Cubmaps and is done on all on all of them. Setting to 0.0 disables it (default).
2018-11-15Eevee: Add irradiance smoothingClément Foucault
This is a parameter that will make the interpolation between irradiance cells of a same Irradiance Volume smoother, reducing the weight of the light leaking correction factors. It is usefull in some cases to avoid harsh lighting transition that can happen when a sample point it near a surface.
2018-11-15Eevee: Add Light Threshold valueClément Foucault
This is an important change. Starting from now, all lights have a finite influence radius (similar to the old sphere option for BI). In order to avoid costly setup time, this distance is first computed automatically based on a light threshold. The distance is computed at the light origin and using the inverse square falloff. The setting can be found inside the render settings panel > shadow tab. This light threshold does not take the light shape into account an may not suit every case. That's why we provide a per lamp override where you can just set the cutt off distance (Light Properties Panel > Light > Custom Distance). The influence distance is also used as shadow far clip distance. This influence distance does not concerns sun lights that still have a far clip distance. --- This change is important because it makes it possible to cull lights an improve performance drastically in the future.
2018-11-15Remove legacy node tree localization tagSergey Sharybin
Is stored on ID level now.
2018-11-14Cleanup: correct flag comparisonsCampbell Barton
Also use smaller types for shading data.