Commit Graph

57813 Commits

Author SHA1 Message Date
Dalai Felinto
535adcdaa3 Depsgraph: Iterates over ID Nodes instead of Bases
Although this works by itself, it should actually happen after:

"Reshuffle collections base flags evaluation, make it so object is gathering
its base flags from collections."

Meanwhile we have one single hacky function (deg_flush_base_flags_and_settings)
to be removed once the task above is tackled.

Reviewers: sergey

Differential Revision: https://developer.blender.org/D2899
2017-11-06 17:51:16 -02:00
Clément Foucault
facdc15fdd DRW: Fix compilation error. 2017-11-06 18:41:00 +01:00
Bastien Montagne
91af8f2ae2 Merge branch 'master' into blender2.8
Conflicts:
	intern/cycles/device/device.cpp
	source/blender/blenkernel/intern/library.c
	source/blender/blenkernel/intern/material.c
	source/blender/editors/object/object_add.c
	source/blender/editors/object/object_relations.c
	source/blender/editors/space_outliner/outliner_draw.c
	source/blender/editors/space_outliner/outliner_edit.c
	source/blender/editors/space_view3d/drawobject.c
	source/blender/editors/util/ed_util.c
	source/blender/windowmanager/intern/wm_files_link.c
2017-11-06 18:02:46 +01:00
Clément Foucault
9d77b5d591 Eevee: Remove uses of DRW_shgroup_call_dynamic_add_empty in shadows and probe rendering.
This was adding an unecessary high number of DRWCall per objects.
2017-11-06 17:43:14 +01:00
Clément Foucault
ed555750eb DRW: Use pseudo persistent memory pool for the rendering data structure.
This gets rid of the bottleneck of allocation / free of thousands of elements every frame.

Cache time (Eevee) (test scene is default file with cube duplicated 3241 times)
pre-patch: 23ms
post-patch: 14ms
2017-11-06 17:43:14 +01:00
Bastien Montagne
66a6d160fe Rename ID_IS_LINKED_DATABLOCK to ID_IS_LINKED.
This makes code closer to id_override/assent-engine ones, which
introduce a new type of linked data, and hence reserve
ID_IS_LINKED_DATABLOCK to real linked datablocks.
2017-11-06 17:17:10 +01:00
Germano
5d70e847dd Fix T51604: Support Auto-Smooth in Edit-Mesh
and allocate loop_normals in MeshRenderData instead of CustomData

