4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 25 Aug 2017 12:22:50 +0000 (22:22 +1000)]
Merge branch 'master' into blender2.8

4 years agoWM: ensure 3D view theme is used in select-loop
Campbell Barton [Fri, 25 Aug 2017 12:10:27 +0000 (22:10 +1000)]
WM: ensure 3D view theme is used in select-loop

Yet another case where theme could be used uninitialized.

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 25 Aug 2017 10:45:16 +0000 (20:45 +1000)]
Merge branch 'master' into blender2.8

4 years agoWM: initialize WM and deps before handling events
Campbell Barton [Fri, 25 Aug 2017 10:26:52 +0000 (20:26 +1000)]
WM: initialize WM and deps before handling events

This avoids obscure bugs where operators could run from
events that happen before the UI and depsgraph have been initialized.

See: D2809 for details.

4 years agoEevee: Fix generated coordinates when no texture coordinates connected
Dalai Felinto [Fri, 25 Aug 2017 09:25:53 +0000 (11:25 +0200)]
Eevee: Fix generated coordinates when no texture coordinates connected

Orco should behave the same if it comes from unconnected vec inputs, or
from the Texture Coordinate -> Generated node output.

Fixup for 11e7e0769a4c.

This is related to T52528. The coordinates are still different between
Eevee and Cycles, but at least it behaves consistent within itself.

In fact the shader should now be correct, but the orco attributes we are
passing the shader seems to be where the problem is. But it's to be
tackled separately.

4 years agoThis copyright text (copied to binary distros) had a confusing statement about
Ton Roosendaal [Fri, 25 Aug 2017 09:11:19 +0000 (11:11 +0200)]
This copyright text (copied to binary distros) had a confusing statement about
scripts being "Artwork" which is your sole property and free to license.

I've removed the reference to scripts in this text.

This was from 2002! With our Python scripts becoming part of how Blender runs,
such scripts now are officially required to be compliant with GNU GPL.

For more information; check the FAQ or consult

4 years agoFix manipulator remove tag, it cleared all groups
Campbell Barton [Fri, 25 Aug 2017 05:19:30 +0000 (15:19 +1000)]
Fix manipulator remove tag, it cleared all groups

4 years agoManipulator: zero grab offset w/o target property
Campbell Barton [Fri, 25 Aug 2017 05:13:11 +0000 (15:13 +1000)]
Manipulator: zero grab offset w/o target property

Some manipulators are used like on-screen buttons,
in this case it doesn't make sense to keep track of their state,
so zero the offset when its unused.

Needed for lamp-target manipulator.

4 years agoCorrect error in recent use of PyC_Long_*
Campbell Barton [Thu, 24 Aug 2017 16:09:23 +0000 (02:09 +1000)]
Correct error in recent use of PyC_Long_*

Regression in 46cf33bf0

4 years agoFix crash handling manipulator events before drawing
Campbell Barton [Thu, 24 Aug 2017 14:03:45 +0000 (00:03 +1000)]
Fix crash handling manipulator events before drawing

4 years agoDepsgraph: Fix crash editing mesh in edit mode
Sergey Sharybin [Thu, 24 Aug 2017 14:01:08 +0000 (16:01 +0200)]
Depsgraph: Fix crash editing mesh in edit mode

4 years agoDepsgraph: Cleanup typo
Sergey Sharybin [Thu, 24 Aug 2017 13:52:52 +0000 (15:52 +0200)]
Depsgraph: Cleanup typo

4 years agoFix error using wrong theme settings w/ depth draw
Campbell Barton [Thu, 24 Aug 2017 13:19:27 +0000 (23:19 +1000)]
Fix error using wrong theme settings w/ depth draw

Clicks events before first draw would assert,
unlikely to cause user visible errors but
would assert in UI_ThemeGetColorPtr.

4 years agoFix T51907: New Depsgraph - Camera constraint is not evaluated properly
Sergey Sharybin [Thu, 24 Aug 2017 12:35:48 +0000 (14:35 +0200)]
Fix T51907: New Depsgraph - Camera constraint is not evaluated properly

