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
2017-06-06Make particle size follow world space instead of screen spaceLuca Rood
2017-06-05WM: pass manipulator-map when creating wmManipulatorGroupCampbell Barton
Also store parent-pointer in wmManipulatorGroup's, since its not always possible to access the parent pointer.
2017-06-04World: Add temporary update flag.Clément Foucault
2017-06-03Eevee: Polishing of Exponential Shadow mappingClément Foucault
Added exponent parameter to tweak light bleeding. Added depth bias to the shadow test. Added better blurring using 32 samples.
2017-06-02DEG: Add per object update flag for Depsgraph.Clément Foucault
This is in order to communicate what portion of this object has changed. For now it's just a bool, but it will be extended later.
2017-06-01Move custom transform orientations to workspaceJulian Eisel
This commit moves the list of transform orientations from scenes to workspaces. Main reasons for this are: * Transform orientations are UI data and should not be stored in the scene. * Introducion of workspaces caused some (expected) glitches with transform orientations. Mainly when removing one. * Improves code. More technically speaking, this commit does: * Move list of custom transform orientations from Scene to WorkSpace struct. * Store active transform orientation index separate from View3D.twmode (twmode can only be set to preprocessor defined values now). * Display custom transform orientation name in header when transforming in it (used to show "global" which isn't really correct).
2017-06-01Main Workspace IntegrationJulian Eisel
This commit does the main integration of workspaces, which is a design we agreed on during the 2.8 UI workshop (see https://wiki.blender.org/index.php/Dev:2.8/UI/Workshop_Writeup) Workspaces should generally be stable, I'm not aware of any remaining bugs (or I've forgotten them :) ). If you find any, let me know! (Exception: mode switching button might get out of sync with actual mode in some cases, would consider that a limitation/ToDo. Needs to be resolved at some point.) == Main Changes/Features * Introduces the new Workspaces as data-blocks. * Allow storing a number of custom workspaces as part of the user configuration. Needs further work to allow adding and deleting individual workspaces. * Bundle a default workspace configuration with Blender (current screen-layouts converted to workspaces). * Pressing button to add a workspace spawns a menu to select between "Duplicate Current" and the workspaces from the user configuration. If no workspaces are stored in the user configuration, the default workspaces are listed instead. * Store screen-layouts (`bScreen`) per workspace. * Store an active screen-layout per workspace. Changing the workspace will enable this layout. * Store active mode in workspace. Changing the workspace will also enter the mode of the new workspace. (Note that we still store the active mode in the object, moving this completely to workspaces is a separate project.) * Store an active render layer per workspace. * Moved mode switch from 3D View header to Info Editor header. * Store active scene in window (not directly workspace related, but overlaps quite a bit). * Removed 'Use Global Scene' User Preference option. * Compatibility with old files - a new workspace is created for every screen-layout of old files. Old Blender versions should be able to read files saved with workspace support as well. * Default .blend only contains one workspace ("General"). * Support appending workspaces. Opening files without UI and commandline rendering should work fine. Note that the UI is temporary! We plan to introduce a new global topbar that contains the workspace options and tabs for switching workspaces. == Technical Notes * Workspaces are data-blocks. * Adding and removing `bScreen`s should be done through `ED_workspace_layout` API now. * A workspace can be active in multiple windows at the same time. * The mode menu (which is now in the Info Editor header) doesn't display "Grease Pencil Edit" mode anymore since its availability depends on the active editor. Will be fixed by making Grease Pencil an own object type (as planned). * The button to change the active workspace object mode may get out of sync with the mode of the active object. Will either be resolved by moving mode out of object data, or we'll disable workspace modes again (there's a `#define USE_WORKSPACE_MODE` for that). * Screen-layouts (`bScreen`) are IDs and thus stored in a main list-base. Had to add a wrapper `WorkSpaceLayout` so we can store them in a list-base within workspaces, too. On the long run we could completely replace `bScreen` by workspace structs. * `WorkSpace` types use some special compiler trickery to allow marking structs and struct members as private. BKE_workspace API should be used for accessing those. * Added scene operators `SCENE_OT_`. Was previously done through screen operators. == BPY API Changes * Removed `Screen.scene`, added `Window.scene` * Removed `UserPreferencesView.use_global_scene` * Added `Context.workspace`, `Window.workspace` and `BlendData.workspaces` * Added `bpy.types.WorkSpace` containing `screens`, `object_mode` and `render_layer` * Added Screen.layout_name for the layout name that'll be displayed in the UI (may differ from internal name) == What's left? * There are a few open design questions (T50521). We should find the needed answers and implement them. * Allow adding and removing individual workspaces from workspace configuration (needs UI design). * Get the override system ready and support overrides per workspace. * Support custom UI setups as part of workspaces (hidden panels, hidden buttons, customizable toolbars, etc). * Allow enabling add-ons per workspace. * Support custom workspace keymaps. * Remove special exception for workspaces in linking code (so they're always appended, never linked). Depends on a few things, so best to solve later. * Get the topbar done. * Workspaces need a proper icon, current one is just a placeholder :) Reviewed By: campbellbarton, mont29 Tags: #user_interface, #bf_blender_2.8 Maniphest Tasks: T50521 Differential Revision: https://developer.blender.org/D2451
2017-05-30Draw Manager: Add SceneLayerEngineData and use callbacks to clear runtime ↵Clément Foucault
engine data
2017-05-30Face Maps: custom-data, UI and RNA APICampbell Barton
Add face maps, needed for face-map widgets, only data structure, widgets will be separate commit. This comes from 'custom-manipulator' branch with only minor changes.
2017-05-26Rename: FILE_ACTIVELAY > FILE_ACTIVE_COLLECTIONDalai Felinto
2017-05-25TexFace removal part 3Campbell Barton
- MTexPoly structure & layer type. - The 'Mesh.uv_textures' layers. - DerivedMesh TexFace drawing. - Scripts & UI.
2017-05-24TexFace removal part 2Campbell Barton
- Derived-mesh drawing. - All non UV members of TexFace structs. MTexPoly is now redundant but keeping with a dummy member, will check on complete removal later.
2017-05-24Remove TexFace, per-face imagesCampbell Barton
TexFace complicates the now more popular shading pipeline by having per-face images, see: T51382 for details. To keep the ability to select a per-material edit-image (used with UV-mapping workflow), the material now stores an image which will be set when changing images in edit-mode. This is used as a bake-target when not using Cycles too.
2017-05-19Remove redundant workaround for removing collections in outlinerJulian Eisel
Collections are now identified by their pointer. Also had to correct TSE_IS_REAL_ID to fix undefined behavior on undo.
2017-05-19Remove use_display_lists optionCampbell Barton
2017-05-18Remove "Modern Viewport"Dalai Felinto
The "Modern Viewport" was an option in the Viewport panel that would use the new fancy wire frame code and some depth debugging functionality. This was introduced as a quick and dirty way to get the new drawing system showing in the viewport. Overtime we built a complete Draw Manager system, leaving this original approach deprecated which adds clutter to Blender code since it would be removed sooner or later. Note: The new fancy wireframes and related shaders (white out other objects) are still in Blender code, though you can't use them anymore. If we are to have any of those drawing options they should be integrated in the new draw manager, instead of integrated in the old drawing pipeline as it was originally coded.
2017-05-16Fix info header stats to iterator over layer instead of sceneDalai Felinto
Although this is working fine, there are two changes expected in the new future once depsgraph copy on write is implemented: 1) To call ED_info_stats_clear a callback from depsgraph, instead of the notifier system. (that would also allow us to clear only one SceneLayer). 2) To store/get stats from the evaluated SceneLayer, as well as iterate over the evaluated objects as well.
2017-05-16Merge branch 'master' into blender2.8Campbell Barton
2017-05-15Fix T51348: Node highlighting is brokenSergey Sharybin
This feature was disabled in the code but not in the interface. Removing the code, since it needs full re-implementation anyway.
2017-05-12Eevee: Add Rotation and ratio parameters to DoF.Clément Foucault
2017-05-12Implement hair drawing with Draw Manager in Clay engineLuca Rood
Part of T51378
2017-05-10Eevee: Post process parameters.Clément Foucault
-Display almost all parameters. -Made some small adjustment to motion blur to support FOV motion blur. -Made DOF max radius a parameter.
2017-05-08Merge branch 'master' into blender2.8Julian Eisel
2017-05-07Remove unused node socket flag that was added in the render pass commitLukas Stockner
2017-05-05Implement overridable scene render settingsDalai Felinto
This add a new set of (possible) render settings that can be defined at the scene level and overridable at the scene layer level. Once we get workspaces we can either add workspace inbetween scene and scene layer evaluation. Or to replace layer settings, to avoid extra confusion to users. An example of this setting is "samples", as implemented now for the clay engine.
2017-05-04Vertex paint with draw managerLuca Rood
Reviewers: fclem Subscribers: campbellbarton, dfelinto Differential Revision: https://developer.blender.org/D2658
2017-05-03Weight painting with draw managerLuca Rood
This implements weight rendering with the draw manager, with all drawing options (Shading, wire, face masking, vertex masking). This is part of T51208 Reviewers: campbellbarton Subscribers: dfelinto Differential Revision: https://developer.blender.org/D2654
2017-05-03Merge branch 'master' into blender2.8Lukas Stockner
2017-05-03Correct over-alloc struct declarationCampbell Barton
2017-05-03Move pose-bone colors into draw_dataCampbell Barton
Also only allocate necessary number of bone segments.
2017-05-03Render API/Cycles: Identify Render Passes by their name instead of a type flagLukas Stockner
Previously, every RenderPass would have a bitfield that specified its type. That limits the number of passes to 32, which was reached a while ago. However, most of the code already supported arbitrary RenderPasses since they were also used to store Multilayer EXR images. Therefore, this commit completely removes the passflag from RenderPass and changes all code to use the unique pass name for identification. Since Blender Internal relies on hardcoded passes and to preserve compatibility, 32 pass names are reserved for the old hardcoded passes. To support these arbitrary passes, the Render Result compositor node now adds dynamic sockets. For compatibility, the old hardcoded sockets are always stored and just hidden when the corresponding pass isn't available. To use these changes, the Render Engine API now includes a function that allows render engines to add arbitrary passes to the render result. To be able to add options for these passes, addons can now add their own properties to SceneRenderLayers. To keep the compositor input node updated, render engine plugins have to implement a callback that registers all the passes that will be generated. From a user perspective, nothing should change with this commit. Differential Revision: https://developer.blender.org/D2443 Differential Revision: https://developer.blender.org/D2444
2017-05-03Rename bPoseChannel's temp/cache pointer for DrawManager to draw_data.Bastien Montagne
More generic name, this remains a temp solution anyway, until we have proper handling of temp data from 'magic DEG'! ;)
2017-05-03Draw Manager: Use color-sets for solid pose-bonesCampbell Barton
2017-05-03Draw Manager: use pose bone theme and constraint colorsCampbell Barton
2017-05-03Add BBone and Wire Armature draw types to DrawManager.Bastien Montagne
Most of this was copying/adapting code from octahedral existing draw code, tough part was to get BBone matrices to behave as expected, they are using a fairly specific setup... Addresses T51365 and T51362.
2017-04-26Merge commit 'master@6ed15c5a41130b55cb57a43a8a9470a91d38c3d5' into blender2.8Sybren A. Stüvel
# Conflicts: # source/blender/alembic/intern/abc_exporter.cc
2017-04-26Avoid platform dependant PATH_MAXCampbell Barton
2017-04-26Depsgraph and selection: Flush selcol on DepsgraphDalai Felinto
Selection code needs to iterate over DEG_OBJECT_ITER otherwise we won't get modifiers, dupli objects, ... Also make selection respect selectability flag. Review by: Sergey Sharybin
2017-04-26Alembic: shortened CacheFile.filepath to 1024 bytes againSybren A. Stüvel
As per discussion on 3128600a8ab2badd9ea39c80133f15f766794ec6
2017-04-25Merge branch 'master' into blender2.8Sybren A. Stüvel
2017-04-25Fix T51262: Blender CRASH with alembic fileSybren A. Stüvel
Also added a unit test for exporting & importing very long names.
2017-04-21Include the set in the depsgraph objects iteratorDalai Felinto
Pending: Include the set in the rna depsgraph.objects In fact it would be nice to unify them both. However this will likely change once Depsgraph incorporate this iterator, so I'm not sure we should bother with that. Related to T51203
2017-04-19Draw Manager: curve supportCampbell Barton
Draws the curve centerline and editmode verts/handles. Handle theme colors, and normal display still need adding.
2017-04-18Merge remote-tracking branch 'origin/master' into blender2.8Dalai Felinto
2017-04-18Revert "Object Info node support for GLSL mode and the internal render"Dalai Felinto
This reverts commit 76425feed8644a8fe1c0e52ef3f77b95012ba44e. ** Note ** This was supposed to be a merge, but it was rebased.
2017-04-18Object Info node support for GLSL mode and the internal renderAlexander Romanov
Object Info node can be useful to give some variation to a single material assigned to multiple instances. This patch adds support for Viewport and BI. {F499530} Example: {F499528} Reviewers: merwin, brecht, dfelinto Reviewed By: brecht Subscribers: duarteframos, fclem, homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov Differential Revision: https://developer.blender.org/D2425
2017-04-17Fix T51176: Cache file location can be blank and prevent fluid simulation ↵Bastien Montagne
from reading baked data Sanitize a bit how cache path is handled by fluidsim (there is much more to be done here though :( ), and forbid empty path (we reset to default path relative to current .blend file in case it's empty). If people really, really want to use current OS-wise directory, they can at least use '.' as path. ;)
2017-04-14Object Info node support for GLSL mode and the internal renderAlexander Romanov
Object Info node can be useful to give some variation to a single material assigned to multiple instances. This patch adds support for Viewport and BI. {F499530} Example: {F499528} Reviewers: merwin, brecht, dfelinto Reviewed By: brecht Subscribers: duarteframos, fclem, homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov Differential Revision: https://developer.blender.org/D2425
2017-04-13Draw Manager: initial lattice supportCampbell Barton
Still misses support for edit-mode selection & weight drawing.
2017-04-13Merge branch 'master' into blender2.8Alexander Romanov