2 months agoLights: change sun light size to be specified as angle
Tim Stullich [Wed, 15 May 2019 12:45:33 +0000 (14:45 +0200)]
Lights: change sun light size to be specified as angle

This is the angular diameter as seen from earth, which is between 0.526° and
0.545° in reality. Sharing the size with other light types did not make much
sense and meant the unit was unclear.

Differential Revision:

2 months agoFix T64650: missing topbar update when changing brush in sculpt mode
Brecht Van Lommel [Wed, 15 May 2019 13:20:57 +0000 (15:20 +0200)]
Fix T64650: missing topbar update when changing brush in sculpt mode

2 months agoUI: remove splash from help menu
Campbell Barton [Wed, 15 May 2019 11:51:44 +0000 (21:51 +1000)]
UI: remove splash from help menu

Already accessible in the app-menu.

2 months agoRemove ability to delete data from the File Browser
William Reynish [Wed, 15 May 2019 11:46:24 +0000 (13:46 +0200)]
Remove ability to delete data from the File Browser

This removes the ability to hit X or Del to delete data from inside the File Browser.

This was extremely dangerous because it didn't use the system trash/recycle bin. This made it a very dangerous operation with no way to get data back.

Later on, we should add support for the OS trash through native API's, but until then we will remove this feature from the keymaps.

This addresses T61412 and T64104

2 months agoFix icon for outliner temporarily hide
Dalai Felinto [Wed, 15 May 2019 11:17:09 +0000 (08:17 -0300)]
Fix icon for outliner temporarily hide

2 months agoFix default open outliner restrict columns
Dalai Felinto [Wed, 15 May 2019 11:14:00 +0000 (08:14 -0300)]
Fix default open outliner restrict columns

Regression introduced on 777a546c0c7.

2 months agoUI: add 'App' menu besides the 'File' menu
Campbell Barton [Wed, 15 May 2019 11:05:51 +0000 (21:05 +1000)]
UI: add 'App' menu besides the 'File' menu

This uses the Blender icon that previously activated the splash.

Menu items which apply to the application are located here:
startup file, app templates & preferences.

2 months agoEevee: Add per material option to cull backfaces
Clément Foucault [Wed, 15 May 2019 10:03:26 +0000 (12:03 +0200)]
Eevee: Add per material option to cull backfaces

This is in order to have more flexibility and to have an explicit option
for final renders.

2 months agoPreferences: Default ViewportAA
Jeroen Bakker [Wed, 15 May 2019 09:51:20 +0000 (11:51 +0200)]
Preferences: Default ViewportAA

Due to recent changes the default aa samples in the viewport was set to
16, but should have been 8. This is due to how the old viewport quality
setting was interpreted by the workbench engine. This patch will respect
the same way to version the viewport quality to viewport_aa as the
workbench used to do this.

2 months agoUI: move preferences save options into submenu
William Reynish [Wed, 15 May 2019 08:39:41 +0000 (18:39 +1000)]
UI: move preferences save options into submenu

Avoid clutter in the UI by moving save/revert options into submenu,
only show the save button when auto-save is disabled.

2 months agoFix T57203: Rotation overlaps scale gizmo handles
Campbell Barton [Wed, 15 May 2019 06:33:29 +0000 (16:33 +1000)]
Fix T57203: Rotation overlaps scale gizmo handles

2 months agoGizmo: add depth bias for 3D selection
Campbell Barton [Wed, 15 May 2019 06:29:16 +0000 (16:29 +1000)]
Gizmo: add depth bias for 3D selection

This allows some gizmos priority over others even when they're behind.

2 months agoGPU: Add a matrix unproject function that takes an inverted matrix
Campbell Barton [Wed, 15 May 2019 04:16:35 +0000 (14:16 +1000)]
GPU: Add a matrix unproject function that takes an inverted matrix

This is normally already calculated so add a version that takes the
inverted matrix.