This is more a workaround for until we've got proper visibility flush, which
will likely happen in blender2.8 branch.

4 years agoCycles: FIx issue with -0 being considered a non-finite value
Sergey Sharybin [Thu, 24 Aug 2017 12:32:56 +0000 (14:32 +0200)]
Cycles: FIx issue with -0 being considered a non-finite value

4 years agoMerge remote-tracking branch 'origin/master' into blender2.8
Dalai Felinto [Thu, 24 Aug 2017 08:41:59 +0000 (10:41 +0200)]
Merge remote-tracking branch 'origin/master' into blender2.8

4 years agoCycles Bake: Fix overflow when using hundreds of images
Dalai Felinto [Thu, 24 Aug 2017 08:34:50 +0000 (10:34 +0200)]
Cycles Bake: Fix overflow when using hundreds of images

We have a hardcored limit of 1000 images to be baked.
However anything anove 100 would be leading to overflow in the code.

Caught by warning from builder bot (my compiler doesn't even complain
about this, but it should).

4 years agoManipulator: modal callback can now cancel & pass events
Campbell Barton [Thu, 24 Aug 2017 07:04:28 +0000 (17:04 +1000)]
Manipulator: modal callback can now cancel & pass events

Re-use operator return flags for manipulator modal & invoke,
this means manipulators can allow navigation or other events to be
handled as they run - see T52499

4 years agoManipulator: remove unused event hack
Campbell Barton [Thu, 24 Aug 2017 02:02:08 +0000 (12:02 +1000)]
Manipulator: remove unused event hack

4 years agoFix Cycles CUDA transparent shadow error after recent fix in c22b52c.
Brecht Van Lommel [Thu, 24 Aug 2017 01:33:33 +0000 (03:33 +0200)]
Fix Cycles CUDA transparent shadow error after recent fix in c22b52c.

Fishy cat benchmark was rendering with wrong shadows. Cause is unclear,
adding printf or rearranging code seems to avoid this issue, possibly a
compiler bug. This reverts the fix and solves the OSL bug elsewhere.

4 years agoCode cleanup: remove shader context.
Brecht Van Lommel [Tue, 22 Aug 2017 13:00:52 +0000 (15:00 +0200)]
Code cleanup: remove shader context.

This was needed when we accessed OSL closure memory after shader evaluation,
which could get overwritten by another shader evaluation. But all closures
are immediatley converted to ShaderClosure now, so no longer needed.

4 years agoDocs: rename var and comment how it's used
Campbell Barton [Wed, 23 Aug 2017 16:05:11 +0000 (02:05 +1000)]
Docs: rename var and comment how it's used

switch_from_camera wasn't right since it was used for auto-perspective.

4 years agoFix blenderplayer (tm)
Dalai Felinto [Wed, 23 Aug 2017 15:55:50 +0000 (17:55 +0200)]
Fix blenderplayer (tm)

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 23 Aug 2017 15:07:09 +0000 (01:07 +1000)]
Merge branch 'master' into blender2.8

4 years agoCorrection to last fix
Campbell Barton [Wed, 23 Aug 2017 15:05:20 +0000 (01:05 +1000)]
Correction to last fix

4 years agoFix T52490: NDOF orbit doesn't lock in ortho view
Campbell Barton [Wed, 23 Aug 2017 14:47:47 +0000 (00:47 +1000)]
Fix T52490: NDOF orbit doesn't lock in ortho view

Regression in af3f7db caused by own fix for T51324

4 years agoFix bplayer (c)
Bastien Montagne [Wed, 23 Aug 2017 14:43:10 +0000 (16:43 +0200)]
Fix bplayer (c)

4 years agoFix T52396: Crash loading template w/o config dir
Campbell Barton [Wed, 23 Aug 2017 12:06:42 +0000 (22:06 +1000)]
Fix T52396: Crash loading template w/o config dir

