Commit Graph

61945 Commits

Author SHA1 Message Date
Jeroen Bakker
c771bbc27e Code cleanup: Compiler warning 2018-06-01 12:01:31 +02:00
Brecht Van Lommel
01c75c3765 Math: optimizations for 4x4x matrix inverse, multiplications.
In some heavy rigs matrix inverse can be 10% of computation time. This
reduces it to 2% by using Eigen's optimized 4x4 matrix inverse and SSE
matrix multiplication.
2018-06-01 12:00:11 +02:00
Brecht Van Lommel
719e782f2c Modifiers: tiny optimizations for mesh deform, lattice, kdop. 2018-06-01 12:00:11 +02:00
Brecht Van Lommel
bcbee4b9a3 Fix missing animation updates when the proxy object is not visible.
The relation was inverted here, for a long time already. The reason is
unclear and in principle it should work fine in the right direction.
2018-06-01 12:00:11 +02:00
Brecht Van Lommel
1bc801e020 Fix use of uninitialized value in depsgraph. 2018-06-01 12:00:11 +02:00
Campbell Barton
14c55a5828 Cleanup: long lines 2018-06-01 11:59:15 +02:00
Dalai Felinto
e35dab0fec Fix building for workbench in windows (BLI_INLINE) 2018-06-01 11:55:50 +02:00
Sybren A. Stüvel
0bddf5315f Fix T55282: Modifiers: Removed unnecessary object evaluation 2018-06-01 11:50:53 +02:00
Sybren A. Stüvel
8f24d404fe Removed old mention of CDDerivedMesh 2018-06-01 11:50:53 +02:00
Campbell Barton
e614a8290c Fix/Workaround T55272: Sculpt/VPaint removes mesh 2018-06-01 11:49:10 +02:00
Campbell Barton
e8142ad7dc Cleanup: quiet warnings 2018-06-01 11:49:10 +02:00
Clément Foucault
4683091369 Object Mode: Display loose edges if overlays are enables.
This fix T55280 Loose edges not visible in object mode
2018-06-01 11:36:01 +02:00
Jeroen Bakker
d5a359b1d4 Fix: overlays are reset when selection is being performed
/me hits myself in the head. In selection code the flags were not tested
but set directly.
2018-06-01 11:31:30 +02:00
Jeroen Bakker
c450966e95 Workbench: Material specific settings for the specular
- 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-06-01 11:01:55 +02:00
Campbell Barton
3b2d3a3cd1 Fix crash switching sculpt/vpaint -> edit mode 2018-06-01 10:34:00 +02:00
Campbell Barton
fe09aa602a 3D View: hide orbit navigation in camera view
Typically for camera views it's nicer not to overlay large widgets,
only include the button to exit camera view.
2018-06-01 10:17:07 +02:00
Sybren A. Stüvel
c338ac9454 Modifiers: ported Soft Body DerivedMesh → Mesh
The simulation doesn't seem to update properly yet.
2018-06-01 10:04:46 +02:00
Campbell Barton
3cefb27830 Partial Revert of COW/Camera manipulator changes
d64fbe9456 3e26b84397
2018-06-01 09:48:40 +02:00
Campbell Barton
266fc1c1ff Revert "COW Fix: Lamp manipulators"
This reverts commit 33e45658eb.

No longer needed.
2018-06-01 09:25:24 +02:00
Campbell Barton
5736157b5e 3D View: respect text option for edit-mode info 2018-06-01 09:22:08 +02:00
Campbell Barton
a6395cebb7 Error in last commit 2018-06-01 08:31:32 +02:00
Campbell Barton
c87cfcc8de 3D View: make text overlay optional 2018-06-01 08:26:55 +02:00
Campbell Barton
63785a889c 3D View: support world background color 2018-06-01 08:16:24 +02:00
Pablo Vazquez
35efa1d3d3 Add 'Toggle Header' to header context menu.
Also disable collapsing the header by dragging it up/down. This prevents
accidentally hiding the header when resizing areas.
2018-06-01 02:55:16 +02:00
Dalai Felinto
a4bb1a5881 Fix render engine info region when overlap and header on bottom
Note there is some talk about changing the position of this (which would be strange in the image editor by the way,
since there we use the bottom for the result of the current pixel when dragging the mouse).

However first I wanted to fix this regardless.
2018-05-31 23:58:48 +02:00
Campbell Barton
995fa1f4c0 UI: new tool properties space type
This currently shows panels that were in the 2.79 3D view toolbar
which are now popovers.

In some cases it's useful for these to stay open.
This commit adds a space type to do this.

Note this is currently empty in object mode.
2018-05-31 21:45:26 +02:00
Campbell Barton
14dee6d7a5 UI: support drawing panels from multiple contexts 2018-05-31 21:42:02 +02:00
Dalai Felinto
e51cbce646 Cleanup: Fix indentation 2018-05-31 19:19:27 +02:00
Clément Foucault
bf4ce5755f Overlay: Add Wireframe overlay.
This overlay is showing mesh topology. It is usable with transparency
even if the mesh order can mess up with the expected result (some object
more prominent than others).

