Jeroen Bakker
3937e8fbc3
UI: non editable template_icon_views are rendered as label
...
This is also a way to render an large preview icon without the selection
control. This is used by the studiolights in the userprefs that only
displays the preview of the light.
2018-06-12 08:45:38 +02:00
Campbell Barton
a2027c6587
UI: replace ui_draw_search_back w/ general code
...
Useful for drawing any kind of region-background.
2018-06-12 08:14:13 +02:00
Campbell Barton
35da1afa09
Cleanup: remove unused context args
2018-06-12 07:59:27 +02:00
Brecht Van Lommel
1dc93f90a0
Cleanup: remove image->bindcode, always wrap in GPUTexture.
...
This simplifies code, and will hopefully make UDIM usage of GPUTexture
a little easier.
2018-06-11 23:24:04 +02:00
Brecht Van Lommel
1d111cd046
Revert "Cleanup: remove image->bindcode, always wrap in GPUTexture."
...
This reverts commit 8242a5bc85 . This isn't
quite ready to use yet.
2018-06-11 22:35:09 +02:00
Brecht Van Lommel
8242a5bc85
Cleanup: remove image->bindcode, always wrap in GPUTexture.
2018-06-11 22:30:59 +02:00
Brecht Van Lommel
0054dff67e
Fix part of T55439: don't add indirectly linked objects to the scene on link.
2018-06-11 21:51:21 +02:00
Brecht Van Lommel
3816502b7c
Drivers: ensure Python expressions are cached with copy-on-write.
...
Store the compiled expressions on the original driver.
Ref T55442.
2018-06-11 21:34:21 +02:00
Brecht Van Lommel
2bbe0c4ef4
Cleanup: fix compiler warnings.
2018-06-11 21:21:41 +02:00
Brecht Van Lommel
76c7c66b02
Fix accidental addons submodule change in previous commit.
2018-06-11 21:13:02 +02:00
Edmund Kapusniak
c08716d3ee
Fix crash with OpenGL rendering in multiple threads on macOS.
...
On macOS we must always go through BLI_thread_local_get/set().
Differential Revision: https://developer.blender.org/D3470
2018-06-11 21:10:24 +02:00
Brecht Van Lommel
9520fc0ff7
Pose: optimize pose rebuild for copy-on-write.
...
Ref T55442.
2018-06-11 20:48:18 +02:00
Campbell Barton
691471fe22
Cleanup: add simplified panel callbacks
2018-06-11 19:31:56 +02:00
Bastien Montagne
d4b4504260
Improve/partially fix overriding of Object material pointers.
...
Basic workflow shall now work, still lots to do in the UI (ID template
needs some love to reflect overriden status ;) ).
2018-06-11 19:29:15 +02:00
fclem
aca403c819
GHOST: Fix uninitialized values.
2018-06-11 17:07:52 +02:00
Bastien Montagne
4ffd153dbf
Fix crash when doing Sculpt->Edit->Sculpt switch.
...
We actually get fully rid of BKE_object_free_derived_mesh_caches usages,
now always using BKE_object_free_derived_caches (bad name, btw, should
be 'evaluated_caches ;) )...
2018-06-11 18:58:21 +02:00
Campbell Barton
3df809958b
WM: use layout/draw callbacks for buttons space
2018-06-11 18:39:46 +02:00
Campbell Barton
3e1f83a1dc
WM: split panel drawing into layout and draw
...
This matches changes made to the header.
2018-06-11 18:39:46 +02:00
Clément Foucault
1f1ca74476
Outlines: Make Xray outlines 2px thick instead of 3px
2018-06-11 18:04:00 +02:00
Clément Foucault
638590078c
Outlines: Make outlines in xray mode not occluded.
...
This is visually too distracting (flickering). Until we have a better
solution, just disable occlusion fading.
2018-06-11 18:04:00 +02:00
Bastien Montagne
c31bc465ea
Revert previous commit and do proper fix for missing typeinfo in nodes.
2018-06-11 17:39:39 +02:00
Clément Foucault
7529690df3
GHOST: GLX: Remove XInitThreads
...
This was needed because we were sharing opengl contexts across multiple
threads. With the recent refactor this should be no longer needed.
2018-06-11 17:23:06 +02:00
Bastien Montagne
faf7453b45
Fix crash in loading/applying static overrides of some nodal material.
...
No real idea why node's typeinfo is NULL here... but think we do not
care much in that case, so just adding some NULL checks for now.
2018-06-11 17:12:47 +02:00
Brecht Van Lommel
05111d79d0
Cleanup: remove unused DAG_EVAL_PREVIEW mode.
2018-06-11 17:06:28 +02:00
Brecht Van Lommel
2abb156b9f
Cleanup: remove object.is_visible.
...
Depsgraph already iterates over visible objects, and since this was only
valid for objects evaluated with the depsgraph it was confusing.
2018-06-11 17:06:28 +02:00
Brecht Van Lommel
73b9531dcf
Fix incorrect object selection test in outliner and rigid body.
2018-06-11 17:06:28 +02:00
Brecht Van Lommel
0461f45e5e
Fix T55436: crash with point density and shader tweaking.
...
With copy-on-write we can no longer assumes the point density data is
available after Cycles synchronization with Blender data is done. So
force it to be loaded earlier, even if it's not great for interactivity.
2018-06-11 17:06:28 +02:00
Brecht Van Lommel
84692844a3
Fix merge error in 908b696, removed files were accidentally added back.
2018-06-11 17:06:28 +02:00
Clément Foucault
27b6734022
GHOST: Fix uninitialized var
...
Was causing crash on startup.
2018-06-11 17:04:59 +02:00
Campbell Barton
a753c6e11a
UI: split left/right header buttons
...
- Added flexible separators to
Clip, Graph, Dopesheet, Image, Node, Timeline, 3D View.
- Added graying out for Proportional Editing
menus to avoid popping when right-aligned.
- Slightly re-arranged some controls,
so they can be on correct side of the separators.
Patch by @billreynish
2018-06-11 17:01:10 +02:00
Joshua Leung
17ee4836ab
Fix: Remove UI_BLOCK_MOVEMOUSE_QUIT from popovers
...
This was causing driver editing popovers to just keep disappearing
whenever you accidentally moved the mouse away, making the popovers
there nearly useless.
After testing with the other popovers we have in other places, I don't
really see why we needed this flag enabled in the first place. You can
still switch between popovers in the topbar by mousing over the others,
and if you want to dismiss without clicking to escape, you can go over a
standard menu instead OR just move back towards the button that spawned it.
Let's just test this out for a while and see how it goes. Maybe we don't
need a more invasive solution here...
2018-06-12 02:49:12 +12:00
Bastien Montagne
204c167c72
Merge branch 'master' into blender2.8
...
Conflicts:
source/blender/blenkernel/BKE_mesh.h
source/blender/blenkernel/intern/mesh_convert.c
source/blender/editors/interface/interface_eyedropper_color.c
source/blender/editors/object/object_add.c
source/blender/editors/space_image/image_ops.c
source/blender/makesrna/intern/rna_image.c
source/blender/windowmanager/intern/wm_draw.c
2018-06-11 16:02:46 +02:00
Jeroen Bakker
9e439197ed
Workbench: API Changes
...
- merged matcap and studioLight api
2018-06-11 15:54:24 +02:00
Bastien Montagne
78a8d3685b
Cleanup: remove moar ugly G.main usages...
...
BKE_image was an ugly nest, could fix all but the ones from compositor,
so moved ugly G.main there, at least we know where the Evil is that way ;)
2018-06-11 15:40:37 +02:00
Dalai Felinto
9b39a5142f
Fix T55440: Pose Mode Crash
2018-06-11 15:29:13 +02:00
fclem
800c3c5ca5
GHOST: WGL: Delay context initialization for offscreen contexts.
...
Same as 128926a41b but for windows.
2018-06-11 13:06:54 +02:00
Sergey Sharybin
b763c34e80
Cycles: Cleanup, silence strict compiler warning
...
There is one legit place in the code where memcpy was used as an
optimization trick. Was needed for older version of GCC, but now
it should be re-evaluated and checked if it still helps to have
that trick.
In other places it's somewhat lazy programming to zero out all
object members. That is absolutely unsafe, at the moment when
less trivial class is used as a member in that object things
will break.
Other cases were using memcpy into an object which comes from
an external library. We don't control that object, and we can
not guarantee it will always be safe for such memory tricks
and debugging bugs caused by such low level access is far fun.
Ideally we need to use more proper C++, but needs to be done with
big care, including benchmarks of each change, For now do
annoying but simple cast to void*.
2018-06-11 13:02:10 +02:00
Sergey Sharybin
a6e582164f
Libmv: Cleanup, make strict compiler more happy
...
In C++ it is not really safe to memcpy objects, and newer GCC will warn
about this. However, we don't use our vector for unsafe-to-memcpy objects,
so just explicitly silence that warning.
2018-06-11 13:02:10 +02:00
fclem
5ad7bda45f
Render: Fix build problem with missing GL/glew.h
2018-06-11 13:00:21 +02:00
Dalai Felinto
070830c62d
Fix separator element for headers with multiple directions
2018-06-11 14:54:04 +02:00
Dalai Felinto
d90fc119c2
UI: Separator spacer
...
This support layout.separator_spacer() to be used by headers as a way to
dynamically separate the ui buttons.
Right now no UI file is changed, though we can use this right away in the
timeline, and shortly after in the viewport header (moving settings from
the topbar to it).
Original design by William Reynish.
Review: Campbell Barton
D3468
2018-06-11 14:46:35 +02:00
Bastien Montagne
74051111eb
Merge branch 'master' into blender2.8
2018-06-11 14:44:03 +02:00
Bastien Montagne
160cb9a284
Merge branch 'master' into blender2.8
...
Conflicts:
intern/cycles/blender/blender_object.cpp
source/blender/alembic/intern/abc_exporter.cc
source/blender/alembic/intern/abc_mball.cc
source/blender/alembic/intern/abc_mball.h
source/blender/blenkernel/BKE_anim.h
source/blender/blenkernel/BKE_displist.h
source/blender/blenkernel/BKE_dynamicpaint.h
source/blender/blenkernel/BKE_group.h
source/blender/blenkernel/BKE_mball.h
source/blender/blenkernel/BKE_mball_tessellate.h
source/blender/blenkernel/BKE_object.h
source/blender/blenkernel/BKE_scene.h
source/blender/blenkernel/intern/anim.c
source/blender/blenkernel/intern/depsgraph.c
source/blender/blenkernel/intern/displist.c
source/blender/blenkernel/intern/dynamicpaint.c
source/blender/blenkernel/intern/group.c
source/blender/blenkernel/intern/mball.c
source/blender/blenkernel/intern/mball_tessellate.c
source/blender/blenkernel/intern/mesh_convert.c
source/blender/blenkernel/intern/object.c
source/blender/blenkernel/intern/object_dupli.c
source/blender/blenkernel/intern/object_update.c
source/blender/blenkernel/intern/pointcache.c
source/blender/blenkernel/intern/scene.c
source/blender/blenkernel/intern/smoke.c
source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
source/blender/depsgraph/intern/builder/deg_builder_relations.cc
source/blender/editors/include/ED_object.h
source/blender/editors/object/object_add.c
source/blender/editors/object/object_edit.c
source/blender/editors/object/object_modifier.c
source/blender/editors/physics/dynamicpaint_ops.c
source/blender/editors/sculpt_paint/paint_vertex.c
source/blender/editors/sculpt_paint/sculpt_uv.c
source/blender/editors/space_view3d/drawobject.c
source/blender/editors/space_view3d/view3d_draw.c
source/blender/editors/transform/transform_conversions.c
source/blender/editors/transform/transform_snap_object.c
source/blender/editors/util/ed_util.c
source/blender/gpu/intern/gpu_material.c
source/blender/makesrna/intern/rna_meta.c
source/blender/makesrna/intern/rna_object_api.c
source/blender/modifiers/intern/MOD_dynamicpaint.c
source/blenderplayer/bad_level_call_stubs/stubs.c
2018-06-11 14:39:38 +02:00
Clément Foucault
b7bf8b3757
Render: Create a separate gl context for rendering.
...
This should take care of all the threading stability issues some people
are reporting.
2018-06-11 13:55:02 +02:00
Clément Foucault
128926a41b
GHOST: Delay opengl context initialization
...
This way they can be init in their owner thread. Contexts should not be
shared accross threads. Once you make a context active on a thread it is
owned by the thread.
This commit only have the GLX backend updated but should not break orther
platform.
2018-06-11 13:55:02 +02:00
Clément Foucault
1463ec6896
DRW: Rename ogl_context to gl_context
...
We might not use opengl forever :)
2018-06-11 13:55:02 +02:00
Clément Foucault
228ba8475a
DRW: Add cache reset.
...
This is a temporary solution to the use of the shared cache.
Ideally this cache should be per gl drawing context.
2018-06-11 13:55:02 +02:00
Jeroen Bakker
0ec2e7ad53
Shading: Change icon of userpreference in Shading popover
2018-06-11 12:48:01 +02:00
Bastien Montagne
d0956e9cb3
Cleanup: Moar G.main removal of Hell.
...
This commit actually adds some G.main... but at much, much higher level
than the ones it removes, so should still be better ;)
2018-06-11 12:15:14 +02:00
Bastien Montagne
8055ed2741
Cleanup: remove some G.main usages...
2018-06-11 12:15:14 +02:00