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
2019-02-05Fix (unreported) linestyle/greasepencil actions not being duplicated by full ↵Bastien Montagne
scene copy. Noted those as missing in XXX comments some time ago, running again on that code I still see no reason for this missing feature, so now when doing a full scene copy, including duplication of Freestyl's linestyles and scene's greasepencil data, their potential Actions will also be properly duplicated (like it was already the case for world, and scene itself).
2019-02-05Cleanup: typo in comment.Bastien Montagne
2019-02-05Cleanup: replace BKE_id_copy_ex by BKE_id_copy where possible.Bastien Montagne
That way it is obvious when we are using default ID copy behaviour, and when we are using advanced/specialized ones.
2019-02-05Cleanup: BKE_library: rename id_copy to BKE_id_copy.Bastien Montagne
Time to follow conventions for that one as well.
2019-02-05Cleanup: BKE_library: remove 'test' param of id_copy.Bastien Montagne
This was used in *one* place only... much better to have a dedicated helper for that kind of things. ;)
2019-02-01Color management: change view transform for color pickers and display modes.Brecht Van Lommel
* Use simple default view transform for color pickers, as Filmic does not work well for all types of colors. We better handle this with an option and tagging of colors as emissive or albedo like. * For solid/workbench we also no longer use Filmic, as there is not enough contrast and it's not really needed since this is not physically based lighting. * For lookdev always take into account the view transform and look. Other view settings like exposure are only taken into account if scene lighting is used, since these are often dependent on scene light intensity. Fixes T61022, T57649, T59363.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-31Fix T59495, T59992, T59904, T59178, T60598: broken keyframed value editing.Brecht Van Lommel
This removes a bunch of animation/driver evaluations and recalc flags that should be redundant in the new depsgraph, and were incorrectly affecting the evaluated scene in a permanent way. Still two cases that could be removed if the depsgraph is improved, in BKE_object_handle_data_update and BKE_cachefile_update_frame. For physics subframe interpolation there are also still calls to BKE_object_where_is_calc that should ideally be removed as well, though they are not known to cause keyframing bugs. Differential Revision: https://developer.blender.org/D4274
2019-01-26Cleanup: remove redundant BKE/BLI/BIF headersCampbell Barton
2019-01-17Physically based defaults for Eevee Bloom and ShutterClément Foucault
Some of Eevee's Bloom defaults are not very good for physically based rendering. This patches addresses this issue. This picture shows one of the problems with current default. Bloom looks very foggy: {F6280495} Even worse, light emitters much dimmer than the Sun can make everything equally hazy if Clamp is set to 1.0 and intensity to 0.8 (current default). Artists often forget to adjust Clamp value and do not know what value to use for realistic intensity. Also, currently both Clamp and Intensity do not have good UI ranges. This is why often Eevee renders end up very hazy and bloom often does not look right. Bloom effect plays important role to help to distinguish between bright and relatively dim light sources. With current defaults this is broken because Clamp set to 1.0. Also, it cannot be disabled if set to 0 like expected. This patch fixes this and sets it to 0 by default. If users need to clamp, they can do so easily with UI range up to 1000. This range is good enough for most cases and provides enough precision to control lower values, and the highest value helps to limit bloom from the Sun if necessary and will leave untouched most other light emitters. If needed, much higher values for Clamp can be entered manually up to 100000. 10000 is still affects the Sun, but up to 100000 highest limit allows to clamp anything that is much brighter than the Sun if user needs to limit bloom in such cases (for example, bright explosion in the sky or anything else very bright). I propose new default for bloom Intensity - 0.05 and UI range to suggests realistic values. Bloom Intensity > 0.1 is not realistic for clean lens but the user can enter manually much larger values if needed. For comparison, here is a my own photo with and without bloom caused by the Sun (on second photo the Sun was occluded with an object). {F6280500} {F6280492} In real life bloom is much more subtle and does not look hazy. If Clamp is disabled, then out of 0.1, 0.05 and 0.025 values I have tried, 0.05 looks most similar to the photo. Here is test render with and without bloom with the Sun in similar position like on the photo: {F6280496} {F6280494} Using color probe 27x27 I compared lightness below the horizon under the Sun. In rendered by Eevee images lightness difference was 17. In case of the photos lightness difference in similar place was 11. I then compared leftmost spot (also below the horizon) and lightness difference was approximately 2 between two photos and 1 between rendered images. In other words, with these settings bloom effect is not too strong and is not too weak. Visually it may seem like decreasing bloom intensity may increase photorealism, but then bloom effect would be too localized even for the Sun. Besides this single test, I tested in many other scenes as well, with and without the Sun, with different HDRIs, and as far as I can tell 0.05 intensity turned out to be good default - it produces bloom strong enough to be noticeable and not too hazy. In Cycles shutter default value is 0.50, so for consistency set to 0.5 by default in Eevee too. Besides, 0.5 is typical standard for real cameras, and values higher than 0.5 usually are needed only if very strong motion blur is desired. Here is summary of all changes: Bloom Intensity: 0.8 > 0.05 Bloom Intensity UI range: 0-10 > 0-0.1 Bloom Clamp: 1.0 > 0.0 (disabled by default) Bloom Clamp manual range: 0-1000 > 0-100000 Bloom Clamp UI range: 0-10 > 0-1000 Shutter: 1.0 > 0.5 This patch is related to the discussion in this thread, there are more examples of what bloom will look like with 0.05 intensity by me and others: https://devtalk.blender.org/t/eevee-needs-to-have-physically-based-defaults/4700 Reviewers: fclem Reviewed By: fclem Subscribers: pablovazquez, billreynish, rboxman Tags: #eevee Differential Revision: https://developer.blender.org/D4212
2019-01-11GP: New Cutter, Constraints and Segment selectionAntonioya
This commit groups a set of new tools that were tested in grease pencil object branch before moving to master. We decide to do all the development in a separated branch because it could break master during days or weeks before the new tools were ready to deploy. The commit includes: - New Cutter tool to trim strokes and help cleaning up drawings. - New set of constraints and guides to draw different types of shapes. All the credits for this development goes to Charlie Jolly (@charlie), thanks for your help! - Segment selection mode to select strokes between intersections. - New operator to change strokes cap mode. - New option to display only keyframed frames. This option is very important when fill strokes with color. - Multiple small fixes and tweaks. Thanks to @pepeland and @mendio for their ideas, tests, reviews and support. Note: Still pending the final icons for Cutter in Toolbar and Segment Selection in Topbar. @billreynish could help us here?
2019-01-03Fix T60119: incorrect filter size in new scenes.Brecht Van Lommel
2018-12-20Cleanup: argument wrapping indentationCampbell Barton
2018-12-19Gizmo: optional custom orientations for transformCampbell Barton
This aims to resolve a conflict where some users want to keep keyboard axis setting global, even when the orientation is set to something else. Move/rotate/scale can optionally each have a separate orientation. Some UI changes will be made next.
2018-12-18Fix T59536: safe area values were swappedJacques Lucke
Reviewers: brecht Differential Revision: https://developer.blender.org/D4097
2018-12-18Transform: when snap affect is off for a transform mode, ignore snap ↵Brecht Van Lommel
settings entirely. Ref D4022.
2018-12-18Transform: option to use incremental snappingCampbell Barton
This resolves this issue where users would enable a snapping mode besides incremental (vertex for eg), then notice strange behavior w/ rotate and scale. While this ability can be useful, it's quite an obscure use case. Now changing snap-modes keeps rotate and scale using incremental snap, with the option for these modes to be affected by other snapping modes. D4022 by @kioku w/ own minor edits.
2018-12-15GP: New Curve primitive and other primitive improvementsAntonioya
This commit adds support for new curve tool and adds more functionalities to the existing primitives, including new handles, editing, stroke thickness curve, noise, preview of the real stroke, etc. Thanks to @charlie for his great contribution to this improvement.
2018-12-14Attempt to sanitize node tree deletionSergey Sharybin
Make it explicit when freeing node tree which is owned by other ID or when freeing node tree which is outside of a bmain.
2018-12-14Merge branch 'master' into blender2.8Campbell Barton
2018-12-12Merge branch 'master' into blender2.8Campbell Barton
2018-12-12Cleanup: use colon separator after parameterCampbell Barton
Helps separate variable names from descriptive text. Was already used in some parts of the code, double space and dashes were used elsewhere.
2018-12-07Depsgraph: Remove duplicated sets of recalc/update flagsSergey Sharybin
There were at least three copies of those: - OB_RECALC* family of flags, which are rudiment of an old dependency graph system. - PSYS_RECALC* which were used by old dependency graph system as a separate set since the graph itself did not handle particle systems. - DEG_TAG_* which was used to tag IDs. Now there is a single set, which defines what can be tagged and queried for an update. It also has some aggregate flags to make queries simpler. Lets once and for all solve the madness of those flags, stick to a single set, which will not overlap with anything or require any extra conversion. Technically, shouldn't be measurable user difference, but some of the agregate flags for few dependency graph components did change. Fixes T58632: Particle don't update rotation settings
2018-12-06Color management: Cleanup, make function name more clearSergey Sharybin
The idea is to reflect that the view settings are the best for cases when one wants to see things as if they are a render result.
2018-12-05Color management: Query default view from displaySergey Sharybin
Solves weird situation when default display name is queried from OCIO, but Default view being assumed to be set for it. Now view is initialized to a default view of that display.
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-30Cleanup: name macros w/ matching BEGIN/ENDCampbell Barton
2018-11-28Scene: 3D cursor rotation wasn't initializedCampbell Barton
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-23Python API: bpy.app.handlers.depsgraph_update_pre/postJacques Lucke
Reviewers: brecht Differential Revision: https://developer.blender.org/D3978
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-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 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-14Cleanup: comment block tabsCampbell Barton
2018-11-05Paint: add BKE_paint_ensure to initialize toolsettingsCampbell Barton
Each mode had its own logic for initializing paint structs, move to a single function. Also remove "BKE_brush_get_gpencil_paint", entering grease pencil mode is responsible for ensuring the data is created.
2018-10-31Eevee: Fix wrong default overscan valueClément Foucault
2018-10-31Eevee: Implement Overscan optionClément Foucault
This option make the internal render size larger than the output size in order to minimize screenspace effects disapearing at the render edges. The overscan size added around the render is the maximum dimension multiplied by the overscan percentage.
2018-10-24Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenkernel/intern/scene.c
2018-10-24Fix (unreported) bad halding of ID usercounts when fully copying a scene.Bastien Montagne
2018-10-18Cleanup: Remove more #if 0 blocksJacques Lucke
Continuation of https://developer.blender.org/D3802 Reviewers: brecht Differential Revision: https://developer.blender.org/D3808
2018-10-03Units: Support for fixed unitsJacques Lucke
Users can select the main unit they want to use now. Previously the displayed unit always depended on the magnitude of the value. The old behavior can be restored by switching to the "Adaptive" mode for length, mass and time units. Meters, kilograms and seconds are the default units for new and old scenes. The selected unit is also the default unit for user input. E.g. if cm is selected, whenever the user inputs a unitless number into a field of type length, it will be interpreted as cm. Reviewer: brecht Differential: https://developer.blender.org/D3740
2018-09-24Spelling fixes in comments and descriptions (2.8 changes), patch by luzpaz.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D3719
2018-09-20GP: Fix falloff curve using 2D animation templateAntonioya
2018-09-17Cleanup: use SCE_GIZMO_ prefix for gizmo_flagCampbell Barton
2018-09-04Cleanup: remove legacy layer and dupli code.Brecht Van Lommel
2018-08-29Cleanup: rename files from group to collection to match contents.Brecht Van Lommel
2018-08-03Depsgraph: add helper to ensure a given scene/view_layer graph is up-to-date.Bastien Montagne
Since that call make the graph active, it should only be used in active editing context aware code (i.e. essentially, operators).
2018-07-31Respect ID user count when creating pose on object copySergey Sharybin
This solves wrong user counter of custom shape when duplicating bone few times and then undoing all the duplications.
2018-07-31New Grease Pencil object for 2D animationAntonioya
This commit merge the full development done in greasepencil-object branch and include mainly the following features. - New grease pencil object. - New drawing engine. - New grease pencil modes Draw/Sculpt/Edit and Weight Paint. - New brushes for grease pencil. - New modifiers for grease pencil. - New shaders FX. - New material system (replace old palettes and colors). - Split of annotations (old grease pencil) and new grease pencil object. - UI adapted to blender 2.8. You can get more info here: https://code.blender.org/2017/12/drawing-2d-animation-in-blender-2-8/ https://code.blender.org/2018/07/grease-pencil-status-update/ This is the result of nearly two years of development and I want thanks firstly the other members of the grease pencil team: Daniel M. Lara, Matias Mendiola and Joshua Leung for their support, ideas and to keep working in the project all the time, without them this project had been impossible. Also, I want thanks other Blender developers for their help, advices and to be there always to help me, and specially to Clément Foucault, Dalai Felinto, Pablo Vázquez and Campbell Barton.