Differential Revision: D2907
2017-11-06 14:14:07 -02:00
Bastien Montagne
b28da9dbf8 Fix T53250: Crash when linking/appending a scene to a blend when another linked scene in this blend is currently open/active.
Inner DAG code would not check against NULL pointer, and in case of an
active linked scene, scene pointer will be NULL here, so we have to
check it ourself. ;)
2017-11-06 15:16:40 +01:00
Sergey Sharybin
7082bd1f4c Depsgraph: Cleanup, remove obsolete unused function 2017-11-06 09:24:24 +01:00
Sergey Sharybin
f5964e6429 epsgraph: Use explicit graph API for sequencer 2017-11-06 09:24:24 +01:00
Sergey Sharybin
ad557da78a Depsgraph: Use explicit graph API for point cache 2017-11-06 09:24:24 +01:00
Sergey Sharybin
90738e1441 Depsgraph: Use explicit graph API for audio bake 2017-11-06 09:24:24 +01:00
Sergey Sharybin
d0e9352d32 Depsgraph: Use explicit graph API for OpenGL render 2017-11-06 09:24:24 +01:00
Sergey Sharybin
bb3024ef12 Depsgraph: Use new API for alembic C-API 2017-11-06 09:24:24 +01:00
Sergey Sharybin
45773c1a0a Update comment, reference new API function 2017-11-06 09:24:24 +01:00
Sergey Sharybin
031f4ce8a6 Depsgraph: Use new scene update API in preview render 2017-11-06 09:24:23 +01:00
Sergey Sharybin
5af1c89269 Depsgraph: Make graph to be per-scene-layer for RNA
New access is C.scene.render_layers.active.depsgraph. This will give depsgraph
for a given layer. In the future there will need to be some extra context to be
passed.
2017-11-06 09:24:23 +01:00
Sergey Sharybin
dd79cd189b Depsgraph: Cleanup, remove depgraph_legacy from evaluation routines 2017-11-06 09:24:23 +01:00
Sergey Sharybin
1b40243316 Depsgraph: Cleanup, remove depsgraph_legacy from building routines 2017-11-06 09:24:23 +01:00
Sergey Sharybin
3330e518dc Depsgraph: Cleanup, remove unused function 2017-11-06 09:24:23 +01:00
Sergey Sharybin
17395b6b08 Depsgraph: Cleanup, remove depsgraph_legacy from depsgraph_tag.cc 2017-11-06 09:24:23 +01:00
Sergey Sharybin
f867a560d9 Depsgraph: Avoid non-requested allocation of depsgraph 2017-11-06 09:24:23 +01:00
Campbell Barton
58dc114615 Merge branch 'master' into blender2.8 2017-11-06 00:12:28 +11:00
Campbell Barton
18d7fbe4f5 Cleanup: order buffer length after the buffer 2017-11-06 00:04:46 +11:00
Campbell Barton
2837a7e198 Cleanup: remove paranoid NULL check 2017-11-05 23:34:40 +11:00
Campbell Barton
43f3cfd584 Cleanup: spelling 2017-11-05 14:33:18 +11:00
Campbell Barton
fbfda21fe4 UI: show tool-tips for each tools shortcuts 2017-11-05 01:29:52 +11:00
Campbell Barton
d4fe083b35 Merge branch 'master' into blender2.8 2017-11-04 21:45:52 +11:00
Campbell Barton
01a3c95609 UI: tool-tip refactor, don't hard code field types
Allow other kinds of tips be created w/o exceeding hard limits.
2017-11-04 21:15:18 +11:00
Campbell Barton
25f56d7a7b UI: correct flag re-use
Adding ability to show a button as pressed w/o UI_SELECT set caused
other flags to be cleared that shouldn't have been.
2017-11-04 14:13:04 +11:00
Sergey Sharybin
10024603ee Scene API: Switch to explicit scene graph update API
This is part of lets-get-rid-of-scene->legacy_depsgraph work
2017-11-03 16:35:12 +01:00
Sergey Sharybin
c4501ccb17 Merge branch 'master' into blender2.8 2017-11-03 16:31:53 +01:00
Sergey Sharybin
6664ee209e Scene RNA API: More global mains goes away 2017-11-03 16:28:37 +01:00
Sergey Sharybin
0c4f69a2bf Merge branch 'master' into blender2.8 2017-11-03 16:17:01 +01:00
Sergey Sharybin
f1c78ecc63 Scene RNA API: Main from globals goes away
Bye bye..
2017-11-03 16:15:49 +01:00
Sergey Sharybin
f24103d50a Depsgraph: Use explicit depsgraph in object add 2017-11-03 15:46:12 +01:00
Sergey Sharybin
0ba0993f18 Depsgraph: Port more areas to direct depsgraph API
This is a lots of changes, but they are boiling down to a simple API
changes where we are no longer relying on implicit usage of scene's
depsgraph and pass depsgraph explicitly.

There should be no user measurable difference, render_layer* tests
are also passing.
2017-11-03 14:36:49 +01:00
Sergey Sharybin
95ccaed9e6 Depsgraph: Use explicit graph API in transform code 2017-11-03 14:05:49 +01:00
Sergey Sharybin
57ec215677 Depsgraph: Add utility function to tag ID for update within a specific graph 2017-11-03 12:10:04 +01:00
Sergey Sharybin
e72dfee66f Depsgraph: Use explicit depsgraph in alembic module 2017-11-03 12:02:39 +01:00
Campbell Barton
3a7a7ed03b Merge branch 'master' into blender2.8 2017-11-03 21:22:27 +11:00
Campbell Barton
cd4f925f56 Merge branch 'master' into blender2.8 2017-11-03 20:59:15 +11:00
Campbell Barton
2a87bd8995 Cleanup: split interface_regions.c
Each region type is quite separate and file was getting too big.
2017-11-03 20:57:09 +11:00
Campbell Barton
d19d094ca9 Fix incorrect allocation size 2017-11-03 20:52:04 +11:00
Jens Verwiebe
fbb9b70484 Fix Blenderplayer (tm) 2017-11-03 00:39:50 +01:00
Sergey Sharybin
1555cf758f Freestyle: Fix access freed memory when freeing fresstyle bmain
Some of the uninitializaiton code was leaving bases pointing freed memory.
2017-11-02 17:58:59 +01:00
Sergey Sharybin
e0a6582b40 Fix iterator usage from C++ code
Old code was not supported by GCC, see some details and progress

  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55606
2017-11-02 17:58:59 +01:00
Sergey Sharybin
d967a83f49 Freestyle: Keep lines on manageable complexity
Two level;s of casts in a single line, c'mon.
2017-11-02 17:58:59 +01:00
Brecht Van Lommel
50c129760d Fix Cycles showing empty tiles while they are being denoised. 2017-11-02 15:23:55 +01:00
Campbell Barton
c1da6c9d7d Merge branch 'master' into blender2.8 2017-11-03 01:16:10 +11:00