| 497 | } |
| 498 | |
| 499 | void VisjectExecutor::ProcessGroupPacking(Box* box, Node* node, Value& value) |
| 500 | { |
| 501 | switch (node->TypeID) |
| 502 | { |
| 503 | // Pack |
| 504 | case 20: |
| 505 | { |
| 506 | float vX = (float)tryGetValue(node->GetBox(1), node->Values[0]); |
| 507 | float vY = (float)tryGetValue(node->GetBox(2), node->Values[1]); |
| 508 | value = Float2(vX, vY); |
| 509 | break; |
| 510 | } |
| 511 | case 21: |
| 512 | { |
| 513 | float vX = (float)tryGetValue(node->GetBox(1), node->Values[0]); |
| 514 | float vY = (float)tryGetValue(node->GetBox(2), node->Values[1]); |
| 515 | float vZ = (float)tryGetValue(node->GetBox(3), node->Values[2]); |
| 516 | value = Float3(vX, vY, vZ); |
| 517 | break; |
| 518 | } |
| 519 | case 22: |
| 520 | { |
| 521 | float vX = (float)tryGetValue(node->GetBox(1), node->Values[0]); |
| 522 | float vY = (float)tryGetValue(node->GetBox(2), node->Values[1]); |
| 523 | float vZ = (float)tryGetValue(node->GetBox(3), node->Values[2]); |
| 524 | float vW = (float)tryGetValue(node->GetBox(4), node->Values[3]); |
| 525 | value = Float4(vX, vY, vZ, vW); |
| 526 | break; |
| 527 | } |
| 528 | case 23: |
| 529 | { |
| 530 | float vX = (float)tryGetValue(node->GetBox(1), node->Values[0]); |
| 531 | float vY = (float)tryGetValue(node->GetBox(2), node->Values[1]); |
| 532 | float vZ = (float)tryGetValue(node->GetBox(3), node->Values[2]); |
| 533 | value = Quaternion::Euler(vX, vY, vZ); |
| 534 | break; |
| 535 | } |
| 536 | case 24: |
| 537 | { |
| 538 | const Vector3 vX = (Vector3)tryGetValue(node->GetBox(1), Vector3::Zero); |
| 539 | const Quaternion vY = (Quaternion)tryGetValue(node->GetBox(2), Quaternion::Identity); |
| 540 | const Float3 vZ = (Float3)tryGetValue(node->GetBox(3), Float3::One); |
| 541 | value = Variant(Transform(vX, vY, vZ)); |
| 542 | break; |
| 543 | } |
| 544 | case 25: |
| 545 | { |
| 546 | const Vector3 vX = (Vector3)tryGetValue(node->GetBox(1), Vector3::Zero); |
| 547 | const Vector3 vY = (Vector3)tryGetValue(node->GetBox(2), Vector3::Zero); |
| 548 | value = Variant(BoundingBox(vX, vY)); |
| 549 | break; |
| 550 | } |
| 551 | // Unpack |
| 552 | case 30: |
| 553 | { |
| 554 | Float2 v = (Float2)tryGetValue(node->GetBox(0), Float2::Zero); |
| 555 | int32 subIndex = box->ID - 1; |
| 556 | ASSERT(subIndex >= 0 && subIndex < 2); |
nothing calls this directly
no test coverage detected