4 years agoCycles: Add maximum depth stat to bvh builder
Mai Lavelle [Wed, 23 Aug 2017 04:40:35 +0000 (00:40 -0400)]
Cycles: Add maximum depth stat to bvh builder

4 years agoFix implementation of atomic update max and move to a central location
Mai Lavelle [Wed, 23 Aug 2017 04:40:04 +0000 (00:40 -0400)]
Fix implementation of atomic update max and move to a central location

While unlikely to have had any serious effects because of limited use, the
previous implementation was not actually atomic due to a data race and
incorrectly coded CAS loop. We also had duplicates of this code in a few
places, it's now been moved to a single location with all other atomic

4 years agoFix T51805: Overlapping volumes renders incorrect on AMD GPU
Sergey Sharybin [Wed, 23 Aug 2017 10:32:48 +0000 (12:32 +0200)]
Fix T51805: Overlapping volumes renders incorrect on AMD GPU

We need to make sure we can store all volume closures for all objects in volume
stack. This is a bit tricky to detect what would be the "nestness" level of
volumes so for now use maximum possible stack depth. Might cause some slowdown,
but better to give reliable render output than to fail quickly.

Should be safe for 2.79 after extra eyes.

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 23 Aug 2017 10:16:47 +0000 (20:16 +1000)]
Merge branch 'master' into blender2.8

4 years agoCleanup: mark VA_NARGS_COUNT as public
Campbell Barton [Wed, 23 Aug 2017 10:04:26 +0000 (20:04 +1000)]
Cleanup: mark VA_NARGS_COUNT as public

Was already used in two other headers, remove underscore prefix.

4 years agoCleanup: move variadic defines to their own header
Campbell Barton [Wed, 23 Aug 2017 10:00:48 +0000 (20:00 +1000)]
Cleanup: move variadic defines to their own header

So we can use in headers without pulling in many other defines.

4 years agoFix T52218: Missing update when reconnecting node
Sergey Sharybin [Wed, 23 Aug 2017 09:47:47 +0000 (11:47 +0200)]
Fix T52218: Missing update when reconnecting node

If node was connected to output, we tag tree for update no matter where
the node was re-plugged to.

Should be safe for 2.79.

4 years agoRNA: use string join functions as with operators
Campbell Barton [Wed, 23 Aug 2017 09:40:48 +0000 (19:40 +1000)]
RNA: use string join functions as with operators

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 23 Aug 2017 09:21:52 +0000 (19:21 +1000)]
Merge branch 'master' into blender2.8

4 years agoRNA: use string-join to simplify operator register
Campbell Barton [Wed, 23 Aug 2017 08:17:42 +0000 (18:17 +1000)]
RNA: use string-join to simplify operator register

Also sanity check macro-operator ID's.

4 years agoBLI_string_utils: string joining utility functions
Campbell Barton [Wed, 23 Aug 2017 08:16:46 +0000 (18:16 +1000)]
BLI_string_utils: string joining utility functions

Includes a version that takes a separator and macros for convenience.

4 years agoPyAPI: avoid instantiating args twice in macro
Campbell Barton [Wed, 23 Aug 2017 08:44:58 +0000 (18:44 +1000)]
PyAPI: avoid instantiating args twice in macro

Would cause problems if args included function calls.

4 years agoRNA: check for duplicate manipulator names
Campbell Barton [Wed, 23 Aug 2017 06:22:48 +0000 (16:22 +1000)]
RNA: check for duplicate manipulator names

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Wed, 23 Aug 2017 06:10:45 +0000 (16:10 +1000)]
Merge branch 'master' into blender2.8

4 years agoCleanup: remove space from filenames
Campbell Barton [Wed, 23 Aug 2017 05:50:44 +0000 (15:50 +1000)]
Cleanup: remove space from filenames

4 years agoTests: fix incorrect check for hidden dir
Campbell Barton [Wed, 23 Aug 2017 05:36:39 +0000 (15:36 +1000)]
Tests: fix incorrect check for hidden dir

