1/* 2 * (c) Copyright 1993, Silicon Graphics, Inc. 3 * ALL RIGHTS RESERVED 4 * Permission to use, copy, modify, and distribute this software for 5 * any purpose and without fee is hereby granted, provided that the above 6 * copyright notice appear in all copies and that both the copyright notice 7 * and this permission notice appear in supporting documentation, and that 8 * the name of Silicon Graphics, Inc. not be used in advertising 9 * or publicity pertaining to distribution of the software without specific, 10 * written prior permission. 11 * 12 * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" 13 * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, 14 * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR 15 * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON 16 * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, 17 * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY 18 * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, 19 * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF 20 * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN 21 * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON 22 * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE 23 * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. 24 * 25 * US Government Users Restricted Rights 26 * Use, duplication, or disclosure by the Government is subject to 27 * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph 28 * (c)(1)(ii) of the Rights in Technical Data and Computer Software 29 * clause at DFARS 252.227-7013 and/or in similar or successor 30 * clauses in the FAR or the DOD or NASA FAR Supplement. 31 * Unpublished-- rights reserved under the copyright laws of the 32 * United States. Contractor/manufacturer is Silicon Graphics, 33 * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. 34 * 35 * OpenGL(TM) is a trademark of Silicon Graphics, Inc. 36 */ 37/* 38jitter.h 39 40This file contains jitter point arrays for 2,3,4,8,15,24 and 66 jitters. 41 42The arrays are named j2, j3, etc. Each element in the array has the form, 43for example, j8[0].x and j8[0].y 44 45Values are floating point in the range -.5 < x < .5, -.5 < y < .5, and 46have a gaussian distribution around the origin. 47 48Use these to do model jittering for scene anti-aliasing and view volume 49jittering for depth of field effects. Use in conjunction with the 50accwindow() routine. 51*/ 52 53typedef struct 54{ 55 GLfloat x, y; 56} jitter_point; 57 58#define MAX_SAMPLES 66 59 60 61/* 2 jitter points */ 62jitter_point j2[] = 63{ 64 { 0.246490, 0.249999}, 65 {-0.246490, -0.249999} 66}; 67 68 69/* 3 jitter points */ 70jitter_point j3[] = 71{ 72 {-0.373411, -0.250550}, 73 { 0.256263, 0.368119}, 74 { 0.117148, -0.117570} 75}; 76 77 78/* 4 jitter points */ 79jitter_point j4[] = 80{ 81 {-0.208147, 0.353730}, 82 { 0.203849, -0.353780}, 83 {-0.292626, -0.149945}, 84 { 0.296924, 0.149994} 85}; 86 87 88/* 8 jitter points */ 89jitter_point j8[] = 90{ 91 {-0.334818, 0.435331}, 92 { 0.286438, -0.393495}, 93 { 0.459462, 0.141540}, 94 {-0.414498, -0.192829}, 95 {-0.183790, 0.082102}, 96 {-0.079263, -0.317383}, 97 { 0.102254, 0.299133}, 98 { 0.164216, -0.054399} 99}; 100 101 102/* 15 jitter points */ 103jitter_point j15[] = 104{ 105 { 0.285561, 0.188437}, 106 { 0.360176, -0.065688}, 107 {-0.111751, 0.275019}, 108 {-0.055918, -0.215197}, 109 {-0.080231, -0.470965}, 110 { 0.138721, 0.409168}, 111 { 0.384120, 0.458500}, 112 {-0.454968, 0.134088}, 113 { 0.179271, -0.331196}, 114 {-0.307049, -0.364927}, 115 { 0.105354, -0.010099}, 116 {-0.154180, 0.021794}, 117 {-0.370135, -0.116425}, 118 { 0.451636, -0.300013}, 119 {-0.370610, 0.387504} 120}; 121 122 123/* 24 jitter points */ 124jitter_point j24[] = 125{ 126 { 0.030245, 0.136384}, 127 { 0.018865, -0.348867}, 128 {-0.350114, -0.472309}, 129 { 0.222181, 0.149524}, 130 {-0.393670, -0.266873}, 131 { 0.404568, 0.230436}, 132 { 0.098381, 0.465337}, 133 { 0.462671, 0.442116}, 134 { 0.400373, -0.212720}, 135 {-0.409988, 0.263345}, 136 {-0.115878, -0.001981}, 137 { 0.348425, -0.009237}, 138 {-0.464016, 0.066467}, 139 {-0.138674, -0.468006}, 140 { 0.144932, -0.022780}, 141 {-0.250195, 0.150161}, 142 {-0.181400, -0.264219}, 143 { 0.196097, -0.234139}, 144 {-0.311082, -0.078815}, 145 { 0.268379, 0.366778}, 146 {-0.040601, 0.327109}, 147 {-0.234392, 0.354659}, 148 {-0.003102, -0.154402}, 149 { 0.297997, -0.417965} 150}; 151 152 153/* 66 jitter points */ 154jitter_point j66[] = 155{ 156 { 0.266377, -0.218171}, 157 {-0.170919, -0.429368}, 158 { 0.047356, -0.387135}, 159 {-0.430063, 0.363413}, 160 {-0.221638, -0.313768}, 161 { 0.124758, -0.197109}, 162 {-0.400021, 0.482195}, 163 { 0.247882, 0.152010}, 164 {-0.286709, -0.470214}, 165 {-0.426790, 0.004977}, 166 {-0.361249, -0.104549}, 167 {-0.040643, 0.123453}, 168 {-0.189296, 0.438963}, 169 {-0.453521, -0.299889}, 170 { 0.408216, -0.457699}, 171 { 0.328973, -0.101914}, 172 {-0.055540, -0.477952}, 173 { 0.194421, 0.453510}, 174 { 0.404051, 0.224974}, 175 { 0.310136, 0.419700}, 176 {-0.021743, 0.403898}, 177 {-0.466210, 0.248839}, 178 { 0.341369, 0.081490}, 179 { 0.124156, -0.016859}, 180 {-0.461321, -0.176661}, 181 { 0.013210, 0.234401}, 182 { 0.174258, -0.311854}, 183 { 0.294061, 0.263364}, 184 {-0.114836, 0.328189}, 185 { 0.041206, -0.106205}, 186 { 0.079227, 0.345021}, 187 {-0.109319, -0.242380}, 188 { 0.425005, -0.332397}, 189 { 0.009146, 0.015098}, 190 {-0.339084, -0.355707}, 191 {-0.224596, -0.189548}, 192 { 0.083475, 0.117028}, 193 { 0.295962, -0.334699}, 194 { 0.452998, 0.025397}, 195 { 0.206511, -0.104668}, 196 { 0.447544, -0.096004}, 197 {-0.108006, -0.002471}, 198 {-0.380810, 0.130036}, 199 {-0.242440, 0.186934}, 200 {-0.200363, 0.070863}, 201 {-0.344844, -0.230814}, 202 { 0.408660, 0.345826}, 203 {-0.233016, 0.305203}, 204 { 0.158475, -0.430762}, 205 { 0.486972, 0.139163}, 206 {-0.301610, 0.009319}, 207 { 0.282245, -0.458671}, 208 { 0.482046, 0.443890}, 209 {-0.121527, 0.210223}, 210 {-0.477606, -0.424878}, 211 {-0.083941, -0.121440}, 212 {-0.345773, 0.253779}, 213 { 0.234646, 0.034549}, 214 { 0.394102, -0.210901}, 215 {-0.312571, 0.397656}, 216 { 0.200906, 0.333293}, 217 { 0.018703, -0.261792}, 218 {-0.209349, -0.065383}, 219 { 0.076248, 0.478538}, 220 {-0.073036, -0.355064}, 221 { 0.145087, 0.221726} 222}; 223