public class NoiseCamera { float camSphereRadius = 1000; float camTargReqX, camTarReqY, camTargReqZ; float camTargX, camTargY, camTargZ; float handNoiseX, handNoiseY, handNoiseZ; float camXPos, camYPos, camZPos; float posNoiseScale=0.005; float handNoiseScale=0.05; float posFrameCount = 0; float posFrameInc = 0.5; void drawCamera(int camSpeed, float camTargReqX,float camTargReqY,float camTargReqZ) { if (camTargReqX > camTargX) { camTargX = camTargX + ((camTargReqX - camTargX) / camSpeed); } else { camTargX = camTargX - ((camTargX - camTargReqX) / camSpeed); } if (camTargReqY > camTargY) { camTargY = camTargY + ((camTargReqY - camTargY) / camSpeed); } else { camTargY = camTargY - ((camTargY - camTargReqY) / camSpeed); } if (camTargReqZ > camTargZ) { camTargZ = camTargZ + ((camTargReqZ - camTargZ) / camSpeed); } else { camTargZ = camTargZ - ((camTargZ - camTargReqZ) / camSpeed); } posFrameCount += posFrameInc; camXPos = camSphereRadius * (noise((posFrameCount)*posNoiseScale)-.5); camYPos = camSphereRadius * (noise((posFrameCount)*posNoiseScale, (posFrameCount)*posNoiseScale)-.5); camZPos = camSphereRadius * (noise((posFrameCount)*posNoiseScale, (posFrameCount)*posNoiseScale, (posFrameCount)*posNoiseScale)-.5); camera( camXPos, camYPos, camZPos, camTargX, camTargY, camTargZ, 0.0, 1.0, 0.0 ); } }