75 lines
3.6 KiB
C++
75 lines
3.6 KiB
C++
|
/*************************************************************************/
|
||
|
/* */
|
||
|
/* Copyright (c) 1994 Stanford University */
|
||
|
/* */
|
||
|
/* All rights reserved. */
|
||
|
/* */
|
||
|
/* Permission is given to use, copy, and modify this software for any */
|
||
|
/* non-commercial purpose as long as this copyright notice is not */
|
||
|
/* removed. All other uses, including redistribution in whole or in */
|
||
|
/* part, are forbidden without prior written permission. */
|
||
|
/* */
|
||
|
/* This software is provided with absolutely no warranty and no */
|
||
|
/* support. */
|
||
|
/* */
|
||
|
/*************************************************************************/
|
||
|
|
||
|
/******************************************************************************
|
||
|
* *
|
||
|
* user_options.h: Compile-time user options *
|
||
|
* *
|
||
|
******************************************************************************/
|
||
|
|
||
|
|
||
|
/* For varying image tile size*/
|
||
|
|
||
|
#ifndef BLOCK_LEN
|
||
|
#define BLOCK_LEN 4 /* image block size */
|
||
|
#endif
|
||
|
|
||
|
|
||
|
/* For doing different parts of the computation differently;
|
||
|
If RENDER_ONLY is defined, then the program assumes that the .norm, .opc
|
||
|
and .pyr files already exist and just does rendering, getting its input
|
||
|
from these files. If RENDER_ONLY is not defined, then the program will
|
||
|
not use these files but start from the .den file itself. In this case,
|
||
|
there are two options: if PREPROCESS is defined, then the program will
|
||
|
not render, but will create the .norm, .opc and .pyr files from the .den
|
||
|
file for a future run of the program to render. If PREPROCESS is not
|
||
|
defined either, then the program will not produce these intermediate
|
||
|
files: It will start from the .den file, create the normal and opacity
|
||
|
tables etc as internal data structures, and render them directly.
|
||
|
|
||
|
The SERIAL_PREPROC option tells whether the preprocessing phases (computing
|
||
|
the normal table or .norm file, etc.), should be done serially or in
|
||
|
parallel, when they are done.
|
||
|
|
||
|
Clearly, if none of the three options are defined, the default is to
|
||
|
do parallel preprocessing and rendering without storing intermediate array
|
||
|
values.
|
||
|
*/
|
||
|
|
||
|
#if 0
|
||
|
#define RENDER_ONLY /* to just do rendering from */
|
||
|
#endif /* .norm, .opc and .pyr files*/
|
||
|
|
||
|
#if 0
|
||
|
#define PREPROCESS /* to just do preprocessing */
|
||
|
#endif /* and store result to files */
|
||
|
|
||
|
#if 1
|
||
|
#define SERIAL_PREPROC /* to do serial preprocessing*/
|
||
|
#endif /* with parallel rendering */
|
||
|
|
||
|
#if 0
|
||
|
#define DIM /* render rotations along */
|
||
|
#endif /* all three Cartesian axes. */
|
||
|
/* This means that there will be 3*ROTATE_STEPS frames rendered */
|
||
|
|
||
|
|
||
|
/* Algorithmic optimization options (adaptivity, use of octree) */
|
||
|
#ifndef HBOXLEN
|
||
|
#define HBOXLEN 4 /* highest_boxlen */
|
||
|
#endif
|
||
|
|