home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / graphic / qrt / qrt15inp.zoo / wall_sph.qrt < prev   
Text File  |  1989-03-26  |  6KB  |  254 lines

  1. {**************************************************
  2.  
  3.     Walls with sphere - demonstrates pattern
  4.     mapping to sphere surfaces.
  5.  
  6.     Rendered with QRT ray tracer on Amiga 1000
  7.  
  8.     - Steve Koren   8 Jun 88
  9.  
  10.  **************************************************}
  11.  
  12.  
  13. FILE_NAME = Wall_Sphere.RAW
  14.  
  15. { *********   Some pattern definitions ********** }
  16.  
  17. PATTERN ( x_size = 16,                 { ** A stripe pattern ** }
  18.           y_size = 8,                  { ** for the sphere ** }
  19.           name   = MIRROR_STRIPE,
  20.  
  21.           RECTANGLE (
  22.             start_x = 0, start_y = 0,
  23.             end_x   = 16, end_y   = 4,
  24.  
  25.             diff    = (.1, .1, .1),
  26.             mirror  = (.8, .8, .8),
  27.           )
  28.         )
  29.  
  30. PATTERN ( x_size = 60,                 { ** Checkered pattern ** }
  31.           y_size = 60,
  32.           name   = CHECK,
  33.           RECTANGLE (
  34.             start_x = 0,
  35.             start_y = 0,
  36.             end_x   = 30,
  37.             end_y   = 30,
  38.             diff    = (.1,1.0,.1),
  39.           )
  40.           RECTANGLE (
  41.             start_x = 30,
  42.             start_y = 30,
  43.             end_x   = 60,
  44.             end_y   = 60,
  45.             diff    = (.1,1.0,.1),
  46.           )
  47.         )
  48.  
  49. PATTERN ( x_size = 40,                 { ** Checkered pattern ** }
  50.           y_size = 40,
  51.           name   = CHECK_BLUE,
  52.           RECTANGLE (
  53.             start_x = 0,
  54.             start_y = 0,
  55.             end_x   = 20,
  56.             end_y   = 20,
  57.             diff    = (.7,.2,.7)
  58.             amb     = (.32, .32, .32),
  59.             reflect = .55
  60.             sreflect= 20
  61.           )
  62.           RECTANGLE (
  63.             start_x = 20,
  64.             start_y = 20,
  65.             end_x   = 40,
  66.             end_y   = 40,
  67.             diff    = (.7,.5,.7),
  68.             amb     = (.32, .32, .32),
  69.             reflect = .55
  70.             sreflect= 20
  71.           )
  72.         )
  73. PATTERN ( x_size = 80,                    { ** brick pattern ** }
  74.           y_size = 50,
  75.           name   = BRICK,
  76.           RECTANGLE (                     { 1st half brick 1 }
  77.             start_x = 0, start_y = 2,
  78.             end_x   = 18, end_y   = 23,
  79.             diff    = (1.00, .20, .20);
  80.           )
  81.           RECTANGLE (                     { 2nd hald brick 1 }
  82.             start_x = 62, start_y = 2,
  83.             end_x   = 80, end_y   = 23,
  84.             diff    = (1.00, .20, .20);
  85.           )
  86.           RECTANGLE (                     { brick 2 }
  87.             start_x = 22, start_y = 2,
  88.             end_x   = 58, end_y   = 23,
  89.             diff    = (.80, .20, .20);
  90.           )
  91.           RECTANGLE (                     { brick 3 }
  92.             start_x = 2, start_y = 27,
  93.             end_x   = 38, end_y   = 48,
  94.             diff    = (.85, .35, .10);
  95.           )
  96.           RECTANGLE (                     { brick 4 }
  97.             start_x = 42, start_y = 27,
  98.             end_x   = 78, end_y   = 48,
  99.             diff    = (.70, .25, .20);
  100.           )
  101.         )
  102.  
  103. { *********************  OBJECTS  ********************* }
  104.  
  105. { ** ground ** }
  106.  
  107. PARALLELOGRAM ( loc  = (  -10000, 0,  -10000),
  108.                 v1   = (20000, 0,    0),
  109.                 v2   = (  0, 0, 20000),
  110.  
  111.                 diff = (  .8, .8, 0),
  112.                 pattern = CHECK
  113.                 xmult = 2
  114.                 ymult = 2
  115.               )
  116.  
  117.  
  118. BEGIN_BBOX
  119.  
  120.     BEGIN_BBOX
  121.  
  122.         SPHERE ( loc = (200, 50, -80),
  123.                  radius = 35,
  124.                  diff = (.7, .3, .5),
  125.  
  126.                  pattern = MIRROR_STRIPE,
  127.                  xmult   = 1.5,
  128.                  ymult   = 1.5
  129.                )
  130.  
  131.         QUADRATIC ( loc = (200, 0, -80),
  132.  
  133.                     a    = 1,
  134.                     b    = 0,
  135.                     c    = 1,
  136.                     d    = 150,
  137.                     xmin = -13,
  138.                     xmax = 13,
  139.                     ymin = 0,
  140.                     ymax = 50,
  141.                     zmin = -13,
  142.                     zmax = 13,
  143.  
  144.                     diff = (.1, .1, .1),
  145.                     mirror = (.8, .8, .8)
  146.                   )
  147.  
  148.     END_BBOX
  149.  
  150.  
  151.     BEGIN_BBOX
  152.  
  153.         SPHERE ( loc      = (200, 90, 80),
  154.                  radius   = 35,
  155.                  diff     = (.3, .3, .8),
  156.                  amb      = (.32, .32, .32),
  157.                  reflect  = .40
  158.                  sreflect = 20
  159.  
  160.                  pattern = CHECK_BLUE,
  161.                  xmult   = 1.0,
  162.                  ymult   = 1.0
  163.                )
  164.  
  165.         QUADRATIC ( loc = (200, 0, 80),
  166.  
  167.                     a    = 1,
  168.                     b    = 0,
  169.                     c    = 1,
  170.                     d    = 150,
  171.                     xmin = -13,
  172.                     xmax = 13,
  173.                     ymin = 0,
  174.                     ymax = 90,
  175.                     zmin = -13,
  176.                     zmax = 13,
  177.  
  178.                     diff = (.1, .1, .1),
  179.                     mirror = (.8, .8, .8)
  180.                   )
  181.  
  182.     END_BBOX
  183.  
  184. END_BBOX
  185.  
  186.  
  187. BEGIN_BBOX
  188.  
  189.     { ** a small brick wall ** }
  190.  
  191.     PARALLELOGRAM ( loc = (150, 00, -15),
  192.                     v1  = (0, 0, 30),
  193.                     v2  = (0, 100, 0)
  194.  
  195.                     diff = (1, 1, 1),
  196.                     pattern = BRICK
  197.  
  198.                     xmult = .5,
  199.                     ymult = .5
  200.                   )
  201.  
  202.     PARALLELOGRAM ( loc = (150, 00, -15),
  203.                     v1  = (100, 0, 0),
  204.                     v2  = (0, 100, 0)
  205.  
  206.                     diff = (1, 1, 1),
  207.                     pattern = BRICK
  208.  
  209.                     xmult = .5,
  210.                     ymult = .5
  211.                   )
  212.  
  213.     PARALLELOGRAM ( loc = (150, 00, 15),
  214.                     v1  = (100, 0, 0),
  215.                     v2  = (0, 100, 0)
  216.  
  217.                     diff = (1, 1, 1),
  218.                     pattern = BRICK
  219.  
  220.                     xmult = .5,
  221.                     ymult = .5
  222.                   )
  223.  
  224. END_BBOX
  225.  
  226.  
  227. { ** An observer ** }
  228.  
  229. OBSERVER ( loc    = (-20 , 70, -40),
  230.            lookat = (200, 50, 0)
  231.          )
  232.  
  233. { ** A lamp ** }
  234.  
  235. LAMP ( loc = (120, 120, -50),
  236.        radius = 5,
  237.        dist = 80
  238.      )
  239.  
  240. LAMP ( loc = (120, 150, 80),
  241.        radius = 5,
  242.        dist = 70
  243.      )
  244.  
  245. SKY  ( horiz  = (.2, .2, .55),
  246.        zenith = (.1, .1, .25),
  247.        dither = 4
  248.      )
  249.  
  250. FOC_LENGTH = 50
  251.  
  252.  
  253.  
  254.