Commit Graph

99179 Commits

Author SHA1 Message Date
Clément Foucault
d412a5e6fa DRW: Fix crash drawing gpencil 2020-08-19 11:54:05 +02:00
Dalai Felinto
90ee622830 Turn experimental features ON for master
During alpha the user preferences > experimental featuers are available
to prevent merge issues and allow developers to seek feedback.

This needs to be manually turned off when we branch for beta, otherwise
the RNA of the incomplete features will be exposed.
2020-08-19 10:23:21 +02:00
Dalai Felinto
ffb8fca751 Revert "Turn experimental features on for master (alpha)"
I turned on the wrong feature in cmake.
This reverts commit bdf43213b2.
2020-08-19 10:22:00 +02:00
Campbell Barton
638fa188b7 Merge branch 'blender-v2.90-release' into master 2020-08-19 14:45:21 +10:00
Hans Goudey
04ca28a6e0 Fix T77300: Some scientific notation evaluation has incorrect results
Ref D7922
2020-08-19 14:44:42 +10:00
Campbell Barton
d3bf4929de Cleanup: update mball.c comments
Some errors in comments, references to old function names.
2020-08-19 14:16:25 +10:00
Campbell Barton
7a602fb525 Cleanup: spelling 2020-08-19 14:04:36 +10:00
Campbell Barton
3f43f57731 Cleanup: warnings 2020-08-19 13:52:48 +10:00
Campbell Barton
33a4a6dd66 Merge branch 'blender-v2.90-release' into master 2020-08-19 13:51:14 +10:00
Campbell Barton
762e4cf221 BLI_listbase: add utility macro for looping over lists with an index
Add to the 2.90 branch to avoid problems if fixes from master use it.
2020-08-19 13:43:51 +10:00
Hans Goudey
349eebd7d1 UI Code Quality: Use LISTBASE_FOREACH in interface directory
I only skipped a few loops in the monstrous ui_handle_menu_event
function. Also, I only changed variable names where necessary to
prevent redeclarations.

Differential Revision: https://developer.blender.org/D8586
2020-08-18 21:47:00 -04:00
Hans Goudey
ffa8e75799 BLI Listbase: Add iterator macro that increments an index 2020-08-18 21:38:18 -04:00
Clément Foucault
78d6c273b7 Merge branch 'blender-v2.90-release'
# Conflicts:
#	source/blender/editors/space_sequencer/sequencer_draw.c
2020-08-18 21:30:52 +02:00
Clément Foucault
33fde699e2 Cleanup: GPUState: Remove GPU_state_init() 2020-08-18 21:30:11 +02:00
Clément Foucault
e5796233c7 GPUState: Use GPU_viewport to set viewport state in GPU_framebuffer
also fix a small issue in GPU_texture_clear.
2020-08-18 21:30:11 +02:00
Clément Foucault
adca09b643 GPUState: Port default state to StateManager constructor 2020-08-18 21:30:11 +02:00
Clément Foucault
a9f2ebb215 Cleanup: DRW: Use GPUState instead of raw opengl calls
Should not break anything! Huh!
2020-08-18 21:30:10 +02:00
Clément Foucault
536c2e0ec9 GPUState: Only apply state before drawing 2020-08-18 21:30:10 +02:00
Clément Foucault
482a51aabf Cleanup: GPUState: Remove stack from the state manager and rename it 2020-08-18 21:30:10 +02:00
Clément Foucault
d10f000322 GPUState: Remove gpuPushAttr/gpuPopAttr
And use manual save/restore mechanism.

The stack method is not used so much to be considered useful.
2020-08-18 21:30:10 +02:00
Clément Foucault
f30df15edc GPUState: Make use of GPUStateStack class
This isolate most GL calls to the GL backend. Still a few remains.
2020-08-18 21:30:10 +02:00
Clément Foucault
298329554a Cleanup: GPUState: remove double GPU_blend calls 2020-08-18 21:30:10 +02:00
Clément Foucault
bf1b622dd9 GPUState: GPU_blend final API renaming
We now use GPU_blend for enabling / disabling blending and explicitly
set the blend equation.
2020-08-18 21:30:10 +02:00
Clément Foucault
10558d6973 Cleanup: GPUState: remove use of GPU_blend_set_func 2020-08-18 21:30:10 +02:00
Clément Foucault
969bcf0793 Cleanup: GPUState: Replace blend func separate by enum 2020-08-18 21:30:10 +02:00
Clément Foucault
a1459b2f7a Cleanup: GPU: Move towards an explicit Blend state
This make use of the GLStateStack functions for:
- `GPU_blend()`
- `GPU_blend_set_func()`
- `GPU_blend_set_func_separate()`

The goal is to unify them using an explicit state setting.
This will remove the need to use obscure blend functions
2020-08-18 21:30:10 +02:00
Clément Foucault
2ae1c895a2 GPUState: Add GL backend and state tracking but do not use it
This is just the backend work. It is not plugged in yet because it
needs more external cleanup/refactor.
2020-08-18 21:30:10 +02:00
Clément Foucault
2eddfa85e0 Cleanup: GPU: Remove uneeded depth precision getter.
We always use 24bit framebuffers nowadays.
2020-08-18 21:30:10 +02:00
Clément Foucault
0f292dc072 Cleanup: GPUState: remove float variant of GPU_scissor_get 2020-08-18 21:30:10 +02:00
Clément Foucault
c78ea96528 GPUShader: Add debug labels
This allow better debugging inside renderdoc.
2020-08-18 21:30:10 +02:00
Clément Foucault
ba3c18f4b2 GPUShader: Add back vertformat_from_shader() 2020-08-18 21:30:10 +02:00
Clément Foucault
e8c48ce075 GPUShader: Improve auto name
Use macro to get calling function name. Helps debugging shaders.
2020-08-18 21:30:10 +02:00
Clément Foucault
e43e9caf1b GPUShader: Rewrite error printing
Now error printing only display the line related to the error.
We also put char marker if present.

