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
2021-07-20LineArt: UI cleanups.YimingWu
Wording on the UI, slider consistency and material mask switches layout. Reviewed By: Sebastian Parborg (zeddb) Differential Revision: http://developer.blender.org/D11839
2021-06-28LineArt: Occlusion effectiveness supportYimingWu
This patch adds a function where you can specify occlusion effectiveness from 0 to 255 layers per face for a given mesh material. Reviewed By: Sebastian Parborg (zeddb) Ref D11308
2021-04-26LineArt: UI fixes to match the content for 2.93 manual.YimingWu
Reviewed by: Sebastian Parborg Differential Revision: https://developer.blender.org/D11089
2021-03-29Fix: Line Art panel in properties showing in the wrong order with add-onsBrecht Van Lommel
It should set bl_order to show below panels registered by render engine add-ons like Cycles.
2021-03-22RNA: use boolean array for transarency masksCampbell Barton
There is no need to expose this as multiple properties, also use `use_` prefix for boolean properties.
2021-03-16Grease Pencil: Add LineArt modifierYimingWu
This adds the LineArt grease pencil modifier. It takes objects or collections as input and generates various grease pencil lines from these objects with the help of the active scene camera. For example it can generate contour lines, intersection lines and crease lines to name a few. This is really useful as artists can then use 3D meshes to automatically generate grease pencil lines for characters, enviroments or other visualization purposes. These lines can then be baked and edited as regular grease pencil lines. Reviewed By: Sebastian Parborg, Antonio Vazquez, Matias Mendiola Differential Revision: http://developer.blender.org/D8758
2021-01-13UI: Revert design changes to data-block selector for the 2.92 releaseJulian Eisel
Partially reverts 2250b5cefee7. Removing the user count and fake user count icons was controversial (which was expected) and there are a few further changes needed, that won't make it in time for the release, see D9946. While there is a design to bring back the user count and fake user indicators, a new design idea was proposed that the UI team wants to follow. This came too late for the 2.92 release, the new design is targeted at the 2.93 release now. Meanwhile, UI team decision was to simply revert the design changes. The new design is being worked on in https://developer.blender.org/T84669. Note that this commit does not revert some internal changes done in 2250b5cefee7. Namely the introduction of `ed_util_ops.c` and data-block operators in there. These will still be needed in the new design.
2020-12-18UI: Redesigned data-block selectorsJulian Eisel
The previous design is rather old and has a couple of problems: * Scalability: The current solution of adding little icon buttons next to the data-block name field doesn't scale well. It only works if there's a small number of operations. We need to be able to place more items there for better data-block management. Especially with the introduction of library overrides. * Discoverability: It's not obvious what some of the icons do. They appear and disappear, but it's not obvious why some are available at times and others not. * Unclear Status: Currently their library status (linked, indirectly linked, broken link, library override) isn't really clear. * Unusual behavior: Some of the icon buttons allow Shift or Ctrl clicking to invoke alternative behaviors. This is not a usual pattern in Blender. This patch does the following changes: * Adds a menu to the right of the name button to access all kinds of operations (create, delete, unlink, user management, library overrides, etc). * Make good use of the "disabled hint" for tooltips, to explain why buttons are disabled. The UI team wants to establish this as a good practise. * Use superimposed icons for duplicate and unlink, rather than extra buttons (uses less space, looks less distracting and is a nice + consistent design language). * Remove fake user and user count button, they are available from the menu now. * Support tooltips for superimposed icons (committed mouse hover feedback to master already). * Slightly increase size of the name button - it was already a bit small before, and the move from real buttons to superimposed icons reduces usable space for the name itself. * More clearly differentiate between duplicate and creating a new data-block. The latter is only available in the menu. * Display library status icon on the left (linked, missing library, overridden, asset) * Disables "Make Single User" button - in review we weren't sure if there are good use-cases for it, so better to see if we can remove it. Note that I do expect some aspects of this design to change still. I think some changes are problematic, but others disagreed. I will open a feedback thread on devtalk to see what others think. Differential Revision: https://developer.blender.org/D8554 Reviewed by: Bastien Montagne Design discussed and agreed on with the UI team, also see T79959.
2020-12-12UI: Allow UI to pass focused data-block to operators via contextJulian Eisel
This is similar to c4a2067130130d, but applies to the general UI and is only about single data-blocks. Here there was a similar problem: How can buttons pass the data they represent to operators? We currently resort to ugly ad-hoc solutions like `UI_context_active_but_get_tab_ID()`. So the operator would need to know that it is executed on a tab button that represents a data-block. A single button can now hand operators a data-block to operate on. The operator can request it via the "id" context member (`CTX_data_pointer_get_type(C, "id", &RNA_ID)` in C, `bpy.context.id` in .py). In this commit, it is already set in the following places: * Generic RNA button code sets it to the pointed to data-block, if the button represents a data-block RNA pointer property. (I.e for general data-block search buttons.) * Data-block selectors (`templateID`) set it to the currently active data-block. * The material slot UI-List sets it for each slot to the material it represents. The button context menu code is modified so its operators use the context set for the layout of its parent button (i.e. `layout.context_pointer_set()`). No user visible changes. This new design isn't actually used yet. It will be soon for asset operators. Reviewed as part of https://developer.blender.org/D9717. Reviewed by: Brecht Van Lommel
2020-05-01UI: Use property split layout and decorators for material propertiesJulian Eisel
Use the automatic property split layout (hence, change to the new 40/60% split ratio) and add decorator buttons for animatable properties. This actually applies to all node input buttons in the properties, e.g. world shading, light shading, texture nodes. Doing this makes the layout more consistent with other layouts in the properties. But the decorators are also a useful hint for users that these options can be animated. Previously using decorators and the automatic split layout wasn't possible, I've done a number of changes now to have it supported. Before I moved the socket icons to the left side, the decorators also looked weird (two circle icons next to each other). {F8497704} With nested items: {F8497708} Reviewed By: William Reynish, Pablo Vazquez Differential Revision: https://developer.blender.org/D7544
2020-03-27Fix T74996: material custom properties not displayed for CyclesRobert Guetzkow
Differential Revision: https://developer.blender.org/D7223
2019-09-04Shading Modes: Material and Render PreviewJeroen Bakker
This change implements the basics as described in {T68312} for the shading modes. * LookDev shading mode is renamed to Material Preview. It always uses Eevee as renderer, and is intended to provide a fast material preview suitable for texture painting, and texture and material setup. * Rendered shading gains "Use Scene Lights" and "Use Scene World" options similar to current Material Preview. These will be enabled by default. When Use Scene World is turned off, HDRIs will be used for lighting instead. These options are available for EEVEE and Cycles. * Renderers will be able to customize the shading settings panel and add additional settings. Reviewed By: brecht, fclem Differential Revision: https://developer.blender.org/D5612
2019-07-31Add operator for removing unused material slotsLukas Stockner
Reviewers: campbellbarton, brecht Reviewed By: brecht Subscribers: brecht Differential Revision: https://developer.blender.org/D4991
2019-07-07Cleanup: unused vars, redundant parenthisisCampbell Barton
2019-05-19UI: don't use decorators for Eevee material quality settingsBrecht Van Lommel
2019-05-19UI: add Panel.bl_order property to control order of panels for add-onsBrecht Van Lommel
This fixes poor Cycles panel ordering, with Freestyle and Custom Properties appearing at the top. For most cases order of registration is still the easiest way to control order and it's recommended to keep using that. This is mainly to solve a few cases where we want a few built-in panels to appear below add-on panels.
2019-05-15Eevee: Add per material option to cull backfacesClément Foucault
This is in order to have more flexibility and to have an explicit option for final renders.
2019-04-19Cleanup: mark unused arguments in UI scriptsCampbell Barton
Quiet's pylint W0613 warning, also remove some unused args.
2019-03-29Eevee: Material: Decouple transparent shadows from blend modeClément Foucault
This makes it easier to exclude a surface from casting shadows and can be used to manipulate the shadows even for opaque surfaces. Versionning ensure that old behavior is transfered to new rendering logic.
2019-03-17UI: add light/world settings in shader node editor.Brecht Van Lommel
Material was already there. Implementation was changed so it's just a single line of code to adapt a panel to the node editor.
2019-03-14Cleanup: unused importsCampbell Barton
2019-03-12Cleanup: rename specials -> context_menuCampbell Barton
In keeping with convention to match code & UI naming. - No user visible changes. - Include 'menu' in the name since context is an overloaded term. - While a few of these are panels, from a user perspective they are still context menus.
2019-03-08Fix T62349: Grease Pencil top material list not workingDalai Felinto
This is a fixup for my own: 92d185faebe. I'm also fixing the poll of the EEVEE_MATERIAL_PT_context_material which would fail when we had no context.material available.
2019-03-07Properties Editor: Grease Pencil and pinning fixesDalai Felinto
The UI was trying to use screen_context.c for its poll and draw functions. So the active object and active object data and active layer was used in the UI, instead of the context one. Besides, for the material, the wrong context path was used altogether when the active object was a greasepencil. This would lead to all sort of pinning problems: * A Mesh panel is pinned, but the active object is a grease pencil, the grease pencil panels would show. * If a Grease Pencil (data) panel is pinned, but the active object is not the one pinned, nothing would show. * Material panels and pinning were totally broken, showing the material context for pinned mesh data panels even. I also sanitized the name of the panels, their inheritance and poll functions. Reviewers: antoniov, brecht Subscribers: billrey Differential Revision: https://developer.blender.org/D4470
2019-01-29Workbench: Make Material transparency part of the rgba color pickerClément Foucault
It is only used for solid mode for now but could be used by eevee in the future.
2019-01-29Workbench: Add transparency support for materialsClément Foucault
This adds the posibility of having certain materials transparent in solid mode. The option is (for now) per material only and thus only shows in material color mode. This uses the same rendering technique as Xray mode. Note that objects are not considered transparent for selection with this.
2018-12-18Fix T58899: Eevee - Material Index missing from panelDalai Felinto
2018-12-17DNA: clear / remove deprecated flagsCampbell Barton
- Clear deprecated flags for ID's: Scene, Sequence, World, Object & Mesh. - Clear deprecated flags for Spaces: outliner, 3D view & image. - Remove unused `Mesh.drawflag` - Remove unused `USER_ALLWINCODECS`, `USER_MMB_PASTE`. - Remove `V3D_SOLID_TEX` & `V3D_ZBUF_SELECT` - used in a few areas. - Flip `Object.empty_image_visibility_flag` (avoids do-version on each new flag) - Rename 'Backside' -> 'Back' in context of drawing - showing 'Back' makes sense.
2018-12-07UI: add material settings in shader editor sidebar.Lucas Boutrot
Differential Revision: https://developer.blender.org/D3926
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-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-10-31UI: Detach Material specials menu from add/remove column.Pablo Vazquez
2018-10-08UI: new icon set by Andrzej Ambroz.Brecht Van Lommel
This is a monochrome icon set, with a more modern look and icons for various features that did not have a proper icon before.
2018-09-21Cleanup: styleCampbell Barton
2018-09-20Fix missing Eevee volume panel in material tab.Brecht Van Lommel
2018-08-08Eevee: Remove per material SSS toggleClément Foucault
This is because we can now optimize the use of SSS on shaders based on socket input values.
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.
2018-07-17Render: add "OpenGL" render engine.Brecht Van Lommel
This is intended for quick renders for previsualization, animation previews or sequencer previews. It provides the same settings as found in the 3D view Shading popover in solid display mode, but in the scene render properties. The "Workbench" engine was removed, and this name no longer appears in the user interface, it's purely an internal name. We might come up with a better name for this OpenGL engine still, but it's good to be consistent with the OpenGL Render operator name since this has a similar purpose.
2018-07-15UI: Use icon for Material LinkPablo Vazquez
Communicates the same by giving more room to the Material datablock name
2018-07-15UI: Hide Preview panel by default on Material propertiesPablo Vazquez
And move Custom Properties panel last
2018-07-05Shaders: add target setting to material output node.Brecht Van Lommel
This makes it possible to have a single shading nodetree that contains separate Cycles and Eevee shaders. By default the target is set to All so shaders are shared.
2018-06-26Cleanup: style, pep8Campbell Barton
2018-06-18UI: Start UIList with 2 rows for materials/particlesPablo Vazquez
There is room for it anyway because of the 3 buttons on the right.
2018-06-02UI: use single column layout for particlesCampbell Barton
Also minor changes to other panels. Patch by @billreynish
2018-06-01UI: use same "Viewport Display" name for scene/object/material panels.Brecht Van Lommel
2018-06-01Fix: raytrace_mirror does not exist anymoreJeroen Bakker
Eevee default material settings were not showing.
2018-06-01Workbench: Material specific settings for the specularJeroen Bakker
- Uses the roughness setting of the basic eevee material - renamed gloss_mir to roughness - set default of roughness to 0.25 - renamed ray_mirror to metallic - cleaned up material rna (BI mirror struct) - use BLINN phong model - normalize incoming/outgoing specular light - when using camera oriented studiolight, the SolidLight will be used for specular highlights - EXPERIMENT: when in world oriented studiolight only the shadow direction will be used. - change the settings of the internal light to make scenes more readable
2018-05-30Generic Viewport Panel for MaterialsJeroen Bakker
Is enabled for all render engines as workbench will be rendering SOLID/Texture modes and uses these settings.
2018-05-26RNA: follow boolean naming conventionsCampbell Barton
2018-04-19Remove Blender Internal and legacy viewport from Blender 2.8.Ton Roosendaal
Brecht authored this commit, but he gave me the honours to actually do it. Here it goes; Blender Internal. Bye bye, you did great! * Point density, voxel data, ocean, environment map textures were removed, as these only worked within BI rendering. Note that the ocean modifier and the Cycles point density shader node continue to work. * Dynamic paint using material shading was removed, as this only worked with BI. If we ever wanted to support this again probably it should go through the baking API. * GPU shader export through the Python API was removed. This only worked for the old BI GLSL shaders, which no longer exists. Doing something similar for Eevee would be significantly more complicated because it uses a lot of multiplass rendering and logic outside the shader, it's probably impractical. * Collada material import / export code is mostly gone, as it only worked for BI materials. We need to add Cycles / Eevee material support at some point. * The mesh noise operator was removed since it only worked with BI material texture slots. A displacement modifier can be used instead. * The delete texture paint slot operator was removed since it only worked for BI material texture slots. Could be added back with node support. * Not all legacy viewport features are supported in the new viewport, but their code was removed. If we need to bring anything back we can look at older git revisions. * There is some legacy viewport code that I could not remove yet, and some that I probably missed. * Shader node execution code was left mostly intact, even though it is not used anywhere now. We may eventually use this to replace the texture nodes with Cycles / Eevee shader nodes. * The Cycles Bake panel now includes settings for baking multires normal and displacement maps. The underlying code needs to be merged properly, and we plan to add back support for multires AO baking and add support to Cycles baking for features like vertex color, displacement, and other missing baking features. * This commit removes DNA and the Python API for BI material, lamp, world and scene settings. This breaks a lot of addons. * There is more DNA that can be removed or renamed, where Cycles or Eevee are reusing some old BI properties but the names are not really correct anymore. * Texture slots for materials, lamps and world were removed. They remain for brushes, particles and freestyle linestyles. * 'BLENDER_RENDER' remains in the COMPAT_ENGINES of UI panels. Cycles and other renderers use this to find all panels to show, minus a few panels that they have their own replacement for.