Edge thickness and alpha values are hardcoded for now but can easily be
added to theme or object settings.
2018-05-31 19:09:20 +02:00
Clément Foucault
712885c30e DRW: Add wireframe buffer texture generation for wireframe drawing.
Only OB_MESH is supported for now.

Creates a simple index buffer with negative indices if the edges is not a
real edge.

Also create the buffer texture representation of this buffer along with the
pos_in_order buffer texture.
2018-05-31 19:09:20 +02:00
Clément Foucault
f43e3d0b6b DRW: Fix DRW_shgroup_call_procedural_* vertex count. 2018-05-31 19:09:20 +02:00
Clément Foucault
494470ba23 GPUTexture: Expose GPU_texture_create_buffer and add GL_R32I support. 2018-05-31 19:09:20 +02:00
Clément Foucault
8789490f96 LoopTri: Fix example code.
For real guys! Test your example code!
2018-05-31 19:09:20 +02:00
Clément Foucault
71c904433c DRW: Fix stick bones memory leak. 2018-05-31 19:09:20 +02:00
Bastien Montagne
2feed9bdef Fix Collada building... 2018-05-31 18:37:33 +02:00
Bastien Montagne
f71efafe8f Merge branch 'master' into blender2.8
Conflicts:
	source/blender/editors/sculpt_paint/paint_image.c
	source/blender/editors/space_image/image_edit.c
	source/blender/editors/space_image/image_ops.c
	source/blender/makesrna/intern/rna_material.c
	source/blender/makesrna/intern/rna_sculpt_paint.c
	source/blender/makesrna/intern/rna_space.c
	source/blenderplayer/bad_level_call_stubs/stubs.c
2018-05-31 18:35:14 +02:00
Bastien Montagne
cfea9c261c Cleanup: Remove G.main from some editor files. 2018-05-31 18:23:20 +02:00
Sergey Sharybin
df22cd9ce1 Depsgraph: Fixes to prevent object duplicate to jump
This includes:

- Skip OB_RECALC_TIME tag from object duplicate operator
  not sure why it is needed: even if original object was
  animated, duplicating it will copy evaluated values.

- Don't tag whole ID for update when updating it after
  relations rebuilt. Use the same trickery to detect
  whether animation is to be re-evaluated or not as is
  done for update flag=0.

- Don't tag datablocks which are expanded for update
  of copy-on-write.

- Avoid flush along relation from copy-on-write
  operation in action. This will not invalidate any
  pointers in the copied datablock since we don't
  reference anything in the action.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
3352dd3a3f Depsgraph: Remove unused flags
They are no longer needed after the active depsgraph concept is here.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
126e6c8e1d Transform: Read all data from original objects
This is now guaranteed to be in sync with evaluated state for an active
dependency graph.

Solves issue with duplicating animated object.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
59a516913e Depsgraph: Copy evaluated data to original datablock
Only do it for active dependency graph.

Currently covers animation, drivers, object and pose channel matricies.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
b5b1f9d11c Depsgraph: Consider depsgraphs used by workspace as active
Will cause some bad behavior when object is shared across multiple
visible view layers with different overrides. Accept it for now,
and possibly force single view layer later.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
7a4b0ff358 Depsgraph: Begin concept of active dependency graph
When active dependency graph is evaluated, it will apply animation,
drivers and scalar evaluation data (such as object matrix) to an
original datablock. This way operators and tools can easily read
data from original datablock.

This will simplify porting them to copy-on-write, and solve issues
when some operator will allocate new datablock based on original one,
and will want to read data from it.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
d4daf9c00d Depsgraph: Forbid update flush to go from copy-on-write to animation 2018-05-31 18:07:55 +02:00
Sergey Sharybin
cd702db338 Animation: Pass dependency graph to animation system
This way we allow animation system to make decisions based on which
context dependency graph is coming from, and whether it belongs to
an active edit window or not.
2018-05-31 18:07:55 +02:00
Sergey Sharybin
48ea2131aa Sequencer: Make dependency graph part of sequencer context
Currently unused, but will be needed soon to deal with active edit
window context.
2018-05-31 18:07:55 +02:00
Campbell Barton
cb614107d3 UI: fix own error switching fake space types 2018-05-31 18:00:17 +02:00
Bastien Montagne
5a82aee9e6 Merge branch 'master' into blender2.8
Conflicts:
	source/blender/alembic/intern/abc_exporter.cc
	source/blender/blenkernel/BKE_mball.h
	source/blender/blenkernel/intern/depsgraph.c
	source/blender/blenkernel/intern/mball.c
	source/blender/editors/object/object_add.c
	source/blender/render/intern/source/convertblender.c
2018-05-31 16:57:39 +02:00
Campbell Barton
8d53e8cd02 UI: hide user preferences from space menu
See T54744
2018-05-31 16:46:24 +02:00
Bastien Montagne
da11e33b26 Cleanup: remove G.main from BKE mball code. 2018-05-31 16:44:05 +02:00