home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / raytrace / radiance / simplerd.lha / simplerad / FinalFTP / Light / io.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-05-21  |  3.3 KB  |  79 lines

  1. /**********************************************************************/
  2. /* io.h : i/o options                                                 */
  3. /*                                                                    */
  4. /* Modified from Optik v(1.2e) (C) 1987 John Amanatides & Andrew Woo  */
  5. /*                                                                    */
  6. /* Copyright (C) 1992, Bernard Kwok                                   */
  7. /* All rights reserved.                                               */
  8. /* Revision 1.0                                                       */
  9. /* May, 1992                                                          */
  10. /**********************************************************************/
  11. #ifndef IO_H
  12. #define IO_H
  13.  
  14. /* output devices */
  15. #define PRINT        1
  16. #define FILES        2
  17.  
  18. /* options */
  19. #define DEBUG        1
  20. #define NO_DEBUG    2
  21. #define GRID        3
  22. #define NO_GRID        4
  23. #define JITTER        5
  24. #define NO_JITTER    6
  25. #define ORTHO        7
  26. #define PERSP        8
  27. #define RAY_TRACE    9
  28. #define RAY_CAST    10
  29. #define FORM_FACTOR    11
  30. #define SHADOW        12
  31. #define NO_SHADOW    13
  32. #define STATISTICS    14
  33. #define NO_STATISTICS    15
  34. #define TRANSFORM    16
  35. #define NO_TRANSFORM    17
  36.  
  37. /**********************************************************************/
  38. typedef struct {
  39.   int debug;        /* if true, debug data may be printed        */
  40.   int statistics;    /* If true, print grid statistics            */
  41.   int tablelog;         /* Write results as table                    */
  42.   char *tablelogstr;    /* Table name                                */
  43.   int show_pr_steps;    /* If true, show progressive refinement steps*/
  44.   int print_scene;      /* Print input and output logs to files      */
  45.   int write_result;     /* Output results of program                 */
  46.  
  47.   int ff_raytrace;      /* Hemicube or ray trace form factors       */
  48.   int grid;        /* if TRUE, then use object bounding volume 
  49.                hierarchy for intersection reduction      */
  50.   int poly_grid;        /* if TRUE use poly + object bounding volume
  51.                hierarchy */
  52.   int rayTransform;    /* if TRUE: transform ray to model space 
  53.                before doing intersect calc, else do 
  54.                intersection test in world space */
  55.   int visibility;    /* either RAY_TRACE, RAY_CAST or FORM_FACTOR */
  56.   int shadow;        /* if TRUE then shadows computed             */
  57.  
  58.   int rad_interp_type;  /* How to interpolate radiosity             */ 
  59.   int ambient;          /* of TRUE, use an ambient term             */
  60.  
  61.   int device;        /* for the various devices                  */
  62.   char *meshfilename;   /* Input mesh                               */ 
  63.   char *textfilename;   /* Input textures                           */ 
  64.   char *viewfilename;   /* Input viewfile                           */
  65.   char *DebugFilename;  /* Log of statistics                        */
  66.   char *InLogFilename;  /* Log of input scene                       */
  67.   char *OutLogFilename; /* Log of output scene                      */
  68.   FILE *StatFile;       /* Log of statistics                        */
  69.   char *StatFilename;   
  70.   char *OutSceneFilename; /* Output scene                           */
  71.   int VCRmode;          /* mode for VCR                             */
  72.   int UseVCR;           /* Record stuff on VCR                      */
  73.  
  74.   int alpha;        /* if TRUE, the alpha channel is used       */
  75.   int perspective;    /* TRUE or FALSE                            */
  76. } OptionType;
  77.  
  78. #endif /* IO_H */
  79.