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-08Replace all old DAG calls with direct calls to new DEG and remove ↵Luca Rood
BKE_depsgraph.h This removes BKE_depsgraph.h and depsgraph.c
2017-06-07Manipulators: lamp, camera & force-fieldCampbell Barton
From custom-manipulators branch. These may be improved they work on a basic level.
2017-06-07Merge branch 'master' into blender2.8Sergey Sharybin
2017-06-07Depsgraph: Remove modifiers operation codeSergey Sharybin
Was internally a no-op operation, which only caused extra work to be done during depsgrpah traversal and evaluation, without making any measurable improvement.
2017-06-07Optimization of tangent calculationSergey Sharybin
Avoid doing string comparison when we already know layer is to be added to bitfield.
2017-06-06Scene object iterator: Replace recursion with loopSergey Sharybin
This way we are not afraid of recursion being too deep. That could have happened when having two collections which are sharing same list of 1000s of objects.
2017-06-06Make particle size follow world space instead of screen spaceLuca Rood
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-02Merge branch 'master' into blender2.8Campbell Barton
2017-06-02Cleanup: styleCampbell Barton
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-06-01Merge branch 'master' into blender2.8Sergey Sharybin
2017-06-01Fix bad index use drawing deformed face centersCampbell Barton
2017-05-31Fix bad handling of 'extra' user for groups at their creation.Bastien Montagne
Was just keeping the default '1' user from `BKE_libblock_alloc()`, instead of using correct way to handle extra virtual user needed when we want to keep unused datablocks around...
2017-05-31Merge branch 'master' into blender2.8Sergey Sharybin
2017-05-31Cleanup: Use more clear parenthesisSergey Sharybin
2017-05-30Draw Manager: Add SceneLayerEngineData and use callbacks to clear runtime ↵Clément Foucault
engine data
2017-05-30Somehow missed this in recent Face Maps commitCampbell Barton
Since the previous layer type was for ints too, it worked in tests.
2017-05-30Displace modifier: Pre-fetch all possible images to image pool prior executionSergey Sharybin
This way we reduce amount of time wasted in spin-lock later on when all threads are starting to sample texture.
2017-05-30Image pool: Use memory pool for allocating elementsSergey Sharybin
Reduces amount of system-wide allocation calls. Will be mainly visible when using lots of images in texture nodes or regular BI rendering.
2017-05-30Depsgraph: Add missing update tag clear for proxy objectsSergey Sharybin
This was causing proxies updates on every frame, even if they do not really change. Additionally, it was causing second round of armature update when used from inside dupligroup (viewport ensures all objects from dupligroup are up to date before draw).
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-29Fix T51390: Blender 2.78c will freeze or force close when adding particles ↵Bastien Montagne
at random. DM evaluation code was simply never clearing the `deformedOnly` flag when evaluating a generative modifier... Quite astonishing this never got catched before, a lot of particle code relies on valid value of this flag!!!
2017-05-29Fix T51520: Broken vertex weights after two mesh joining.Bastien Montagne
Take Two, did not detect that dynapaint was also creating named vgroup cdlayer!
2017-05-28Merge branch 'master' into blender2.8Bastien Montagne
2017-05-27Remove MinGW supportAaron Carlisle
The Issue ======= For a long time now MinGW has been unsupported and unmaintained and at this point, it looks like something that we should just leave behind and move on. Why Remove ========== One of the big motivations for MinGW back in the day is that it was free compared to MSVC which was licensed based. However, now that this is no longer true we have basically stopped updating the need CMake files. Along with the CMake files, there are several patches to the extern libs needed to make this work. For example, see: https://developer.blender.org/diffusion/B/browse/master/extern/carve/patches/mingw_w64.patch If we wanted to keep MinGW then we would need to make more custom patches to the external libs and this is not something our platform maintainers are willing to do. For example, here is the patches needed to build python: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-python3 Fixes T51301 Differential Revision: https://developer.blender.org/D2648
2017-05-27Release wasn't building, limit debug scopeCampbell Barton
2017-05-27CustomData: assert on bad arguments to freeCampbell Barton
Assert the index is in-range for the layer type.
2017-05-26Fix T50851: Array modifier generating invalid geometry.Bastien Montagne
We had handling of fully duplicated polygons already, but... absolutely nothing to sanitize partially merged polygons! This were giving us totally invalid geometry, with duplicated vertices in single poly, invalid edges, etc. Now we do check for invalid loops inside polys, and generate new edges as needed to get only valid polys. For some reason this was a nightmare to get running fully OK, playing with old and new indices is really, really mind breaking.
2017-05-26Implement support for Append objects in Blender 2.8Dalai Felinto
Note for users ============== The active_layer option used for the filebrowser operators is now called active_collection. If there is no collections in the scenelayer or if this option is not selected we automatically create a new collection for the new objects. This is the same behaviour of trying to add a new object when there is no collection. Note for developers =================== For those cases I moved the object user count handling from readfile to the scene collection system. It's working fine for those, but we still need to re-visit this for Add objects, and Duplicate - In those cases the usercount is 2 when it should be 1. Reviewers: mont29, sergey Differential Revision: https://developer.blender.org/D2686
2017-05-26Rename BKE_layer_collection_active > BKE_layer_collection_get_activeDalai Felinto
2017-05-26Move util function to add new scene collection when active is not available ↵Dalai Felinto
from object to layer
2017-05-26Merge branch 'master' into blender2.8Campbell Barton
2017-05-26Fix freeing all custom-data layersCampbell Barton
Would crash when the active index was out of range, since there is no reason to use the active layer when freeing all, free the first instead.
2017-05-26Fix T50908: Motion Tracker ignored grease pencil maskSergey Sharybin
This feature got lost with new auto-track API, Added it back by extending frame accessor class. This isn't really a frame thing, but we don't have other type of accessor here. Surely, we can use old-style API here and pass mask via region tracker options for this particular case, but then it becomes much less obvious how real auto-tracker will access this mask with old style API. So seems we do need an accessor for such data, just matter of finding better place than frame accessor.
2017-05-26Merge branch 'master' into blender2.8Campbell Barton
2017-05-26Fix T51350: 2D curve normals flip when deformedCampbell Barton
Deforming 2D curves & text with modifiers/shape-keys could flip the normals. Now check the back-facing flag instead of `z < 0`.
2017-05-25TexFace removal part 3Campbell Barton
- MTexPoly structure & layer type. - The 'Mesh.uv_textures' layers. - DerivedMesh TexFace drawing. - Scripts & UI.
2017-05-25Merge branch 'master' into blender2.8Julian Eisel
2017-05-24Fix error accessing tessface color in edit-modeCampbell Barton
Was checking for loop-color in poly-layer.
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-24Fix T51561: Normal maps fail w/ quad + eeveeCampbell Barton
Generalize derived-mesh tangent calculation so it can be used by Batch cache creation too.
2017-05-24Merge branch 'master' into blender2.8Campbell Barton
2017-05-24Fix possible invalid normal use w/ tangent calcCampbell Barton
Was using MFace normals, not MPoly
2017-05-23DwM: texture paint support & mask modeCampbell Barton
Uses workaround so material slots are used when neither blender-internal or cycles are enabled.
2017-05-21Cleanup: warningsCampbell Barton
2017-05-20Merge branch 'master' into blender2.8Campbell Barton