Files
test2/intern/cycles/kernel/svm/sepcomb_vector.h
Lukas Stockner 11ae08157e Revert Cycles SVM state cleanup due to Mac ARM test timeout
Not sure what is happening here, needs to be checked by someone on Mac.
Let's revert for now, it's not like this is a critical change.

Pull Request: https://projects.blender.org/blender/blender/pulls/110443
2024-10-08 00:33:56 +02:00

46 lines
1.3 KiB
C

/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
*
* SPDX-License-Identifier: Apache-2.0 */
#pragma once
CCL_NAMESPACE_BEGIN
/* Vector combine / separate, used for the RGB and XYZ nodes */
ccl_device void svm_node_combine_vector(ccl_private ShaderData *sd,
ccl_private float *stack,
uint in_offset,
uint vector_index,
uint out_offset)
{
float vector = stack_load_float(stack, in_offset);
if (stack_valid(out_offset)) {
stack_store_float(stack, out_offset + vector_index, vector);
}
}
ccl_device void svm_node_separate_vector(ccl_private ShaderData *sd,
ccl_private float *stack,
uint ivector_offset,
uint vector_index,
uint out_offset)
{
float3 vector = stack_load_float3(stack, ivector_offset);
if (stack_valid(out_offset)) {
if (vector_index == 0) {
stack_store_float(stack, out_offset, vector.x);
}
else if (vector_index == 1) {
stack_store_float(stack, out_offset, vector.y);
}
else {
stack_store_float(stack, out_offset, vector.z);
}
}
}
CCL_NAMESPACE_END