2 months agoCleanup: de-duplicate active tool panel
Campbell Barton [Wed, 15 May 2019 02:20:13 +0000 (12:20 +1000)]
Cleanup: de-duplicate active tool panel

2 months agoFix top-bar showing paint popover panels
Campbell Barton [Wed, 15 May 2019 01:42:47 +0000 (11:42 +1000)]
Fix top-bar showing paint popover panels

Regression from 6b082278d1959 when panels were moved into the 3D view.

2 months agoFix T64604: Changing keymap doesn't tag preferences as dirty
Campbell Barton [Wed, 15 May 2019 00:44:43 +0000 (10:44 +1000)]
Fix T64604: Changing keymap doesn't tag preferences as dirty

2 months agoFix preference dirty tagging for addons & keymaps
Campbell Barton [Tue, 14 May 2019 23:44:56 +0000 (09:44 +1000)]
Fix preference dirty tagging for addons & keymaps

2 months agoFix T64467: Outliner Rename drawing overlapping restriction column + checkbox
Dalai Felinto [Tue, 14 May 2019 23:03:44 +0000 (20:03 -0300)]
Fix T64467: Outliner Rename drawing overlapping restriction column + checkbox

For anyone interesting on polishing pixels, this is still one of the few
places in Blender where when renaming the name "jumps" a tiny bit when
editing. Most of the other places (id rename, UI list rename, ...) have
the text drawing in the exact same place while editing it and drawing.

2 months agoFix T64618: Cycles crash with point density texture on Windows
Brecht Van Lommel [Tue, 14 May 2019 22:42:51 +0000 (00:42 +0200)]
Fix T64618: Cycles crash with point density texture on Windows

A better solution would be to not use the callback mechanism anymore for
cases like this where the dependency graph will free volume data, but
that would be a bigger refactor.

2 months agoUI: adjust preferences save/revert button layout
Campbell Barton [Tue, 14 May 2019 22:55:36 +0000 (08:55 +1000)]
UI: adjust preferences save/revert button layout

Also add description for factory preferences.

2 months agoTool System: avoid redundant refresh
Campbell Barton [Tue, 14 May 2019 22:43:02 +0000 (08:43 +1000)]
Tool System: avoid redundant refresh

Workspaces refreshes tools multiple times when used by multiple windows.

Also improve comments.

2 months agoCleanup: use doxy sections for workspace
Campbell Barton [Tue, 14 May 2019 22:23:33 +0000 (08:23 +1000)]
Cleanup: use doxy sections for workspace

Also move function in wrong category.

2 months agoOutliner Tooltips Cleanup: Retrict/Allow > Restrict ; set/unset > set
Dalai Felinto [Tue, 14 May 2019 22:35:55 +0000 (19:35 -0300)]
Outliner Tooltips Cleanup: Retrict/Allow > Restrict ; set/unset > set

2 months agoT64020: Outliner - implement Shift + Click for objects as well
Dalai Felinto [Tue, 14 May 2019 22:31:15 +0000 (19:31 -0300)]
T64020: Outliner - implement Shift + Click for objects as well

2 months agoFix T64623: Freestyle procedural noise not consistent across platforms
Brecht Van Lommel [Tue, 14 May 2019 21:36:50 +0000 (23:36 +0200)]
Fix T64623: Freestyle procedural noise not consistent across platforms

Use the Blender RNG instead of rand() to solve it.

2 months agoCode style cleanup: `make format`
Dalai Felinto [Tue, 14 May 2019 21:11:54 +0000 (18:11 -0300)]
Code style cleanup: `make format`

2 months agoOutliner Restriction: Naming sanitization and icon
Dalai Felinto [Tue, 14 May 2019 20:45:47 +0000 (17:45 -0300)]
Outliner Restriction: Naming sanitization and icon

No major API change here, only in the outliner restriction column
variables (e.g., show_restrict_column_selectable > show_restrict_column_select).