Copy-pasted mistake in tests and tools.

4 years agoRNA: report error on struct naming collision
Campbell Barton [Wed, 23 Aug 2017 04:59:14 +0000 (14:59 +1000)]
RNA: report error on struct naming collision

Fixes T52463, error instead of crash.

4 years agoRNA: keep structs_map valid w/ ID duplicate & free
Campbell Barton [Wed, 23 Aug 2017 04:14:55 +0000 (14:14 +1000)]
RNA: keep structs_map valid w/ ID duplicate & free

4 years agoGHash: BLI_ghash_reinsert_key utility function
Campbell Barton [Wed, 23 Aug 2017 02:43:05 +0000 (12:43 +1000)]
GHash: BLI_ghash_reinsert_key utility function

Useful when ghash keys are reallocated.

4 years agoFix T52466: Silence search for button_context menu type.
Thomas Beck [Tue, 22 Aug 2017 19:33:58 +0000 (21:33 +0200)]
Fix T52466: Silence search for button_context menu type.

We were showing "search for unknown menutype WM_MT_button_context" messages in terminal which were not helpful for users, so now they are disabled.

To be backported to 2.79

4 years agoFix error in PointerProperty argument list
Campbell Barton [Tue, 22 Aug 2017 16:14:33 +0000 (02:14 +1000)]
Fix error in PointerProperty argument list

Regression in a7b3047

4 years agoFix T52483: Fill is incorrect for interpolated strokes
Antonio Vazquez [Tue, 22 Aug 2017 15:42:53 +0000 (17:42 +0200)]
Fix T52483: Fill is incorrect for interpolated strokes

The recalc flag must be enabled for new interpolated strokes.

4 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Tue, 22 Aug 2017 14:31:33 +0000 (16:31 +0200)]
Merge branch 'master' into blender2.8

4 years agoFix T52209: New Depsgraph - animated follow curve constraint sometimes freaks out...
Sergey Sharybin [Tue, 22 Aug 2017 14:27:33 +0000 (16:27 +0200)]
Fix T52209: New Depsgraph - animated follow curve constraint sometimes freaks out when the curve has a parent

4 years agoDepsgraph: Cleanup, make code friendlier to be edited in columns
Sergey Sharybin [Tue, 22 Aug 2017 14:24:58 +0000 (16:24 +0200)]
Depsgraph: Cleanup, make code friendlier to be edited in columns

4 years agoDepsgraph: Remove placeholder for path evaluation
Sergey Sharybin [Tue, 22 Aug 2017 14:10:52 +0000 (16:10 +0200)]
Depsgraph: Remove placeholder for path evaluation

Wasn't used in years, if it really needs to be dedicated operation it needs to
be revisited anyway.

4 years agoFix threading conflict when doing Cycles background render
Sergey Sharybin [Tue, 22 Aug 2017 13:50:05 +0000 (15:50 +0200)]
Fix threading conflict when doing Cycles background render

It is possible to have same image used multiple times at different frames,
which means we can not free it's buffers without any guard. From quick tests
this seems to be doing what it is supposed to.

Need more testing and port this to 2.79.

4 years agoGPUTexture: Remove Warning.
Clément Foucault [Tue, 22 Aug 2017 12:41:19 +0000 (14:41 +0200)]
GPUTexture: Remove Warning.

4 years agoGL_TEXTURE_2D_ARRAY wasn't handled in GPU_texture_update
Dalai Felinto [Tue, 22 Aug 2017 12:33:57 +0000 (14:33 +0200)]
GL_TEXTURE_2D_ARRAY wasn't handled in GPU_texture_update

