Commit Graph

63345 Commits

Author SHA1 Message Date
Campbell Barton
428743a9b0 Cleanup: style for GPU module 2018-07-18 23:10:31 +10:00
Clément Foucault
f882df9e0f GPU: Fix build error on Mac and Windows. 2018-07-18 14:58:56 +02:00
Brecht Van Lommel
3d67819a17 Merge branch 'master' into blender2.8 2018-07-18 14:13:16 +02:00
Campbell Barton
257d072317 3D View: show 3D axis-letter when pointing away
While only the positive axis is shown,
account for an exception when axis aligned.
2018-07-18 22:08:10 +10:00
L. E. Segovia
5078b9d2d0 Cycles: add Principled Hair BSDF.
This is a physically-based, easy-to-use shader for rendering hair and fur,
with controls for melanin, roughness and randomization.

Based on the paper "A Practical and Controllable Hair and Fur Model for
Production Path Tracing".

Implemented by Leonardo E. Segovia and Lukas Stockner, part of Google
Summer of Code 2018.
2018-07-18 13:59:06 +02:00
Brecht Van Lommel
566b319335 Cleanup: Cryptomatte node style tweaks. 2018-07-18 13:59:06 +02:00
Stefan Werner
bdda0964e0 Compositor: Cryptomatte compositing node.
This patch adds a new matte node that implements the Cryptomatte specification.
It also incluces a custom eye dropper that works outside of a color picker.
Cryptomatte export for the Cycles render engine will be in a separate patch.

Reviewers: brecht

Reviewed By: brecht

Subscribers: brecht

Tags: #compositing

Differential Revision: https://developer.blender.org/D3531
2018-07-18 13:03:34 +02:00
Clément Foucault
8cd7828792 GWN: Port to GPU module: Replace GWN prefix by GPU 2018-07-18 11:49:15 +02:00
Clément Foucault
247ad2034d GWN: Port to GPU module: Move files to GPU
This does not include all the struct and type renaming. Only files were
renamed.

gwn_batch.c/h was fusioned with GPU_batch.c/h
gwn_immediate.c/h was fusioned with GPU_immediate.c/h
gwn_imm_util.c/h was fusioned with GPU_immediate_util.c/h
2018-07-18 00:17:57 +02:00
Brecht Van Lommel
644fadf2f0 Render: add "OpenGL" render engine.
This is intended for quick renders for previsualization, animation previews
or sequencer previews. It provides the same settings as found in the 3D view
Shading popover in solid display mode, but in the scene render properties.

The "Workbench" engine was removed, and this name no longer appears in the
user interface, it's purely an internal name. We might come up with a better
name for this OpenGL engine still, but it's good to be consistent with the
OpenGL Render operator name since this has a similar purpose.
2018-07-17 16:46:09 +02:00
Brecht Van Lommel
7b3a18f0aa Cleanup: moving shading type into View3DShading.
So all shading settings are in this struct and can be reused in the OpenGL
render engine.
2018-07-17 14:59:07 +02:00
Brecht Van Lommel
f8e2dba7fe UI: move specular light settings to Lights tab in user preferences. 2018-07-17 14:59:07 +02:00
Brecht Van Lommel
117a5c0ac7 Fix Python error removing studio lights in user preferences. 2018-07-17 14:59:07 +02:00
Bastien Montagne
7c8e6048b3 Merge branch 'master' into blender2.8 2018-07-17 13:58:26 +02:00
Bastien Montagne
efe94793c0 Fix T56003: Opening image files as movies in VSE crashes.
metadata loading code was assuming all videos in Blender were from
FFMPEG... added empty place-holders for other types too, we probably
could load some metadata from pictures or AVI files too!
2018-07-17 13:55:43 +02:00
Jeroen Bakker
8d53b72b81 World: Added 'Viewport Display' panel
The Properties->World tab had no Viewport Display panel. The world color
itself was hidden when the 'use_node_tree' was enabled.

Also renamed the World.horizon_color to World.color as it has nothing to
do with the color of the horizon (old BI feature)
2018-07-17 12:39:03 +02:00
Clément Foucault
7dcc7bd5ee Object Mode: Add back object bound display 2018-07-17 11:36:21 +02:00
Pablo Vazquez
dc3b3d9453 UI: Lamp -> Light for the object type visibility operators
Spotted in a live stream by Emilton Mendoza, thanks!
2018-07-17 00:45:56 +02:00
Bastien Montagne
b85be88655 Fix (IRC-reported) wrong usercount handling of deprecated IPO datablocks.
versionning code would unref those twice... Reported by @ßergey on IRC, thanks!
2018-07-16 22:29:26 +02:00
Clément Foucault
d5f048f883 Eevee: Add debug visual for Cascaded Shadow Maps 2018-07-16 20:08:09 +02:00
Clément Foucault
db374d6658 DRWDebug: Add new debug functions for spheres and matrices. 2018-07-16 20:08:09 +02:00
Clément Foucault
1f69ffd35b Eevee: Fix Cascaded Shadow Maps glitches
There was an issue that caused the cascaded shadow map to appear glitchy
when the lamp was not at the origin.
2018-07-16 20:08:09 +02:00
Clément Foucault
44a9c39229 Workbench: Fix use of uninitialized memory. 2018-07-16 20:08:09 +02:00
Clément Foucault
eef6e1cca1 StudioLight: Fix codestyle 2018-07-16 20:08:09 +02:00
Clément Foucault
7a693626d6 Smoke: Port display to Workbench + object mode
This does not fix the smokesim. It only port the drawing method.

The Object mode engine is in charge of rendering the velocity debugging.