* Get rid of _INSTANCE (introduced on b1af68200159).
* Differentiate (everywhere but the API) between HIDE (temporary) and VIEWPORT (global).
* Use the expected icon for restrict viewport (same as objects and modifiers).
* selectable > select

2 months agoOutliner restriction filter: Unify order
Dalai Felinto [Tue, 14 May 2019 20:13:26 +0000 (17:13 -0300)]
Outliner restriction filter: Unify order

The popup menu was a different order than the drawing in the outliner.

2 months agoT64607: Outliner UI Tooltips
Dalai Felinto [Tue, 14 May 2019 17:28:28 +0000 (14:28 -0300)]
T64607: Outliner UI Tooltips

In the outliner we don't have yet a clear distinction for the users of when
to use each of the visibility settings.

This changes that by properly naming the property and their tooltips.
I'm also unifying the naming between the rna properties and the outliner
for collections and objects (e.g., so collection and object hide_select
have the same tooltips everywhere).

The API did not change.

2 months agoFix T64611: Bone Size property is not copied when a bone is copied
Philipp Oeser [Tue, 14 May 2019 20:35:07 +0000 (22:35 +0200)]
Fix T64611: Bone Size property is not copied when a bone is copied

2 months agoDepsgraph: dependency on B-Bone start handle end roll when inheriting it.
Alexander Gavrilov [Tue, 14 May 2019 19:24:34 +0000 (22:24 +0300)]
Depsgraph: dependency on B-Bone start handle end roll when inheriting it.

Specifically the dependency is on any drivers that may be affecting
the RNA property of the handle bone, which currently link to segments.

2 months agoArmature: implement universal hash table lookup of Bone objects by name.
Alexander Gavrilov [Tue, 14 May 2019 18:48:22 +0000 (21:48 +0300)]
Armature: implement universal hash table lookup of Bone objects by name.

Since drivers on Bone properties are really supposed to be stored
in Armature data and access bones via its bones[] collection, this
lookup path should work efficiently.

Mass lookup of bones by name was already done through hashes,
but they were built temporarily every time that was needed. This
simply replaces it with a common hash table computed immediately
after file load, copy, or Edit to Object mode switch.

2 months agoEevee: Fix volumetric shaders compilation error
Clément Foucault [Tue, 14 May 2019 17:58:26 +0000 (19:58 +0200)]
Eevee: Fix volumetric shaders compilation error

2 months agoFix T64455 Texture extension mode 'clip' defaults to 'extend'
Clément Foucault [Tue, 14 May 2019 17:34:31 +0000 (19:34 +0200)]
Fix T64455 Texture extension mode 'clip' defaults to 'extend'

2 months agoCleanup: isolate image dirty flag access in functions
Brecht Van Lommel [Tue, 14 May 2019 15:28:13 +0000 (17:28 +0200)]
Cleanup: isolate image dirty flag access in functions

2 months agoFix T64514: wrong grease pencil icon preview renders
Brecht Van Lommel [Tue, 14 May 2019 15:57:10 +0000 (17:57 +0200)]
Fix T64514: wrong grease pencil icon preview renders

This broken when the new Cycles/Eevee preview scene was added, make it work
the same as before for Grease Pencil now.

2 months agoGPencil: Rename property Follow Drawing Path to Alignment
Antonioya [Tue, 14 May 2019 15:28:31 +0000 (17:28 +0200)]
GPencil: Rename property Follow Drawing Path to Alignment

The old name was not clear and with new options the new name is more easy to understand.

2 months agoFix T60984: Can't perform viewport navigation with left mouse button and active manip...
William Reynish [Tue, 14 May 2019 15:24:16 +0000 (17:24 +0200)]
Fix T60984: Can't perform viewport navigation with left mouse button and active manipulator

This was fixed for active tool gizmos but not viewport gizmos.

Note that this applies only to the Industry Compatible keymap, which is where this issue manifested itself.

