Commit Graph

62272 Commits

Author SHA1 Message Date
Mike Erwin
ffabd037bb OpenSubdiv: disable TF on lower GL versions. Fixes T46794
My previous edit to this check was too lax.

OSD's shader for the Transform Feedback evaluator declares itself
#version 410 so disable the feature if user's GL < 4.1.
2015-12-06 18:02:06 -05:00
Thomas Dinges
a3d774e4c9 Cycles: Fold Value and RGB node as well.
This way, connecting Value or RGB node to e.g. a Math node will still allow folding.

Note: The same should be done for the ConvertNode, but I leave that for another day.
2015-12-06 23:47:38 +01:00
Thomas Dinges
c6be3fe997 Fix Scons after GLSL changes. 2015-12-06 23:09:17 +01:00
Bastien Montagne
8d09eecc50 Fix (unreported) Ocean modifier assuming all its faces are quads.
Would be true in most cases (and in particular with own generated geometry),
but in case one would be using original geometry this could have crashed badly.
2015-12-06 21:07:39 +01:00
Bastien Montagne
a78199332b Cleanup in main Ocean modifier code.
Note that I tried to parallelize the loops porting result of the simulation to the
DM data itself, but that ended up being 20% slower than non-threaded code!
2015-12-06 21:07:39 +01:00
Brecht Van Lommel
4aab21f9be OpenGL: rename simple shader to basic shader. 2015-12-06 19:35:15 +01:00
Brecht Van Lommel
cf921934b1 OpenGL: use simple shader for texture drawing in a few places.
Differential Revision: https://developer.blender.org/D1645
2015-12-06 19:35:15 +01:00
Brecht Van Lommel
147f7a1e86 OpenGL: isolate fixed function lighting in simple shader code.
Differential Revision: https://developer.blender.org/D1645
2015-12-06 19:35:15 +01:00
Brecht Van Lommel
42bff8bb1e OpenGL: use simple shader for armatures.
Differential Revision: https://developer.blender.org/D1645
2015-12-06 19:35:15 +01:00
Brecht Van Lommel
9821fe6dc2 OpenGL: move two sided lighting check into GPU material code.
Differential Revision: https://developer.blender.org/D1645
2015-12-06 19:35:15 +01:00
Brecht Van Lommel
82191b102f OpenGL: pass flag to indicate of drawMappedFaces needs to use normals.
Differential Revision: https://developer.blender.org/D1645
2015-12-06 19:35:15 +01:00
Bastien Montagne
1eed354e53 Switch Ocean modifier's geometry generation from OMP to BLI_task.
Compared to previous revision, this gives 20% speedup on the whole modifier evaluation!

Wondering a bit how improvement can be so impressive here, would have expected very
small increases given how simple is the code here... Maybe it's the fact we get rid
of many additional OMP threads (tests are done with ten Ocean mod evaluated in parallel)?
2015-12-06 18:59:20 +01:00
Bastien Montagne
e1698860ad Fix T46929: error exporting Key configuration. 2015-12-06 17:52:50 +01:00
Bastien Montagne
b36a0c44bb Switch from OMP to BLI_task in BKE's part of Ocean simulation.
Not much to say, gives about 8% to 9% speedup in ocean simulation.
2015-12-06 17:37:10 +01:00
Bastien Montagne
deec6ed901 install_deps.sh: Fix typos in scons instructions.
Luckily we'll soon get rid of that insane dual build system maintenance...

Anyway, thanks to Leo Koppel (lack) for the report and patch.
2015-12-06 12:04:23 +01:00
Campbell Barton
9964eed9ac PyAPI: add optional filter argument to KDTree.find 2015-12-06 21:35:32 +11:00
Campbell Barton
54b95c30ae BKI_kdtree: add a find that takes filter callback
Useful when we need to selectively ignore nodes.
2015-12-06 21:29:06 +11:00
Campbell Barton
ee719e8816 Cleanup: formatting (PyArg_ParseTuple) 2015-12-06 16:19:45 +11:00
Campbell Barton
13a578edb4 Cleanup: kdtree, redundant root node handling
For range checks we can put the root not in the stack.
2015-12-06 15:57:10 +11:00
Campbell Barton
8f12dad309 Fix generate UV's adding extra layers
Adding a new meshes when there were no faces would always add a new uv-layer.
2015-12-06 11:22:17 +11:00
Sergey Sharybin
ed5dbb0a7b Cycles: Implement extrapolation for RGB curves
Previously RGB Curves node will clamp input to 0..1 which is rather useless
when one wants to use HDR image textures and do bit of correction on them.

