int main(int argc, char *argv[]) { char fileName[80]; unsigned int loop=0; unsigned int offset=0; for(loop=1;loop<3000;loop++) { double gX=2.0*sin((2*M_PI*((double)(loop%25)/25.0))); double gY=2.0*sin((2*M_PI*((double)((loop+offset)%25)/25.0))); double gZ=1.0-0.5*sin((2*M_PI*((double)((loop+10+offset)%25)/25.0))); unsigned int speed=0; sprintf(fileName,"frames/frame%08u.png",loop); if(generateFrame(fileName, loop, gX, gY, gZ, speed, ((double)(loop%40)/40)*100, ((double)(loop%30)/30)*100)) { return 1; } if(!(loop%12)) { offset++; } } return 0; }
void TSShapeLoader::generateObjectState(TSShape::Object& obj, F32 t, bool addFrame, bool addMatFrame) { shape->objectStates.increment(); TSShape::ObjectState& state = shape->objectStates.last(); state.frameIndex = 0; state.matFrameIndex = 0; state.vis = mClampF(appMeshes[obj.startMeshIndex]->getVisValue(t), 0.0f, 1.0f); if (addFrame || addMatFrame) { generateFrame(obj, t, addFrame, addMatFrame); // set the frame number for the object state state.frameIndex = appMeshes[obj.startMeshIndex]->numFrames - 1; state.matFrameIndex = appMeshes[obj.startMeshIndex]->numMatFrames - 1; } }
/** * Create a frame */ StateMachine::StateSelector SimulationApi::smCreateFrame() { generateFrame(); startTriggerTimer(); return StateMachine::firstState; }