2 months agoFix T64551 Crash on leaving local view on the shading tab
Clément Foucault [Tue, 14 May 2019 15:15:48 +0000 (17:15 +0200)]
Fix T64551 Crash on leaving local view on the shading tab

Was causing by garbage collection free the surf_per_mat_tris array.
The cache validate did not take care of ensuring the array was alloc again.

2 months agoFix Shader compilation error on MacOS & some other platform/driver
Clément Foucault [Tue, 14 May 2019 14:43:37 +0000 (16:43 +0200)]
Fix Shader compilation error on MacOS & some other platform/driver

texture2D() is no longer supported by modern opengl, use texture() instead.

2 months agoFix T64601 Error division by zero in GPUVertexFormat
Clément Foucault [Tue, 14 May 2019 14:31:04 +0000 (16:31 +0200)]
Fix T64601 Error division by zero in GPUVertexFormat

The windows compiler use signed int by default for enums so that broke
the bit count I carefully did. Forcing uint fixes it.

2 months agoFix T63994: Node Editor: Move All Selected Nodes when dragging.
Bastien Montagne [Tue, 14 May 2019 13:51:49 +0000 (15:51 +0200)]
Fix T63994: Node Editor: Move All Selected Nodes when dragging.

Left-click select broke that behavior, since it puts both action and
select buttons on the same physical mouse button...

To support this behavior again, we have to split selection process in
two steps, hence make it modal... While I remain rather skeptical about
that global design decision, and complexity it adds to many UI/UX areas,
this solution ends up being OK-ish I think.

Thanks to @brecht for some final tweaks on the patch.

2 months agoInterface: Free argument callback for popups
Jacques Lucke [Tue, 14 May 2019 13:38:51 +0000 (15:38 +0200)]
Interface: Free argument callback for popups

Reviewers: brecht

Differential Revision:

2 months agoUI: Improve naming for Collections Enable/Disable
William Reynish [Tue, 14 May 2019 13:12:41 +0000 (15:12 +0200)]
UI: Improve naming for Collections Enable/Disable

  - Fix 'ddisable' typo
  - Use clearer names for the operators in the Collections context menu

Instead of Set Exclude / Clear Exclude, we now use Enable in View Layer / Disable from View Layer

2 months agoFix T64567: Rename Viewport to Viewport Render
Jeroen Bakker [Tue, 14 May 2019 13:07:31 +0000 (15:07 +0200)]
Fix T64567: Rename Viewport to Viewport Render

2 months agoFix Cycles build error after recent changes
Brecht Van Lommel [Tue, 14 May 2019 13:05:24 +0000 (15:05 +0200)]
Fix Cycles build error after recent changes

We need to do aligned alloc of the services instead of globals now since the
concurrent map moved there.

2 months agoGPU: Windows+Intel Selection Fix
Jeroen Bakker [Tue, 14 May 2019 11:55:35 +0000 (13:55 +0200)]
GPU: Windows+Intel Selection Fix

On Windows 10 with a post Februari 2019 Intel driver, the box selection
is not working. It only detects the object centers, but not the drawn
triangles of the basic engine.

Reviewed By: fclem

Maniphest Tasks: T62947

Differential Revision:

2 months agoUI: Confirm dialog when closing an unsaved file
Jacques Lucke [Tue, 14 May 2019 12:13:02 +0000 (14:13 +0200)]
UI: Confirm dialog when closing an unsaved file

The complexity in this patch comes from the fact
that the current operator system does not support
multi-step user interactions well.

More specifically, for this to work, we need to show
a confirm dialog and a file browser afterwards.
We decided that it is easier to keep everything in
a single operator, instead of creating separate
operators that invoke each other.

So, now the `WM_OT_open_mainfile` operator invokes
itself in different states. It implements a simple
finite state machine to manage the states.

The dialog itself is expected to be improved in
a future commit. See D4829 for more details.

Reviewers: brecht