Now kernel code supports extrapolation of baked LUT based on first/last two
table points and performs linear extrapolation.

The only tricky part is to guess the range to bake the LUT for. Currently
it's using simple approach -- minmax of the input curves. While this behaves
ok for the simple cases it's easy to trick the system up causing incorrect
results.

Not sure we can solve those issues in a general case and since the new code
is giving more expected results it's not that bad actually. In the worst
case artist migh always create explicit point to make sure LUT is created
for the needed HDR range.

Reviewers: brecht, juicyfruit

Subscribers: sebastian_k

Differential Revision: https://developer.blender.org/D1658
2015-12-06 01:21:14 +05:00
Bastien Montagne
258564a7b4 Fix (unreported) Newly added grid's vertices not being selected.
`bmo_create_grid_exec` was not tagging created vertices with `MARK_VERT`, which seems
mandatory to get them selected? This sounds a bit hacky/odd to me, but that's what
all other primitive funcs do...
2015-12-05 00:48:27 +01:00
Bastien Montagne
76d1201996 Fix OSL shaders building with some versions of that lib.
This must have happened months ago, but as I did not `make clean` any build folder since then,
so only noted that today.

Issue is same as dirty patch we have to apply to ODL sources before building it in install_deps.sh - for
some mysterious reason, it has become impossible to compoile .osl files into .oso ones without
giving explicit output file name (otherwise it just produces `.oso` file - utterly stupid and useless).

We could probably fix that in own OSL source, but think being explicit here does not hurt anyway, so...
Let's go the easy way.
2015-12-05 00:17:04 +01:00
Bastien Montagne
3c6709a63c Fix T37879: Default UV generation for mesh primitives.
Adds default-generated UVs to mesh primitives (cone, cylinder, icosphere, uvsphere, cube, circle, grid)
when they are added to the scene, since some of them can be pretty awkward to unwrap manually.

Original patch: Liam Mitchell (CommanderCorianderSalamander).
Main review work: Campbell Barton (campbellbarton).
Finalization, fixes and cleanup: Bastien Montagne (mont29).

Reviewers: mont29, #mesh_modeling, campbellbarton

Reviewed By: mont29, campbellbarton

Subscribers: lkruel, campbellbarton, michaelknubben, kevindietrich

Maniphest Tasks: T37879

Differential Revision: https://developer.blender.org/D481
2015-12-04 23:49:55 +01:00
Bastien Montagne
24be453938 Fix (unreported) bad LI_ID usercount when linking a new lib.
Library datablocks shall have a zero user count in Blender currently...
2015-12-04 17:24:21 +01:00
Lukas Tönne
50f17db641 Fix for too small array of function pointers in node RNA registration. 2015-12-04 17:14:33 +01:00
Lukas Tönne
ab4325c07a Have to allow DNA writes in node insert_link callback in order to do anything useful with it. 2015-12-04 10:25:31 +01:00
Lukas Tönne
7ec5a43051 Disable node updates while applying links from the dragging operator.
This prevents issues with reentrant update callbacks and modification
of the node tree while the operator still holds pointers to it.
2015-12-04 09:20:08 +01:00
Campbell Barton
a9a02490ce Use int division for version string 2015-12-04 08:49:59 +11:00
Sergey Sharybin
c8fc55d594 Buildbot: Remove windows + scons related code
This is also has been moved to the CMake, no need to keep old dying code around.
2015-12-03 22:47:40 +05:00
Sergey Sharybin
d1c597e0e1 Buildbot: Remove linux scons buildbot related things
It is now totally covered by cmake slave.
2015-12-03 22:35:50 +05:00
Sergey Sharybin
9d0d2fb209 Buildbot: Re-enable CUDA binaries for 64 bit linux slave
Also make it a bit more reasonable name for config files.
2015-12-03 22:24:27 +05:00
Sergey Sharybin
dc0c648914 Buildbot: User proper folder name inside of the archive
This is totally matching the way how buildbot was naming the directory.