Example:
```
-- Shader Compilation Errors : MAMaterial --

10414 |  node_fresnel(, facingnormal, viewposition, tmp34);
      |               ^
      | error: syntax error, unexpected ',', expecting ')'

----------------------------------
```
2020-08-18 21:30:10 +02:00
Clément Foucault
216d78687d GPUShader: GL backend isolation 2020-08-18 21:30:09 +02:00
Clément Foucault
df28d2c27e Cleanup: GPU: Replace Batch uniform by shader uniform using macro
This is a first step into removing uniforms from GPU_batch and Imm.
2020-08-18 21:30:09 +02:00
Clément Foucault
d5b5b228e4 UI: Fix protential stray GPU state preventing correct drawing
Fix potential issue with nodetree introduced in rB47c6f41b8926.
2020-08-18 21:29:47 +02:00
Germano Cavalcante
b8b56ee172 BLI_kdopbvh: Adjust epsilon according to the axis
This corrects the overlap detection for cloths since in this case kdop26
is used and epsilon represents the distance.
2020-08-18 14:08:58 -03:00
Jacques Lucke
80face1be5 Depsgraph: simplify DEG_evaluate_* API
This mainly removes the bmain argument, which can be
retrieved from the graph itself.

Also, I removed some outdated/unnecessary comments.

Reviewers: sergey, sybren

Differential Revision: https://developer.blender.org/D8614
2020-08-18 17:40:56 +02:00
Pablo Dobarro
c2f0522760 Sculpt: Enable Cloth Simulation Target for Pose and Boundary
This adds a new brush property called "Deformation Target" which
controls how the brush deformations is going to affect the mesh data. By
default is set to Geometry, which makes the brushes displace the
vertices. When set to Cloth Simulation, the deformation of the brush is
applied to the cloth solver constraints, so the simulation is
responsible to apply the final deformation. This allows to add cloth
simulation effects to other sculpt tools with minor modifications to their
code.

This patch enables Cloth Simulation deformation target for Pose and
Boundary brushes, which are tools that are already designed to work in
low poly counts and produce large deformations. This allows creating the
most common cloth effects, like bending and compressing folds, without
relying on collisions.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8578
2020-08-18 17:16:35 +02:00
Pablo Dobarro
bedd6f90ca Sculpt: Erase Displacement Mesh Filter
Same concept as the Multires Displacement Eraser Brush but implemented
as a mesh Filter. This allows to delete the displacement of an entire
area uniformly.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8608
2020-08-18 17:04:24 +02:00
Pablo Dobarro
0957189d4a Sculpt: Enhance Details Mesh Filter
Exact same operation as D8509, implemented as a Mesh Filter.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8510
2020-08-18 16:56:44 +02:00
Clément Foucault
55087b84b8 Cleanup: Node: Use checker shader for preview background
Removes many drawcalls which might have slowdown the UI.
2020-08-18 16:15:34 +02:00
Pablo Dobarro
3e5431fdf4 Sculpt: Invert Smooth to Enhance Details
This enables the invert mode in the smooth brush as Enhance Details.
The operation is similar to the Sharpen Filter intensify details parameter,
which consist in applying the laplacian smooth displacement in the opposite
direction calculated using the original coordinates.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8509
2020-08-18 16:14:10 +02:00
Clément Foucault
872efd8d73 Merge branch 'blender-v2.90-release'
# Conflicts:
#	source/blender/editors/space_node/node_draw.c
#	source/blender/editors/space_sequencer/sequencer_draw.c
2020-08-18 16:04:41 +02:00
Antonio Vazquez
b3b67a61b7 Fix compiler error in MSVSC
Introduced in: rB20a8edaa725ddbae16179d2f7cea88c097c61615

It broke building on windows, initializing a static may not be done with a function in C.
2020-08-18 15:59:03 +02:00
Sybren A. Stüvel
5195d346f4 Fix T79714: Projecting texture from camera fails
The evaluated mesh is now only recomputed when the required data layers
are missing. Previously the evaluated mesh was re-evaluated incorrectly,
which caused the stippled result and the failing assert.

Since now only the evaluated mesh is used, and never a temporary mesh,
there is also no more need to keep track of whether the mesh needs
freeing or not.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8574
2020-08-18 15:53:28 +02:00
Jacques Lucke
6a4f5e6a8c Depsgraph: simplify build API
Reviewers: sergey, sybren

Differential Revision: https://developer.blender.org/D8611
2020-08-18 15:51:32 +02:00
Clément Foucault
47c6f41b89 Fix T77564: VSE (and compositor background) lost stereoscopy preview
Issue introduced on fe045b2b77.

Since the stereoscopy compositing (anaglyph, ...) is only done for
viewports the VSE preview and compositor need to use viewports.

Reviewed by: dfelinto

Differential Revision: https://developer.blender.org/D8472
2020-08-18 15:50:49 +02:00
Jacques Lucke
d9f7cbb8af Cleanup: remove bmain argument from BKE_scene_graph_update_for_newframe
Reviewers: sergey

Differential Revision: https://developer.blender.org/D8613
2020-08-18 15:45:58 +02:00
Jacques Lucke
f653a4f349 Cleanup: remove outdated comments 2020-08-18 15:41:26 +02:00