Differential Revision:

2 months agoFix zfighting from edit mode face overlays
Clément Foucault [Tue, 14 May 2019 12:13:00 +0000 (14:13 +0200)]
Fix zfighting from edit mode face overlays

2 months agoFix T64574 : Weird shadow mesh glitches in viewport
Clément Foucault [Tue, 14 May 2019 11:57:41 +0000 (13:57 +0200)]
Fix T64574 : Weird shadow mesh glitches in viewport

This is not the most clean but this is what is needed to make
point_object_to_ndc equivalent to
point_object_to_world + point_world_to_ndc

2 months agoFix T64574 : Weird shadow mesh glitches in viewport
Clément Foucault [Tue, 14 May 2019 11:57:41 +0000 (13:57 +0200)]
Fix T64574 : Weird shadow mesh glitches in viewport

This is not the most clean but this is what is needed to make
point_object_to_ndc equivalent to
point_object_to_world + point_world_to_ndc

2 months agoGPU: Fixup and add assert to GPU_VERT_ATTR_NAMES_BUF_LEN
Clément Foucault [Tue, 14 May 2019 11:45:55 +0000 (13:45 +0200)]
GPU: Fixup and add assert to GPU_VERT_ATTR_NAMES_BUF_LEN

2 months agoEevee: Fix Auto Tangent not working if active UV layer is greater than 3
Clément Foucault [Tue, 14 May 2019 10:33:25 +0000 (12:33 +0200)]
Eevee: Fix Auto Tangent not working if active UV layer is greater than 3

2 months agoFix T64592: Assign Shortcut does not autosave preferences
Brecht Van Lommel [Tue, 14 May 2019 10:27:28 +0000 (12:27 +0200)]
Fix T64592: Assign Shortcut does not autosave preferences

2 months agoFix T63542: Imported FBX doesn't show keyframes in Shape Key editor.
Bastien Montagne [Tue, 14 May 2019 10:23:31 +0000 (12:23 +0200)]
Fix T63542: Imported FBX doesn't show keyframes in Shape Key editor.

While shapekeys RNA path handling does support keyblocks (ShapeKeys)
with an `id_data` wrongly set to the geometry instead of the shapkey,
this is really not something to promote. ideally it should be removed at
some point. At least, let's not generate such RNA pointer if we can
avoid it.

Here it was breaking proper showing of animated shapekeys in the UI,
since this expects animated datablocks to have their own animation data
(and 'rooting' keyblocks to their mesh instead of their shapekey ended
up defining their animation in the mesh, not in the shapekey).

2 months agoFix T64515, T60434: crash in OSL and preview render after recent changes
Brecht Van Lommel [Tue, 14 May 2019 10:13:43 +0000 (12:13 +0200)]
Fix T64515, T60434: crash in OSL and preview render after recent changes

The refactoring of texture handles did not take into account that render
services are shared between multiple render session. Now the texture
to handle map is also shared between render sessions.

2 months agoScreen: replace show footer operator with property
Campbell Barton [Tue, 14 May 2019 10:17:43 +0000 (20:17 +1000)]
Screen: replace show footer operator with property

This matches 'show header' internal logic.

2 months agoCleanup: sort struct declarations
Campbell Barton [Tue, 14 May 2019 10:20:01 +0000 (20:20 +1000)]
Cleanup: sort struct declarations

2 months agoCleanup: quiet warning
Campbell Barton [Tue, 14 May 2019 10:20:42 +0000 (20:20 +1000)]
Cleanup: quiet warning

2 months agoFix T64441: GPencil textures weird rotation
Antonioya [Tue, 14 May 2019 09:57:32 +0000 (11:57 +0200)]
Fix T64441: GPencil textures weird rotation

New option to disable the follow drawing path. Before it had only a switch property, now there is a list of options.


Path: Follows drawing stroke and rotate with object.
Object: Only follows object rotation.
None: Don't rotate.