Although the problem was exposed in 9457715d9a6f, the problem was in the
original code that was copied over. To have:

} else { /* EXPECTED_VALUE */

Without an BLI_assert(value == EXPECTED_VALUE); is asking for troubles.
Yet another reason to favour switch statements with:

    BLI_assert(!"value not implemented or supported");

Instead of chained if/else if/else /* expected_value */.

4 years agoadd GPU_glew header
Campbell Barton [Tue, 22 Aug 2017 12:22:21 +0000 (22:22 +1000)]
add GPU_glew header

4 years agoFix T52053: Sculpt missing update w/ clay engine
Campbell Barton [Tue, 22 Aug 2017 12:07:38 +0000 (22:07 +1000)]
Fix T52053: Sculpt missing update w/ clay engine

Leaving sculpt mode wasn't updating the mesh because the update
flushed from the depsgraph ignored edits to vertex location.

4 years agoCleanup: naming for mesh dirty flags
Campbell Barton [Tue, 22 Aug 2017 12:04:40 +0000 (22:04 +1000)]
Cleanup: naming for mesh dirty flags


Where 'MAYBE_ALL' checks to see if the mesh has changed.
This is clearer that `BKE_MESH_BATCH_DIRTY_ALL` is dirty and
going to be updated without any guess-work.

4 years agoFix T52454: Crash in DEG_graph_on_visible_update when activating scene layer
Sergey Sharybin [Tue, 22 Aug 2017 10:52:28 +0000 (12:52 +0200)]
Fix T52454: Crash in DEG_graph_on_visible_update when activating scene layer

Most likely needs in 2.79 final release.

4 years agoGPU Texture: Use switch instead of if/else
Dalai Felinto [Tue, 22 Aug 2017 10:30:03 +0000 (12:30 +0200)]
GPU Texture: Use switch instead of if/else

4 years agoManipulator: template for Python manipulator
Campbell Barton [Tue, 22 Aug 2017 10:10:53 +0000 (20:10 +1000)]
Manipulator: template for Python manipulator

This is an example of a manipulator that defines it's own geometry.

4 years agoManipulator: Add API target_get/set/range wrappers
Campbell Barton [Tue, 22 Aug 2017 08:55:19 +0000 (18:55 +1000)]
Manipulator: Add API target_get/set/range wrappers

Allows Python manipulators access the values of target properties
needed for Python to make use of the general target property interface.

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 22 Aug 2017 08:18:38 +0000 (18:18 +1000)]
Merge branch 'master' into blender2.8

4 years agoPyAPI: Minor gawain corrections
Campbell Barton [Tue, 22 Aug 2017 04:53:20 +0000 (14:53 +1000)]
PyAPI: Minor gawain corrections

4 years agoEevee: Fix T52486
Clément Foucault [Tue, 22 Aug 2017 08:22:11 +0000 (10:22 +0200)]
Eevee: Fix T52486

For that introduce an update function for textures.

4 years agoPyAPI: replace PyC_FromArray with typed functions
Campbell Barton [Tue, 22 Aug 2017 08:02:58 +0000 (18:02 +1000)]
PyAPI: replace PyC_FromArray with typed functions

This was meant to be generic but introduced possible type errors
and unnecessary complication.
Replace with typed PyC_Tuple_PackArray_* functions.

Also add PyC_Tuple_Pack_* macro which replaces some uses of
Py_BuildValue, with the advantage of not having to parse a string.

4 years agoFix panorama render crash with split kernel, due to incorrect buffer pointer.
Brecht Van Lommel [Mon, 21 Aug 2017 20:50:24 +0000 (22:50 +0200)]
Fix panorama render crash with split kernel, due to incorrect buffer pointer.

Also some refactoring to clarify variable usage scope.

4 years agoCycles: reorganize Performance panel layout, move viewport BVH type to debug.
Brecht Van Lommel [Mon, 21 Aug 2017 13:09:03 +0000 (15:09 +0200)]
Cycles: reorganize Performance panel layout, move viewport BVH type to debug.

4 years agoFix for recent fix in fc890cd, cstdint is c++11 only so don't use it yet.
Brecht Van Lommel [Mon, 21 Aug 2017 17:03:32 +0000 (19:03 +0200)]
Fix for recent fix in fc890cd, cstdint is c++11 only so don't use it yet.