Currently there's a bit of code duplication, but it'll be eliminated once
we'll get rid of SCons ;)
2015-12-03 22:10:59 +05:00
Sergey Sharybin
23c670ea0d Buildbot: Remove debug-only early exit 2015-12-03 21:59:42 +05:00
Sergey Sharybin
334955c3e6 Buildbot: Strip all .so files from python install 2015-12-03 18:04:13 +05:00
Sergey Sharybin
51e59fa90f Buildbot: No need to build player with blender config 2015-12-03 17:40:12 +05:00
Lukas Tönne
7f759ec547 Node callback for handling link insertion and swapping of occupied inputs.
Nodes have a feature for moving existing links to unoccupied sockets when connecting
to an already used input. This is based on the standard legacy socket types (value/float,
vector, color/rgba) and works reasonably well for shader, compositor and texture nodes.

For new pynode systems, however, the hardcoded nature of that feature has major drawbacks:
* It does not take different type systems into account, leading to meaningless connections
  when sockets are swapped and making the feature useless or outright debilitating.
* Advanced socket behaviors would be possible with a registerable callback, e.g. creating
  extensible input lists that move existing connections down to make room for a new link.

Now any handling of new links is done via the 'insert_links' callback, which can also be
registered through the RNA API. For the legacy shader/compo/tex nodes the behavior is the
same, using a C callback.

Note on the 'use_swap' flag: this has been removed because it was meaningless anyway:
It was disabled only for the insert-node-on-link feature, which works only for
completely unconnected nodes anyway, so there would be nothing to swap in the first place.
2015-12-03 13:04:04 +01:00
Campbell Barton
762aad3777 Correct OpenMP pragma, wasn't updated for looptri 2015-12-03 22:56:32 +11:00
Sergey Sharybin
9019523161 Buildbot: Followup to previous commit
Path is to be fully specified, so it's independent form the working directory.
2015-12-03 17:00:09 +05:00
Sergey Sharybin
c825c81c38 Buildbot: Another attmept to solve windows
Also de-duplicate bit of code.
2015-12-03 16:55:46 +05:00
Campbell Barton
8c453b5995 Remove redundant zero area face check 2015-12-03 22:45:33 +11:00
Bastien Montagne
80fa528529 Fix FileBrowser 'context-editing' properties shortcuts not being displayed in tooltip.
Also related to T46918.
2015-12-03 12:51:12 +01:00
Sergey Sharybin
56fcb18a22 Buildbot: attempt to solve packing on windows 2015-12-03 16:48:14 +05:00
Sergey Sharybin
66067f3a97 Buildbot: Disable tests on Linux builders
No idea why they works on windows, but points are:

- libs/tests folder is NOT checked out on any platforms
- render_povray addon does mkdir on a path which might not have parents

There might be some other issues, but those are kinda stoppers for us.
2015-12-03 16:46:15 +05:00
Campbell Barton
a4e151704f Fix isect_point_tri_v3 w/ degenerate faces
Ensure point_in_slice returns false when zero area faces are passed.
2015-12-03 22:37:46 +11:00
Bastien Montagne
59e4a56d87 Cleanup: change WM_key_event_operator_id to WM_key_event_operator and make it return kmi pointer directly.
All three usages of this func were only using kmi_id to find again kmi itself, pretty dumb!
2015-12-03 12:39:40 +01:00
Sergey Sharybin
2c7a70395c Buildbot: Fix typo
What a shame..
2015-12-03 16:37:17 +05:00
Sergey Sharybin
27c0997417 Buildbot: Make sure install directory always exists 2015-12-03 16:35:04 +05:00
Sergey Sharybin
91d8a9d035 Buildbot: Make sure buildbot_upload.zip is created in the right place 2015-12-03 16:30:52 +05:00
Bastien Montagne
a7dbc0704f Fix T46918: - Cleanup - FileBrowser - get rid of useless operators and update a bit keymap.
Looks like FILE_OT_hidedot was actually the only one to remove here.

Also, added more common parentdir/previousdir/nextdir shortcuts, and R for reload.
2015-12-03 12:21:57 +01:00