Blender
V2.93
intern
cycles
kernel
svm
svm_blackbody.h
Go to the documentation of this file.
1
/*
2
* Adapted from Open Shading Language with this license:
3
*
4
* Copyright (c) 2009-2010 Sony Pictures Imageworks Inc., et al.
5
* All Rights Reserved.
6
*
7
* Modifications Copyright 2013, Blender Foundation.
8
*
9
* Redistribution and use in source and binary forms, with or without
10
* modification, are permitted provided that the following conditions are
11
* met:
12
* * Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* * Redistributions in binary form must reproduce the above copyright
15
* notice, this list of conditions and the following disclaimer in the
16
* documentation and/or other materials provided with the distribution.
17
* * Neither the name of Sony Pictures Imageworks nor the names of its
18
* contributors may be used to endorse or promote products derived from
19
* this software without specific prior written permission.
20
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
*/
32
33
CCL_NAMESPACE_BEGIN
34
35
/* Blackbody Node */
36
37
ccl_device
void
svm_node_blackbody
(
38
KernelGlobals *
kg
,
ShaderData
*sd,
float
*stack,
uint
temperature_offset,
uint
col_offset)
39
{
40
/* Input */
41
float
temperature =
stack_load_float
(stack, temperature_offset);
42
43
float3
color_rgb =
svm_math_blackbody_color
(temperature);
44
45
stack_store_float3
(stack, col_offset, color_rgb);
46
}
47
48
CCL_NAMESPACE_END
uint
unsigned int uint
Definition:
BLI_sys_types.h:83
stack_load_float
ccl_device_inline float stack_load_float(float *stack, uint a)
Definition:
kernel/svm/svm.h:63
stack_store_float3
ccl_device_inline void stack_store_float3(float *stack, uint a, float3 f)
Definition:
kernel/svm/svm.h:54
ccl_device
#define ccl_device
Definition:
kernel_compat_cuda.h:59
CCL_NAMESPACE_END
#define CCL_NAMESPACE_END
Definition:
kernel_compat_cuda.h:23
kg
kg
Definition:
kernel_split_function.h:63
ShaderData
ShaderData
Definition:
kernel_types.h:1015
CCL_NAMESPACE_BEGIN
Definition:
blender_python.cpp:54
float3
Definition:
sky_float3.h:34
svm_node_blackbody
CCL_NAMESPACE_BEGIN ccl_device void svm_node_blackbody(KernelGlobals *kg, ShaderData *sd, float *stack, uint temperature_offset, uint col_offset)
Definition:
svm_blackbody.h:37
svm_math_blackbody_color
ccl_device float3 svm_math_blackbody_color(float t)
Definition:
svm_math_util.h:233
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1