2 months agoCleanup: rename ED_scrubbing.h to ED_time_scrub_ui.h
Jacques Lucke [Tue, 14 May 2019 09:39:15 +0000 (11:39 +0200)]
Cleanup: rename ED_scrubbing.h to ED_time_scrub_ui.h

Also renames the corresponding .c file.

2 months agoRNA: fix the id_data pointer of PoseBone.bone to point at the Armature.
Alexander Gavrilov [Tue, 14 May 2019 09:38:04 +0000 (12:38 +0300)]
RNA: fix the id_data pointer of PoseBone.bone to point at the Armature.

The owning ID reference of RNA pointers is supposed to point at the
ID container that owns the object, but for PoseBone.bone it wasn't
updated to point at the Armature data ID instead of Armature Object.

This caused issues, like pose_bone.bone.driver_add() adding the
driver to the Armature Object animation data, which violates the
intended design of the animation data structures.

Since RNA code generally assumes that all pointers that don't
refer directly to an ID remain within the current ID, a custom
getter is required to fix this.

2 months agoDepsgraph: detect bbone_segments drivers from Object animation data.
Alexander Gavrilov [Tue, 14 May 2019 09:09:02 +0000 (12:09 +0300)]
Depsgraph: detect bbone_segments drivers from Object animation data.

2 months agoFix T64578: Cycles clamps HDR colors for 16bit integer image with colorspace
Brecht Van Lommel [Tue, 14 May 2019 09:22:07 +0000 (11:22 +0200)]
Fix T64578: Cycles clamps HDR colors for 16bit integer image with colorspace

2 months agoCleanup: DRW: Move ModelMatrix declaration to common_view_lib
Clément Foucault [Mon, 13 May 2019 22:48:17 +0000 (00:48 +0200)]
Cleanup: DRW: Move ModelMatrix declaration to common_view_lib

2 months agoGPUVertexFormat: Reduce size of structs
Clément Foucault [Mon, 13 May 2019 21:31:43 +0000 (23:31 +0200)]
GPUVertexFormat: Reduce size of structs

With this patch, the size of GPUVertFormat goes from 1240 to 388.

2 months agoCleanup: DRW: Add and use DRW_shgroup_uniform_vec2_copy
Clément Foucault [Mon, 13 May 2019 17:20:58 +0000 (19:20 +0200)]
Cleanup: DRW: Add and use DRW_shgroup_uniform_vec2_copy

2 months agoCleanup: DRW: Remove unused Uniform types
Clément Foucault [Mon, 13 May 2019 17:20:27 +0000 (19:20 +0200)]
Cleanup: DRW: Remove unused Uniform types

2 months agoCleanup: DRW: Remove uneeded _add suffix from DRW_shgroup_call_add
Clément Foucault [Mon, 13 May 2019 16:28:36 +0000 (18:28 +0200)]
Cleanup: DRW: Remove uneeded _add suffix from DRW_shgroup_call_add

2 months agoDRW: Refactor: Use DRWCall to accumulate per instance attributes
Clément Foucault [Mon, 13 May 2019 15:56:20 +0000 (17:56 +0200)]
DRW: Refactor: Use DRWCall to accumulate per instance attributes

This is a big change that cleanup a lot of confusing code.
- The instancing/batching data buffer distribution in draw_instance_data.c.
- The selection & drawing code in draw_manager_exec.c
- Prety much every non-meshes object drawing (object_mode.c).

Most of the changes are just renaming but there still a chance a typo might
have sneek through.

The Batching/Instancing Shading groups are replace by DRWCallBuffers. This
is cleaner and conceptually more in line with what a DRWShadingGroup should

There is still some little confusion in draw_common.c where some function
takes shgroup as input and some don't.

2 months agoGPU: Add GPU_vertbuf_discard and GPU_BATCH_UNUSED
Clément Foucault [Mon, 13 May 2019 15:27:35 +0000 (17:27 +0200)]
GPU: Add GPU_vertbuf_discard and GPU_BATCH_UNUSED

