home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Raytrace & Morphing / SOS-RAYTRACE.ISO / programm / raytrace / qrtpro / building.qrt < prev    next >
Encoding:
Text File  |  1993-09-05  |  8.5 KB  |  314 lines

  1.  
  2. { *************************************************************
  3.  
  4.     "BUILDING.QRT"  - two modern high-rise office buildings,
  5.                       with a road between them.
  6.  
  7.       Rendered by QRT 1.5 on an HP 9000/370
  8.       Steve Koren, 14 Mar 89
  9.  
  10.       Image requires version 1.5 or later due to TRIANGLE()
  11.       bug in 1.1 -> 1.4.
  12.  
  13.   ************************************************************* }
  14.  
  15. FILE_NAME = Building.TGA
  16.  
  17. { *********   Some pattern definitions ********** }
  18.  
  19. PATTERN ( x_size = 60,                 { ** Checkered pattern ** }
  20.           y_size = 60,
  21.           name   = CHECK,
  22.           RECTANGLE (
  23.             start_x = 0,
  24.             start_y = 0,
  25.             end_x   = 30,
  26.             end_y   = 30,
  27.             diff    = (.1,1.0,.1),
  28.           )
  29.           RECTANGLE (
  30.             start_x = 30,
  31.             start_y = 30,
  32.             end_x   = 60,
  33.             end_y   = 60,
  34.             diff    = (.1,1.0,.1),
  35.           )
  36.         )
  37.  
  38. PATTERN ( x_size = 10,
  39.           y_size = 15,
  40.           name   = BUILDING_SIDE,
  41.           RECTANGLE (
  42.             start_x = 1,  start_y = 1,
  43.             end_x   = 9,  end_y   = 14
  44.  
  45.             diff    = (.2, .2, .2),
  46.             mirror  = (.75, .75, .75)
  47.           )
  48.         )
  49.    
  50. PATTERN ( x_size = 10,
  51.           y_size = 15,
  52.           name = BUILDING_STRIPE
  53.           RECTANGLE (
  54.             start_x = 0,  start_y = 3,
  55.             end_x   = 10, end_y = 12;
  56.  
  57.             diff    = (.2, .2, .2),
  58.             mirror  = (.65, .65, .65)
  59.           )
  60.         )
  61.  
  62.  
  63.    { **************** SIDE ONE ******************* }
  64.    
  65. BEGIN_BBOX
  66.  
  67.    BEGIN_BBOX
  68.    
  69.       PARALLELOGRAM ( loc    = (100, 0, 0),
  70.                       v1     = (0, 0, 70),
  71.                       v2     = (0, 60, 0)
  72.                       diff   = (.4, .4, .4)
  73.                       pattern= BUILDING_SIDE
  74.                     )
  75.    
  76.       TRIANGLE      ( loc    = (100, 60, 0),
  77.                       v1     = (0, 0, 70),
  78.                       v2     = (62, 0, 35)
  79.                       diff   = (.2, .2, .7)
  80.                     )
  81.    
  82.       PARALLELOGRAM ( loc    = (100, 60, 0),
  83.                       v1     = (62, 0, 35),
  84.                       v2     = (0, 60, 0)
  85.                       diff   = (.4, .4, .4)
  86.                       pattern= BUILDING_SIDE
  87.                     )
  88.    
  89.    { **************** SIDE TWO ******************* }
  90.    
  91.       PARALLELOGRAM ( loc    = (100, 0, 0),
  92.                       v1     = (62, 0, -35),
  93.                       v2     = (0, 120, 0)
  94.                       diff   = (.4, .4, .4)
  95.                       pattern= BUILDING_SIDE
  96.                     )
  97.    
  98.       TRIANGLE      ( loc    = (100, 120, 0),
  99.                       v1     = (62, 0, 35),
  100.                       v2     = (62, 0, -35)
  101.                       diff   = (.2, .2, .7)
  102.                     )
  103.    
  104.    END_BBOX
  105.    
  106.    BEGIN_BBOX
  107.       PARALLELOGRAM ( loc    = (162, 120, -35)
  108.                       v1     = (0, 0, 70),
  109.                       v2     = (0, 60, 0),
  110.                       diff   = (.4, .4, .4)
  111.                       pattern= BUILDING_SIDE
  112.                     )
  113.    
  114.    { **************** SIDE THREE ******************* }
  115.    
  116.       PARALLELOGRAM ( loc    = (162, 0, -35),
  117.                       v1     = (62, 0, 35),
  118.                       v2     = (0, 180, 0)
  119.                       diff   = (.4, .4, .4)
  120.                       pattern= BUILDING_SIDE
  121.                     )
  122.    
  123.       TRIANGLE      ( loc    = (162, 180, -35),
  124.                       v1     = (0, 0, 70),
  125.                       v2     = (62, 0, 35)
  126.                       diff   = (.2, .2, .7)
  127.                     )
  128.       
  129.       PARALLELOGRAM ( loc    = (224, 180, 0)
  130.                       v1     = (-62, 0, 35),
  131.                       v2     = (0, 60, 0),
  132.                       diff   = (.4, .4, .4)
  133.                       pattern= BUILDING_SIDE
  134.                     )
  135.    
  136.    END_BBOX
  137.    
  138.    { **************** SIDE FOUR ******************* }
  139.    
  140.    BEGIN_BBOX
  141.    
  142.       PARALLELOGRAM ( loc    = (224, 0, 0),
  143.                       v1     = (0, 0, 70),
  144.                       v2     = (0, 240, 0) 
  145.                       diff   = (.4, .4, .4)
  146.                       pattern= BUILDING_SIDE
  147.                     )
  148.       
  149.       TRIANGLE      ( loc    = (224, 240, 0)
  150.                       v1     = (0,0, 70),
  151.                       v2     = (-62, 0, 35)
  152.                       diff   = (.2, .2, .7)
  153.                     )
  154.    
  155.       PARALLELOGRAM ( loc    = (224, 240, 70)
  156.                       v1     = (-62, 0, -35),
  157.                       v2     = (0, 60, 0),
  158.                       diff   = (.4, .4, .4)
  159.                       pattern= BUILDING_SIDE
  160.                     )
  161.    
  162.    { **************** SIDE FIVE ******************* }
  163.    
  164.       PARALLELOGRAM ( loc    = (224, 0, 70),
  165.                       v1     = (-62, 0, 35),
  166.                       v2     = (0, 300, 0)
  167.                       diff   = (.4, .4, .4)
  168.                       pattern= BUILDING_SIDE
  169.                     )
  170.    
  171.       TRIANGLE      ( loc    = (224, 300, 70),
  172.                       v1     = (-62, 0, 35),
  173.                       v2     = (-62, 0, -35)
  174.                       diff   = (.2, .2, .7)
  175.                     )
  176.    
  177.    END_BBOX
  178.    
  179.    BEGIN_BBOX
  180.    
  181.    PARALLELOGRAM ( loc    = (162, 300, 105)
  182.                    v1     = (0, 0, -70),
  183.                    v2     = (0, 60, 0),
  184.                    diff   = (.4, .4, .4)
  185.                    pattern= BUILDING_SIDE
  186.                  )
  187.    
  188.    { **************** SIDE SIX ******************* }
  189.    
  190.       PARALLELOGRAM ( loc    = (100, 0, 70),
  191.                       v1     = (62, 0, 35),
  192.                       v2     = (0, 360, 0)
  193.                       diff   = (.4, .4, .4)
  194.                       pattern= BUILDING_SIDE
  195.                     )
  196.       
  197.       TRIANGLE      ( loc    = (100, 360, 70),
  198.                       v1     = (62, 0, 35),
  199.                       v2     = (62, 0, -35)
  200.                       diff   = (.2, .2, .7)
  201.                     )
  202.       
  203.       PARALLELOGRAM ( loc    = (100, 60, 70)
  204.                       v1     = (62, 0, -35),
  205.                       v2     = (0, 300, 0),
  206.                       diff   = (.4, .4, .4)
  207.                       pattern= BUILDING_SIDE
  208.                     )
  209.  
  210.    END_BBOX
  211.  
  212. END_BBOX
  213.  
  214.  
  215. { ******** PYRAMID shaped building ********** }
  216.  
  217. BEGIN_BBOX
  218.  
  219.    TRIANGLE ( loc    = (120, 0,   200),
  220.               v1     = (0,   0,   100),
  221.               v2     = (43,  250, 50),
  222.               diff   = (.6, .2,   .2),
  223.               pattern= BUILDING_STRIPE
  224.             )
  225.  
  226.    TRIANGLE ( loc    = (120, 0,   200),
  227.               v1     = (86,  0,   50),
  228.               v2     = (43,  250, 50),
  229.               diff   = (.6, .2,   .2),
  230.               pattern= BUILDING_STRIPE
  231.             )
  232.  
  233.    TRIANGLE ( loc    = (120, 0,   300),
  234.               v1     = (86,  0,   -50),
  235.               v2     = (43,  250, -50),
  236.               diff   = (.6, .2, .2),
  237.               pattern= BUILDING_STRIPE
  238.             )
  239. END_BBOX
  240.  
  241. { **** THE GROUND AND SOME ROADS *** }
  242.  
  243. BEGIN_BBOX
  244.  
  245.     PARALLELOGRAM ( loc   = (60, .01, -500)
  246.                     v1    = (20, 0, 0)
  247.                     v2    = (0, 0, 1000)
  248.                     diff  = (.4, .4, .4)
  249.                   )
  250.  
  251.     PARALLELOGRAM ( loc   = (-150, .01, 150)
  252.                     v1    = (500, 0, 0)
  253.                     v2    = (0, 0, 20)
  254.                     diff  = (.4, .4, .4)
  255.                   )
  256.  
  257.  
  258. END_BBOX
  259.  
  260.  
  261. { ** Ground - try a big spherical one for effect ** }
  262.  
  263. SPHERE  ( loc    = (100, -5000, 0),
  264.           radius = 5000,
  265.           diff   = (.8, .8, 0),
  266.           pattern= CHECK,
  267.           xmult  = 2.5,
  268.           ymult  = 2.5
  269.         )
  270.  
  271. {
  272.    PARALLELOGRAM ( loc  = (  -3000, 0,  -3000),  { ** big! ** }
  273.                    v1   = (6000,    0,      0),
  274.                    v2   = (  0,     0,   6000),
  275.  
  276.                    diff = (  .8, .8, 0),
  277.                    pattern = CHECK
  278.                    xmult = 2
  279.                    ymult = 2
  280.                  )
  281. }
  282.  
  283.  
  284. { ** An observer ** }
  285.  
  286. OBSERVER ( loc    = (-200, 400, -80)
  287.            lookat = (150, 150, 90)
  288.          )
  289.  
  290. { ** Lights (but not Bud lights) ** }
  291.  
  292. LAMP ( loc = (30, 540, 60),
  293.        radius = 5,
  294.        dist = 300
  295.      )
  296.  
  297. LAMP ( loc = (240, 400, -5),
  298.        radius = 5,
  299.        dist = 200
  300.      )
  301.  
  302. SKY  ( horiz  = (.3, .3, .75),
  303.        zenith = (.1, .1, .60),
  304.        dither = 4
  305.      )
  306.  
  307. DEFAULT ( x_res = 640
  308.           y_res = 480
  309.           aspect= 1.0
  310.         )
  311.  
  312. FOC_LENGTH = 65
  313.  
  314.