Things left to do:
- Flame rendering.
- Color Ramp coloring of volume data.
- View facing slicing (for now it's only doing sampling starting from the
  volume bounds which gives a squarish look)
- Add option to enable dithering (currently on by default.
2018-07-16 20:08:09 +02:00
Clément Foucault
43593e846b Matcap: Fix missing pixel on preview icons 2018-07-16 20:08:09 +02:00
Sergey Sharybin
dc123ac9e5 Merge branch 'master' into blender2.8 2018-07-16 16:18:43 +02:00
Sergey Sharybin
1e1c858cf1 Cleanup: Remove obscure flag which was only used for read in subsurf code
Some sort of rudiment from many years ago, is never set by 2.5x code.
2018-07-16 16:15:57 +02:00
Sergey Sharybin
3465013bb7 Merge branch 'master' into blender2.8 2018-07-16 15:58:39 +02:00
Sergey Sharybin
72d1fb9934 Cleanup: Use const qualifier for UV vertex map 2018-07-16 15:58:12 +02:00
Sergey Sharybin
88c2193d16 Merge branch 'master' into blender2.8 2018-07-16 15:48:13 +02:00
Sergey Sharybin
20f3cbfb78 Cleanup: More clear naming in UV vertex/element mappings
Also use unsigned short for loop index within a polygon for UV vertex
mapping, which matches UV element mapping.
2018-07-16 15:44:43 +02:00
Philipp Oeser
77d70c7f1d Merge branch 'master' into blender2.8 2018-07-16 15:16:00 +02:00
Philipp Oeser
43f0af734e Fix T55944: fbx export error with smoothing face
ddee0931b8 added PROP_RAW_BOOLEAN case for foreach_set, but missed
foreach_get

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D3534
2018-07-16 15:03:21 +02:00
Philipp Oeser
96b4e43e8d Fix T55527: creating a Quaternion without args should result in identity
quaternion

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D3487
2018-07-16 15:03:21 +02:00
Brecht Van Lommel
de2f1c64fe Merge branch 'master' into blender2.8 2018-07-16 14:36:59 +02:00
Sergey Sharybin
010e24a95c OpenSubdiv: Remove UV coordinates from converter
Converter only defines topology, not coordinates or (face)varying data.
2018-07-16 11:12:02 +02:00
Sergey Sharybin
d920382046 OpenSubdiv: Re-work C-API integration
Main goal is to make API simpler to follow (at least ion terms what
is defined/declared where, as opposite of handful big headers which
includes all the declarations), and also avoid a big set of long and
obscure functions.

Now C-API files are split into smaller ones, following OpenSubdiv
behavior more closely, and also function pointers in structures
used a lot more, which shortens functions names,

UV integration part in GL Mesh is mainly stripped away, it needs
to be done differently. On a related topic, UV coordinates API in
converter needs to be removed as well, we do not need coordinates,
only island connectivity information there.

Additional changes:

- Varying interpolation in evaluator API are temporarily disabled,
  need to extend API somewhere (probably, evaluator's API) to inform
  layout information of vertex data (whether it contains varying
  data, width, stride and such).

- Evaluator now can interpolate face-varying data.
  Only works for adaptive refiner, since some issues in OpenSubdiv
  itself.

Planned changes:

- Remove uv coordinates from TopologyConverter.
- Support evaluation of patches (as opposite to individual coordinates
  as it happens currently).
- Support more flexible layout of varying and face-varying data.
  It is stupid to assume varying is 3 floats and face-varying 2 floats.
- Support of second order derivatives.
- Everything else what i'm missing in this list.
2018-07-16 09:52:37 +02:00
Campbell Barton
ab9bd557ad Cleanup: doxy comments 2018-07-15 20:34:24 +02:00
Campbell Barton
b29b73a67e Gizmo: update Python templates 2018-07-15 19:51:11 +02:00
Campbell Barton
57ab7daa2a GPU_matrix: use Blender's naming conventions
Thanks to @sergey for review
2018-07-15 15:34:13 +02:00
Campbell Barton
b457cae397 Cleanup: use variable names based on term gizmo 2018-07-15 14:35:33 +02:00
Campbell Barton
b5451a642f 3D View: New view gizmo design
Simplify the default navigation gizmo.

See: T54723
2018-07-15 11:32:34 +02:00
Campbell Barton
e00f0686f7 Cleanup: style, doxy file 2018-07-15 10:53:34 +02:00
Campbell Barton
09431033e9 Cleanup: split GPU_batch
Split out presets and utilities for creating batches.
These functions are quite specialized and not related to typical usage.
2018-07-15 10:51:49 +02:00
Brecht Van Lommel
680994643c Merge branch 'master' into blender2.8 2018-07-15 00:54:12 +02:00
charlie
83a4e1aaf9 Cycles: add voronoi features and distance settings from Blender.
Features to get the 2nd, 3rd, 4th closest point instead of the closest, and
various distance metrics. No viewport/Eevee support yet.

Patch by Michel Anders, Charlie Jolly and Brecht Van Lommel.

Differential Revision: https://developer.blender.org/D3503
2018-07-15 00:45:42 +02:00
Campbell Barton
5ebebcfbff WM: rename manipulator to gizmo internally 2018-07-14 23:49:00 +02:00
Campbell Barton
cd16004132 WM: rename files, manipulator -> gizmo
Edit doxy files and header guards only.
2018-07-14 23:16:34 +02:00
Campbell Barton
fc7c934cfc UI: rename manipulator to gizmo
This is a common, short, distinctive term often used for this purpose.

Changes to internal API's still needed.
2018-07-14 22:29:35 +02:00