GPU_vertbuf_discard to clear buffer containers in place.
GPU_BATCH_UNUSED to tag batch that are cleared and not immediatly usable.

2 months agoBLI_memblock: Add more options
Clément Foucault [Mon, 13 May 2019 13:57:03 +0000 (15:57 +0200)]
BLI_memblock: Add more options

- Use int instead of uint for safety and less conversions.
- Add free callback
- Add cleared alloc option

2 months agoCleanup: Remove DRWCallType
Clément Foucault [Sat, 11 May 2019 17:16:46 +0000 (19:16 +0200)]
Cleanup: Remove DRWCallType

This simplify the rendering logic.

2 months agoDRW: Fix threading hazard when rendering and using auto depth
Clément Foucault [Sat, 11 May 2019 17:13:54 +0000 (19:13 +0200)]
DRW: Fix threading hazard when rendering and using auto depth

2 months agoCleanup: DRW: Remove unused functions
Clément Foucault [Sat, 11 May 2019 15:45:45 +0000 (17:45 +0200)]
Cleanup: DRW: Remove unused functions

2 months agoDRW: Change Procedural function to use a GPUBatch
Clément Foucault [Sat, 11 May 2019 15:45:20 +0000 (17:45 +0200)]
DRW: Change Procedural function to use a GPUBatch

This is in order to have VAO handled by thoses batches instead of using a
common VAO. Even if the VAO has no importance in these case using a batch
will help when transitioning to Vulkan.

2 months agoEevee: Replace DRW_shgroup_empty_tri_batch_create by procedural calls
Clément Foucault [Sat, 11 May 2019 15:42:36 +0000 (17:42 +0200)]
Eevee: Replace DRW_shgroup_empty_tri_batch_create by procedural calls

2 months agoMesh Batch Cache: Fix use of uninitialized variable
Clément Foucault [Sat, 11 May 2019 14:49:17 +0000 (16:49 +0200)]
Mesh Batch Cache: Fix use of uninitialized variable

2 months agoDRW: Make Instance count not a pointer
Clément Foucault [Sat, 11 May 2019 14:14:25 +0000 (16:14 +0200)]
DRW: Make Instance count not a pointer

Goal is still to simplify the draw manager.

2 months agoCleanup: Eevee: Make planar downsampling not use instance drawing
Clément Foucault [Sat, 11 May 2019 13:58:49 +0000 (15:58 +0200)]
Cleanup: Eevee: Make planar downsampling not use instance drawing

2 months agoCleanup: DRW: Remove pointers to materials
Clément Foucault [Sat, 11 May 2019 12:42:26 +0000 (14:42 +0200)]
Cleanup: DRW: Remove pointers to materials

2 months agoGPU: Move Material index to nodetree evaluation
Clément Foucault [Sat, 11 May 2019 12:37:27 +0000 (14:37 +0200)]
GPU: Move Material index to nodetree evaluation

This removes the need to pass the Material* all over the place in the draw
manager. Cleanup comming right after.

2 months agoDRW: Remove ModelViewMatrix and ModelViewMatrixInverse
Clément Foucault [Sat, 11 May 2019 12:04:18 +0000 (14:04 +0200)]
DRW: Remove ModelViewMatrix and ModelViewMatrixInverse

2 months agoGPU: Remove ModelViewMatrix and ModelViewMatrixInverse usage
Clément Foucault [Sat, 11 May 2019 11:59:10 +0000 (13:59 +0200)]
GPU: Remove ModelViewMatrix and ModelViewMatrixInverse usage

2 months agoFix T64588: some new theme preferences not saving
Brecht Van Lommel [Tue, 14 May 2019 08:42:53 +0000 (10:42 +0200)]
Fix T64588: some new theme preferences not saving

