home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Raytrace & Morphing / SOS-RAYTRACE.ISO / programm / raytrace / polyray / dat / animate / ufo / sequence.inc < prev    next >
Encoding:
Text File  |  1994-03-13  |  1.2 KB  |  34 lines

  1. //
  2. // Build the segment counter "segment" and linear interpolating variable
  3. // "increment" for each of the component pieces of the animation.
  4. //
  5.  
  6. // Define how many frames are used in each segment of the animation
  7. define segment_lengths [200, 50, 50, 100]
  8.  
  9. // Define arrays to hold the start/stop frames of each segment
  10. define start_times
  11.    [0, segment_lengths[0], segment_lengths[0] + segment_lengths[1],
  12.     segment_lengths[0] + segment_lengths[1] + segment_lengths[2]]
  13. define end_times   [start_times[0]+segment_lengths[0],
  14.             start_times[1]+segment_lengths[1],
  15.             start_times[2]+segment_lengths[2],
  16.             start_times[3]+segment_lengths[3]]
  17.  
  18. // Tell Polyray how many frames will be rendered
  19. start_frame  start_times[0]
  20. total_frames segment_lengths[0] + segment_lengths[1] + segment_lengths[2] +
  21.          segment_lengths[3]
  22. end_frame total_frames
  23.  
  24. // Determine which sequence we are doing
  25. define segment (frame < start_times[1] ? 0 :
  26.           (frame < start_times[2] ? 1 :
  27.              (frame < start_times[3] ? 2 : 3)))
  28.  
  29.  
  30. // Define the linear interpolation variable "increment" for this segment
  31. define t0 start_times[segment]
  32. define t1 end_times[segment]
  33. define increment (frame - t0) / (t1 - t0)
  34.