4 years agoCleanup: rename manipulator API functions
Campbell Barton [Mon, 21 Aug 2017 16:06:46 +0000 (02:06 +1000)]
Cleanup: rename manipulator API functions

- WM_manipulatorgrouptype_remove- > free
- WM_manipulator_group -> WM_manipulator_group_type

Naming here is still a bit confusing,
now at least free/remove are differentiated.

4 years agoFix crash re-registering manipulators
Campbell Barton [Mon, 21 Aug 2017 15:55:11 +0000 (01:55 +1000)]
Fix crash re-registering manipulators

Duplicating strings caused problems using strings in
both struct hash and manipulator group types own hash.

4 years agoFix T52479: Regression: Motion Tracking no longer works
Sergey Sharybin [Mon, 21 Aug 2017 15:23:42 +0000 (17:23 +0200)]
Fix T52479: Regression: Motion Tracking no longer works

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 21 Aug 2017 05:41:03 +0000 (15:41 +1000)]
Merge branch 'master' into blender2.8

4 years agoCleanup: uneven/double indentation
Campbell Barton [Mon, 21 Aug 2017 05:37:38 +0000 (15:37 +1000)]
Cleanup: uneven/double indentation

4 years agoModify menu from last commit
Campbell Barton [Mon, 21 Aug 2017 05:24:40 +0000 (15:24 +1000)]
Modify menu from last commit

Also correct tool-tip.

4 years agoFix T52434: Restore mesh center of mass calculation
Campbell Barton [Mon, 21 Aug 2017 05:06:07 +0000 (15:06 +1000)]
Fix T52434: Restore mesh center of mass calculation

The new method while improved for solid objects
doesn't work for non-manifold meshes, keep both.

4 years agoEevee: Offset the for each AA sample.
Clément Foucault [Sun, 20 Aug 2017 23:38:14 +0000 (01:38 +0200)]
Eevee: Offset the for each AA sample.

This means we have less overall noise for rendered image.
SSR, AO, and Refraction are affected by this change.

SSR still exhibit artifacts because the reconstruction pattern needs to change every frame (TODO).

4 years agoCycles: attempt to recover from crashing CUDA/OpenCL drivers on Windows.
Brecht Van Lommel [Sun, 20 Aug 2017 20:44:17 +0000 (22:44 +0200)]
Cycles: attempt to recover from crashing CUDA/OpenCL drivers on Windows.

I don't know if this will actually work, needs testing. Ref T52064.

4 years agoFix Windows build error after recent Python changes in a10a7f42.
Brecht Van Lommel [Sun, 20 Aug 2017 21:12:59 +0000 (23:12 +0200)]
Fix Windows build error after recent Python changes in a10a7f42.

4 years agoFix T52473: blender internal Fresnel and Layer Weight only work with linked normal.
Brecht Van Lommel [Sun, 20 Aug 2017 22:05:07 +0000 (00:05 +0200)]
Fix T52473: blender internal Fresnel and Layer Weight only work with linked normal.

Please backport this to 2.79.

4 years agoRevert "Cycles: remove square samples option."
Brecht Van Lommel [Sun, 20 Aug 2017 21:46:05 +0000 (23:46 +0200)]
Revert "Cycles: remove square samples option."

This reverts commit 757c24b6bceaeeae95f743b72b6a7040880a0ebf.

We'll revisit this when doing deeper sampling changes.

4 years agoFix T52470: cycles OpenCL hair rendering not working after recent changes.
Brecht Van Lommel [Sun, 20 Aug 2017 21:16:25 +0000 (23:16 +0200)]
Fix T52470: cycles OpenCL hair rendering not working after recent changes.

4 years agoCleanup: move gawain header out of GPU_matrix
Campbell Barton [Sun, 20 Aug 2017 15:39:03 +0000 (01:39 +1000)]
Cleanup: move gawain header out of GPU_matrix

