Fix missing Int2/Int3/Int4 in Variant support implementation parts

#4114
This commit is contained in:
2026-05-27 17:23:22 +02:00
parent 7c1df5c980
commit ab6b5927f8
10 changed files with 293 additions and 92 deletions
@@ -27,65 +27,41 @@ void ParticleEmitterGraphCPUExecutor::ProcessGroupParameters(Box* box, Node* nod
switch (param->Type.Type)
{
case VariantType::Float2:
switch (box->ID)
{
case 1:
case 2:
if (box->ID >= 1 && box->ID <= 2)
value = value.AsFloat2().Raw[box->ID - 1];
break;
}
break;
case VariantType::Float3:
switch (box->ID)
{
case 1:
case 2:
case 3:
if (box->ID >= 1 && box->ID <= 3)
value = value.AsFloat3().Raw[box->ID - 1];
break;
}
break;
case VariantType::Float4:
case VariantType::Color:
switch (box->ID)
{
case 1:
case 2:
case 3:
case 4:
if (box->ID >= 1 && box->ID <= 4)
value = value.AsFloat4().Raw[box->ID - 1];
break;
}
break;
case VariantType::Double2:
switch (box->ID)
{
case 1:
case 2:
if (box->ID >= 1 && box->ID <= 2)
value = value.AsDouble2().Raw[box->ID - 1];
break;
}
break;
case VariantType::Double3:
switch (box->ID)
{
case 1:
case 2:
case 3:
if (box->ID >= 1 && box->ID <= 3)
value = value.AsDouble3().Raw[box->ID - 1];
break;
}
break;
case VariantType::Double4:
switch (box->ID)
{
case 1:
case 2:
case 3:
case 4:
if (box->ID >= 1 && box->ID <= 4)
value = value.AsDouble4().Raw[box->ID - 1];
break;
}
break;
case VariantType::Int2:
if (box->ID >= 1 && box->ID <= 2)
value = value.AsInt2().Raw[box->ID - 1];
break;
case VariantType::Int3:
if (box->ID >= 1 && box->ID <= 3)
value = value.AsInt3().Raw[box->ID - 1];
break;
case VariantType::Int4:
if (box->ID >= 1 && box->ID <= 4)
value = value.AsInt4().Raw[box->ID - 1];
break;
case VariantType::Matrix:
{