2 months agoFix T64339: Crash with UV sculpt after undo
Campbell Barton [Tue, 14 May 2019 06:44:21 +0000 (16:44 +1000)]
Fix T64339: Crash with UV sculpt after undo

2 months agoKeymap: add option for tilde key preference
Campbell Barton [Tue, 14 May 2019 05:05:19 +0000 (15:05 +1000)]
Keymap: add option for tilde key preference

Since the view menu is redundant for people with a numpad,
add a preference for it to switch between gizmos instead.

2 months agoPreferences: file menu item to temporarily load factory settings
Campbell Barton [Tue, 14 May 2019 02:23:55 +0000 (12:23 +1000)]
Preferences: file menu item to temporarily load factory settings

It's common to load factory settings as a test without wanting to
overwrite your own settings on exit.

2 months agoPreferences: set dirty flag when dragging
Campbell Barton [Tue, 14 May 2019 01:15:38 +0000 (11:15 +1000)]
Preferences: set dirty flag when dragging

2 months agoFix property update setting dirty flag
Campbell Barton [Tue, 14 May 2019 01:12:02 +0000 (11:12 +1000)]
Fix property update setting dirty flag

2 months agoFix missing preference dirty tagging
Campbell Barton [Tue, 14 May 2019 00:08:24 +0000 (10:08 +1000)]
Fix missing preference dirty tagging

Tagging dirty was failing for UI scale, line width, hinting & others.

Checking for an update function means all update functions
need to tag preferences as dirty.

Since this check was added to prevent the active section marking the
preferences as dirty, only exclude this property.

2 months agoUI: grey out 'Revert' when preferences aren't dirty
Campbell Barton [Tue, 14 May 2019 00:00:00 +0000 (10:00 +1000)]
UI: grey out 'Revert' when preferences aren't dirty

2 months agoFix T63802: textured lights not working with OSL
Brecht Van Lommel [Mon, 13 May 2019 22:40:25 +0000 (00:40 +0200)]
Fix T63802: textured lights not working with OSL

2 months agoFix T64561: wrong colorspace for Cycles displacement nodes
Brecht Van Lommel [Mon, 13 May 2019 21:40:45 +0000 (23:40 +0200)]
Fix T64561: wrong colorspace for Cycles displacement nodes

2 months agoFix compiler warning with OpenGL icon textures
Brecht Van Lommel [Mon, 13 May 2019 21:30:23 +0000 (23:30 +0200)]
Fix compiler warning with OpenGL icon textures

2 months agoFix T64292: world missing from outliner Scenes view
Brecht Van Lommel [Mon, 13 May 2019 20:37:45 +0000 (22:37 +0200)]
Fix T64292: world missing from outliner Scenes view

2 months agoFix T64297: edit light energy not working for Eevee, when nodes exist
Brecht Van Lommel [Mon, 13 May 2019 20:32:50 +0000 (22:32 +0200)]
Fix T64297: edit light energy not working for Eevee, when nodes exist

Simplify code now that Cycles also has energy outside nodes.

2 months agoFix T64407: crash adding workspace after appending datablock
Brecht Van Lommel [Mon, 13 May 2019 20:18:11 +0000 (22:18 +0200)]
Fix T64407: crash adding workspace after appending datablock

The files operator property should not be remembered for next
operator executions, gives unexpected effects when using the
operator again.

2 months agomake.bat: add option for enabling the OpenGL based tests.
Ray Molenkamp [Mon, 13 May 2019 20:08:27 +0000 (14:08 -0600)]
make.bat: add option for enabling the OpenGL based tests.

2 months agoPython API: expose conversion between tweaked NLA strip and scene time.
Alexander Gavrilov [Mon, 13 May 2019 18:01:03 +0000 (21:01 +0300)]
Python API: expose conversion between tweaked NLA strip and scene time.

This is necessary to correctly do low-level keyframe manipulation
in tweak mode, and the logic is complex enough that re-implementing
it in Python is impractical.