Avoids requiring glew headers in Python API.

4 years agoCode cleanup: deduplicate some bsdf node methods.
Brecht Van Lommel [Sun, 20 Aug 2017 15:36:16 +0000 (17:36 +0200)]
Code cleanup: deduplicate some bsdf node methods.

4 years agoFix T52439: Crash after adjusting lenght of hair particles.
Bastien Montagne [Sun, 20 Aug 2017 15:16:58 +0000 (17:16 +0200)]
Fix T52439: Crash after adjusting lenght of hair particles.

Regression from rBfed853ea78221, calling this inside thread worker was
not really good idea anyway, and we already have all the code we need in
pre-threading init function, was just disabled for vertex particles

To be backported to 2.79.

4 years agoCMake version bump: 3.5
Jörg Müller [Sun, 20 Aug 2017 15:01:27 +0000 (17:01 +0200)]
CMake version bump: 3.5

4 years agoCycles: support baking normals plugged into BSDFs, averaged with closure weight.
Brecht Van Lommel [Sun, 20 Aug 2017 01:25:13 +0000 (03:25 +0200)]
Cycles: support baking normals plugged into BSDFs, averaged with closure weight.

4 years agoManipulator: helper API for drawing custom shapes
Campbell Barton [Sun, 20 Aug 2017 13:39:55 +0000 (23:39 +1000)]
Manipulator: helper API for drawing custom shapes

This exposes 2 methods for manipulators:
- new_custom_shape
- draw_custom_shape

This can be used for script authors to create and re-use shapes
without dealing with lower level API's.

4 years agoPyAPI: add (initial module)
Campbell Barton [Sun, 20 Aug 2017 13:01:46 +0000 (23:01 +1000)]
PyAPI: add (initial module)

This only exposes load_id, it's needed for Python manipulator drawing.

4 years agoManipulator: add read-only matrix_world
Campbell Barton [Sun, 20 Aug 2017 12:44:22 +0000 (22:44 +1000)]
Manipulator: add read-only matrix_world

4 years agoCode cleanup: remove copy of shader graph for bump, no longer needed.
Brecht Van Lommel [Sun, 20 Aug 2017 12:02:16 +0000 (14:02 +0200)]
Code cleanup: remove copy of shader graph for bump, no longer needed.

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 20 Aug 2017 11:16:08 +0000 (21:16 +1000)]
Merge branch 'master' into blender2.8

4 years agoReplace BLI_INLINE w/ Py_LOCAL_INLINE for Python
Campbell Barton [Sun, 20 Aug 2017 11:14:33 +0000 (21:14 +1000)]
Replace BLI_INLINE w/ Py_LOCAL_INLINE for Python

Recent inclusion caused build error with the BGE.

4 years agoPyAPI: gpu.matrix.push_pop context manager
Campbell Barton [Sun, 20 Aug 2017 09:31:59 +0000 (19:31 +1000)]
PyAPI: gpu.matrix.push_pop context manager

Avoid un-balanced push/pop usage (which can interfere with Blender's
internal state) using a context manager.

4 years agoFix bpy library load: invalid function signature
Campbell Barton [Sun, 20 Aug 2017 09:04:16 +0000 (19:04 +1000)]
Fix bpy library load: invalid function signature

4 years agoPyAPI: Add exceptions to stack push/pop
Campbell Barton [Sun, 20 Aug 2017 07:23:49 +0000 (17:23 +1000)]
PyAPI: Add exceptions to stack push/pop

Raise exception when stack limits are reached.

4 years agoPyAPI: use PyC_Long_As... for gawain
Campbell Barton [Sun, 20 Aug 2017 05:58:37 +0000 (15:58 +1000)]
PyAPI: use PyC_Long_As... for gawain

Avoids inline overflow checks.

4 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 20 Aug 2017 05:50:15 +0000 (15:50 +1000)]
Merge branch 'master' into blender2.8