Commit Graph

97825 Commits

Author SHA1 Message Date
Lukas Stockner
e2736afdbe Cycles: Add versioning code for the new Sky Texture model
Differential Revision: https://developer.blender.org/D8091
2020-07-13 03:08:07 +02:00
Lukas Stockner
77cd8182f8 Cycles: Remove Vector input on Sky texture when using the included sun
When using the sun, we need to sun sampling logic to avoid excessive
sampling map resolution, but that logic assumes that the Vector input
comes from the view direction.
That is the case in the vast majority of cases anyways, so the easiest
solution is to just remove the input for that case.

Differential Revision: https://developer.blender.org/D8091
2020-07-13 02:00:38 +02:00
Lukas Stockner
474dcbcf12 Cycles: Remove limits on the Sky texture's sun rotation
For animation/driver purposes, being able to go outside of the 0-360
range makes things easier.

Differential Revision: https://developer.blender.org/D8091
2020-07-13 02:00:24 +02:00
Jacques Lucke
f319eec881 Cleanup: disable debug code 2020-07-12 11:05:43 +02:00
Jacques Lucke
30ed51d60a Cleanup: unused debug variable 2020-07-12 12:50:19 +02:00
Jacques Lucke
21b20ae5ec Particles: initial support for forces in simulation node trees
The force node can now be used to control the behavior of particles.
Forces can access particles attributes. Currently, there are three attributes:
`Position` (vector), `Velocity` (vector) and `ID` (integer).

Supported nodes are: Math, Vector Math, Separate Vector, Combine Vector and Value.

Next, I'll have to split `simulation.cc` into multiple files and move
some stuff out of blenkernel into another folder.
2020-07-12 12:38:57 +02:00
Jacques Lucke
ebf9082e1c Nodes: support more implicit conversions in simulation node tree 2020-07-12 12:38:30 +02:00
Jacques Lucke
838b1742fb Functions: minor improvements 2020-07-12 12:38:03 +02:00
Jacques Lucke
404486e66c Functions: minor api improvements 2020-07-12 10:01:37 +02:00
Antonio Vazquez
ee5c2f6ead GPencil: Replace "ShaderFX" with "Shader Effects" in RNA prop text 2020-07-11 20:41:21 +02:00
Jacques Lucke
c7eada103c Nodes: support implicit conversions and incorrectly linked sockets 2020-07-11 18:02:06 +02:00
Jacques Lucke
06401157a6 Fix: incorrect attribute type in network 2020-07-11 17:59:43 +02:00
Jacques Lucke
46b79b3d4a Nodes: support vector math node in simulation node tree 2020-07-11 16:55:57 +02:00
Jacques Lucke
b920875893 Nodes: support math node in simulation node tree 2020-07-11 16:47:53 +02:00
Jacques Lucke
8fae58ce0b Nodes: support Value node in simulation node tree 2020-07-11 16:39:17 +02:00
Jacques Lucke
16d4373158 Nodes: move Math, Vector Math and Value shader nodes to c++ files
This required a little bit of refactoring, because we were using c-only
syntax for the gpu shader names. All tests are still passing.
2020-07-11 16:24:53 +02:00
Campbell Barton
415d3ee05b UV: add path select operator that uses the selection
Instead of using the mouse cursor position,
this selects between existing selected elements.

Access this since picking a selection path doesn't
work from the menu.
2020-07-11 22:09:45 +10:00
Campbell Barton
6e698653df Cleanup: remove unused function 2020-07-11 20:34:17 +10:00
Campbell Barton
651db1b26f Cleanup: spelling 2020-07-11 15:32:59 +10:00
Campbell Barton
020e0f11ff Docs: remove reference to PYTHONHOME
This is no longer used by default, when '--python-use-system-env' is set
there are many Python environment variables, don't list them in
Blender's help message.
2020-07-11 14:50:47 +10:00
Aaron Carlisle
d2b910fafe UI: UV: Add Select Shortest Path to menu
This matches the 3D Viewport
2020-07-10 16:07:31 -04:00
Brecht Van Lommel
3dc0178390 Fix T78662: Cycles baking fails if denoising is enabled, after recent changes
This is not supported yet.
2020-07-10 20:08:46 +02:00
Brecht Van Lommel
6fbacd6048 Fix build error building without OpenImageDenoise 2020-07-10 19:56:53 +02:00
Brecht Van Lommel
48f10319c6 Fix T78801: Eevee missing setting to enable/disable freestyle per view layer
This was only visible when Cycles was enabled.
2020-07-10 18:41:16 +02:00
Hans Goudey
4e8fc15586 UI: Improve transform constraint layout
- Remove the "mapping" subpanel and moves the source axis
    selection ot the destination subpanel.
  - Rename "Source" and "Destination" to "Map From" and "Map To" to
    make the action more clear
  - Gray out source axes when their data isn't selected.

  These changes were discussed in D8041.
2020-07-10 12:21:32 -04:00
Brecht Van Lommel
3e4f49fe71 Revert "Fix T78296: Performance - Use Binary Search for MDeformWeight"
This reverts commit 39b525e0f0 and
3121015dce as tests are failing.
2020-07-10 18:03:21 +02:00
Antonio Vazquez
d5208c45fa GPencil: Fix unreported Use Falloff curve for active frame not working
For the active frame it was using always a value of 1.0 and it was not using the curve.
2020-07-10 17:56:35 +02:00
Brecht Van Lommel
6eeb32706a Cycles: support OpenImageDenoise in final renders
Performance is not great currently due to the API not seeming to support
efficient denoising of multiple tiles at the same time. So in many cases
only one or a few threads will actually be denoising at the same time.

