Fix #109406: Ignore unsupported socket in shader

In 3957a1ad03 was
added the new Rotation socket to a Mix node.
Mix node can be used in shaders node tree. This cause problem,
rotation socket is not supported in shader currently. This fix
just add check to ignore any unsupported sockets in shader and
to fix any related problem.

Pull Request: https://projects.blender.org/blender/blender/pulls/109410
This commit is contained in:
Iliya Katueshenock
2023-06-27 16:46:18 +02:00
committed by Clément Foucault
parent 0f3b691c22
commit fde8e6ce65

View File

@@ -204,9 +204,12 @@ static void gpu_stack_from_data_list(GPUNodeStack *gs, ListBase *sockets, bNodeS
static void data_from_gpu_stack_list(ListBase *sockets, bNodeStack **ns, GPUNodeStack *gs)
{
int i;
LISTBASE_FOREACH_INDEX (bNodeSocket *, socket, sockets, i) {
node_data_from_gpu_stack(ns[i], &gs[i]);
int i = 0;
LISTBASE_FOREACH (bNodeSocket *, socket, sockets) {
if (ELEM(socket->type, SOCK_FLOAT, SOCK_INT, SOCK_VECTOR, SOCK_RGBA, SOCK_SHADER)) {
node_data_from_gpu_stack(ns[i], &gs[i]);
i++;
}
}
}