Here is a playblast of my animation. I’m having something I’m going to call ghosting. I have items showing up in render time that don’t exist in the outliner, and animation in the render that doesn’t happen on the timeline. Just changing the type of materials I apply makes a difference in how ‘close’ the animation that renders out is to the actual script.

The grey block and the red block don’t exist. I can scrub through the timeline and nothing ever shows up. I went to display > show all, and nothing came up. Also the up right part of the blocks should be curved. Here’s a playblast with what was intended.
The video can be found here.
To create an setup the groups and deformers:
int $i, $j;
float $pi = 3.14159265;
polyCube;
select -clear;
select -tgl pCube1.f[1] ;
select -tgl pCube1.f[2] ;
select -tgl pCube1.f[4] ;
sets -e -forceElement mib_illum_lambert1SG;
select -clear;
select -tgl pCube1.f[0] ;
select -tgl pCube1.f[3] ;
select -tgl pCube1.f[5] ;
sets -e -forceElement mib_illum_lambert2SG;
select -clear;
select pCube1;
for($i = 0; $i < 99; $i++)
{
duplicate -rr;
}
select -allDagObjects;
string $objects[] = `ls -sl`;
cycleCheck -e off;
for($i = 0; $i < 10; $i++){
for($j = 0; $j < 10; $j++){
int $index = ($i * 10) + $j;
setAttr($objects[$index] + “.translateX”, $j + $j * .5);
setAttr($objects[$index] + “.translateY”, $i + $i * .5);
}
}
group -n fullGrid;
nonLinear -type bend -lowBound -1 -highBound 1 -curvature 0;
setAttr “bend1Handle.rotateX” 90;
setAttr “bend1Handle.rotateY” 45;
select -clear;
select fullGrid;
nonLinear -type twist -lowBound -1 -highBound 1 -startAngle 0 -endAngle 0;
for($i = 0; $i < 10; $i++){
select -clear;
for($j = 0; $j < 10; $j++){
select -tgl $objects[$i * 10 + $j];
}
group;
}
To Animate:
select -r bend1Handle ;
float $bendValue = frame / 45;
setAttr “bend1.curvature” $bendValue;
select -r twist1Handle ;
float $startAngle = -90 * frame / 90;
float $endAngle= 90 * frame / 90;
setAttr “twist1.startAngle ” $startAngle ;
setAttr “twist1.endAngle” $endAngle;
for($i = 1; $i < 11; $i++){
select -clear;
string $nameVal = “group” + $i;
select -r $nameVal;
float $turnVal = $i * frame / 40;
rotate -r -os $turnVal 0 0 ;
setKeyframe;
}