Age | Commit message (Collapse) | Author |
|
|
|
Patch by Blend4Web Team, thanks!
Reviewers: psy-fi
Subscribers: yurikovelenov, AlexKowel, Evgeny_Rodygin
Differential Revision: https://developer.blender.org/D899
|
|
There was a differences between how Cycles and BI treats Normal shader:
- Different normal direction assumption
- Different policy about vector normalization
Previous idea of trying to use single function and flip the output if
needed becomes more tricky, so i've just added new GLSL function which
corresponds to how Cycles deals with the Normal shader.
|
|
It was wrong to use invert(), we need to multiply by -1 instead.
|
|
|
|
|
|
|
|
Patch by Romanov Alexander of blen4web team!
Differential: D842
Thanks for the patch!
|
|
This is added in the spirit of the general cycles GLSL system
which is pretty much WIP still.
This will only work on cycles at the moment but generating for blender
internal is possible too of course though it will be done in a separate
commit.
This hasn't been tested with all and every node in cycles, but
environment and regular textures with texture coordinates work.
There is some difference between the way cycles treats some coordinates,
which is in world space and the way GLSL treats them, which is in view
space.
We might want to explore and improve this further in the future.
...also </drumroll>
|
|
|
|
Also included mirror ball shader, which was missing.
|
|
|
|
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D781
|
|
Even though GLSL allows to have polymorphic functions our codegen
is not aware of this at all.
Let's rename the functions for now, but in the future would be handy
to make codegen aware of the polymorphic functions.
|
|
Should be no functional changes, just much less cryptic code.
|
|
shader nodes (Blender Render)
Quite striaghtforward implementation, with the only weird thing that for some reason
my video driver wasn't happy with calling the function "clamp" giving some weirdo
shader compilation error messages.
Called the GPU function clamp_val which can handle float and vec3.
|
|
|
|
https://developer.blender.org/D643
Separates graphics context creation from window code in Ghost so that they can vary separately.
|
|
Nodes don't have muting callbacks any more, so now have to check the
flag to prevent overwriting values on the stack that they share with
inputs.
|
|
|
|
This was disabled to fix T41349, however seems that if we don't pass
delegates for muted nodes everything work fine.
|
|
Problem is that setup of stack indices which refer to the same stack
entry can lead to cyclic TexDelegate node pointers, causing an infinite
loop.
Fixing this would take too much time and require recoding large parts of
the texnodes system, which is earmarked for scrapping anyway ... So for
now just disabled muting in texnodes to avoid crashes.
|
|
|
|
of the Output Line Style node.
|
|
|
|
Style shader node.
|
|
|
|
BKE_get_linestyle_from_scene().
|
|
|
|
Shader nodes will be used to define materials for stroke rendering, so as to
allow users to interactively configure textures.
|
|
This came up a few times already, most of the time you want a clear white glass, and not a greyish like one. :)
|
|
This allows adding a "fake" sun beam effect, simulating crepuscular rays
from light being scattered in a medium like the atmosphere or deep water.
Such effects can be created also by renderers using volumetric lighting,
but the compositor feature is a lot cheaper and is independent from 3D
rendering. This makes it ideally suited for motion graphics.
The implementation uses am optimized accumulation method for gathering
color values along a line segment. The inner buffer loop uses fixed
offset increments to avoid unnecessary multiplications and avoids
variables by using compile-time specialization (see inline comments
for further details).
|
|
If the active image node contributes to the final material shader
(meaning it's either directly or indirectly connected to an Output Node)
the user will receive an alert about circular dependency.
Similar to what we do for Blender internal the baking will still happen,
but the user will receive the alert which should prevent the image
saving to happen if the result was not intentional.
Core function to check for node output written by Lukas Toenne.
Reviewers: lukastoenne, campbellbarton
Differential Revision: https://developer.blender.org/D673
|
|
|
|
|
|
|
|
The function is to retrieve the active line style ID datablock from a scene and
there is nothing related to bContext.
|
|
trees for localization (previews and viewer evaluation).
This is handled entirely by the compositor already. Doing this during
localization is redundant and risks divergent behavior.
|
|
|
|
|
|
Issue here is that if there's a texture in the tree, chances are it has
already been set as active texture so groups are never traversed.
Now changed logic so that if a group node is active, its own active
texture takes priority over the parent group active texture.
|
|
|
|
* Anisotropic BSDF now supports GGX and Beckmann distributions, Ward has been
removed because other distributions are superior.
* GGX is now the default distribution for all glossy and anisotropic nodes,
since it looks good, has low noise and is fast to evaluate.
* Ashikhmin-Shirley is now available in the Glossy BSDF.
|
|
* Ashikhmin-Shirley anisotropic BSDF was added as closure
* Anisotropic BSDF node now has two distributions
Reviewers: brecht, dingto
Differential Revision: https://developer.blender.org/D549
|
|
|
|
This was already possible via the RGB nodes, but that seems weird.
|
|
|
|
|
|
|
|
A bunch of nodes had invalid storage definitions that don't refer to an actual
DNA struct. Ref T40033.
|