In renders with many samples this is not a big problem, but for faster
renders it's a signficant overhead.

We should try to optimize this still, possibly by batching denoising of
a bigger neighborhood of multiple tiles at once.
2020-07-10 17:10:05 +02:00
Brecht Van Lommel
93791381fe Cleanup: reduce hardcoded numbers in denoising neighbor tiles code 2020-07-10 17:10:05 +02:00
Brecht Van Lommel
e65c78cd43 Cleanup: minor refactoring in Cycles update detection code 2020-07-10 17:10:05 +02:00
Milan Jaros
ad45b8d6a4 Cycles: optimize camera inside volume tests
Only run when there are volumes in the scene, and compute in parallel.

Ref T56939

Differential Revision: https://developer.blender.org/D8261
2020-07-10 17:10:05 +02:00
Brecht Van Lommel
d8e648c352 Fix T78776: Cycles OpenCL error after recent changes for holdouts 2020-07-10 17:10:05 +02:00
Bastien Montagne
9dbe9a753a Fix T78766: Blender crashes after deleting vertices with Custom Normals.
Some core BMesh topology changing functions were not properly tagging
custom normal runtime caches as dirty...
2020-07-10 16:51:37 +02:00
Richard Antalik
5372924983 Fix T78579: Proxy produces wrong preview when using Offset or Crop
Make sure that proxy and original images are scaled to same size before
applying offset or crop.

During testing, I discovered, that raw cache will lose information whether
this image was proxy or not. Because of this, proxy images will not create
this cache type. It would be fairly easy to implement this functionality for
cache, but I have decided to not do it now, because I did not want to pass yet
another mostly hard-coded bool flag to cache system. Since image is proxy, it
should be fast to read anyway.

In case of using offset property, code was modified to make sure we scale
image only once. I also tried to make code more readable and streamlined and
cleaned up surrounding functions a bit.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D8203
2020-07-10 16:16:42 +02:00
Richard Antalik
77f823a240 Fix T78573: Crash when removing strips with prefetching
Stop prefetching before changing content of seqbase.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D8256
2020-07-10 16:16:42 +02:00
Richard Antalik
47e71f4623 Fix T69440: Memory leak adding strips via python
seq->strip was overwritten in python API function.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8204
2020-07-10 16:16:42 +02:00
Jacques Lucke
cbfedf2139 BLI: add C++ random number generator
This adds `blender::RandomNumberGenerator` in `BLI_rand.hh`.
Furthermore, `RNG` is now implemented in terms of this new generator.
No functional changes are expected, the generated random numbers
are not changed by this commit.

Reviewers: campbellbarton, brecht

Differential Revision: https://developer.blender.org/D8259
2020-07-10 15:54:01 +02:00
Bastien Montagne
c2304d2f02 Expose override flags to python RNA properties definition.
Time will tell whether we need to expose more RNA override flags here.

Implements/Fix T78534.

Differential Revision: https://developer.blender.org/D8250
2020-07-10 15:50:21 +02:00
Jacques Lucke
4d1c3c029e Cleanup: declaration and implementation function signature did not match 2020-07-10 15:48:46 +02:00
Bastien Montagne
f93e0f1a9e Refactor override code to properly deal with runtime rna properties too.
The triplet static RNA / runtime RNA / custom properties is a real pain to
deal with...

Using the new `PropertyRNAOrID` struct helps clarifying and properly
dealing with all three cases.

Note that this makes override of py-defined RNA properties working
(support for that will be committed next).

Differential Revision: https://developer.blender.org/D8249
2020-07-10 15:23:52 +02:00
Bastien Montagne
337e2c9029 RNA: refactor how we get 'ensured' RNA properties.
Introduce new PropertyRNAOrID structure, storing most useful data about
an 'opaque' PropertyRNA in relation with a given PointerRNA struct.

It deals with all the three cases (pure static RNA, runtime RNA where
data is actually stored in IDProperties, and pure IDProperties, aka
custom data.
2020-07-10 15:19:40 +02:00
Campbell Barton
6c1157201a Cleanup: simplify platform define checks
Platforms besides WIN32 were in a single else clause, use elif instead.
2020-07-10 23:01:21 +10:00
Campbell Barton
45287f909c Fix for building on systems besides apple/windows/linux 2020-07-10 23:00:17 +10:00
Jacques Lucke
26d28ade26 Cleanup: follow code style 2020-07-10 14:40:23 +02:00
Jacques Lucke
c806db6313 Functions: add utility to find dependencies of input sockets 2020-07-10 14:23:13 +02:00
Jacques Lucke
60133ff98d Functions: store derived node tree and network in map for future access 2020-07-10 14:23:13 +02:00
Jacques Lucke
295b3aefb0 Functions: make constant folding work on unfinished networks 2020-07-10 14:23:13 +02:00
Jacques Lucke
7bae599232 Nodes: add redundant name check in debug builds to prevent errors 2020-07-10 14:23:13 +02:00
Jeroen Bakker
3121015dce Fix Crash due to recent changes
{39b525e0f07fa25dcda54226ade789959b642dec} could write in unallocated
space.
2020-07-10 13:38:38 +02:00
Antonio Vazquez
00eb6a56aa GPencil: Fix tooltip error
The tooltip was copied by error from Lattice modifier.
2020-07-10 13:30:21 +02:00