diff options
author | Ethan-Hall <Ethan1080> | 2022-03-07 19:34:52 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2022-03-07 19:35:48 +0300 |
commit | 5b4ab896634fd118cb46740f6f90e45f96d550ac (patch) | |
tree | fbe8bae09fd3c9bcc75176621c2b434dd5690282 /intern/cycles/kernel/geom | |
parent | 76f9d83a19b9804f3f8997c35f4f77ace2d6fcbc (diff) |
Shader Nodes: add Alpha output to Object Info node
An alpha component can be specified for an object's color. This adds an alpha
socket to the object info shader node allowing for the alpha component of the
object's color to be accessed in the shader editor.
Differential Revision: https://developer.blender.org/D14141
Diffstat (limited to 'intern/cycles/kernel/geom')
-rw-r--r-- | intern/cycles/kernel/geom/object.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/intern/cycles/kernel/geom/object.h b/intern/cycles/kernel/geom/object.h index e8f5dfcc529..86c57c84b47 100644 --- a/intern/cycles/kernel/geom/object.h +++ b/intern/cycles/kernel/geom/object.h @@ -263,6 +263,16 @@ ccl_device_inline float3 object_color(KernelGlobals kg, int object) return make_float3(kobject->color[0], kobject->color[1], kobject->color[2]); } +/* Alpha of the object */ + +ccl_device_inline float object_alpha(KernelGlobals kg, int object) +{ + if (object == OBJECT_NONE) + return 0.0f; + + return kernel_tex_fetch(__objects, object).alpha; +} + /* Pass ID number of object */ ccl_device_inline float object_pass_id(KernelGlobals kg, int object) |