I guess I can just put this up. Most of these have been sitting here forever.
This commit is contained in:
commit
d2777092d1
26 changed files with 5347 additions and 0 deletions
32
mkssao.c
Normal file
32
mkssao.c
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <time.h>
|
||||
#include <math.h>
|
||||
|
||||
#define frand() ((double)rand()/(double)(RAND_MAX))
|
||||
|
||||
int main( int argc, char **argv )
|
||||
{
|
||||
double samp[3];
|
||||
unsigned i, max = 16, domult = 0, hemi = 0;
|
||||
if ( argc > 1 ) sscanf(argv[1],"%u",&max);
|
||||
if ( argc > 2 ) sscanf(argv[2],"%u",&domult);
|
||||
if ( argc > 3 ) sscanf(argv[3],"%u",&hemi);
|
||||
double sum, mult;
|
||||
srand(time(0));
|
||||
for ( i=0; i<max; i++ )
|
||||
{
|
||||
mult = domult?((double)(i+1)/(double)max):1.;
|
||||
if ( domult > 1 ) mult = pow(mult,domult);
|
||||
samp[0] = frand()*2.-1.;
|
||||
samp[1] = frand()*2.-1.;
|
||||
samp[2] = (hemi)?(frand()):(frand()*2.-1.);
|
||||
sum = sqrt(samp[0]*samp[0]+samp[1]*samp[1]+samp[2]*samp[2]);
|
||||
samp[0] = (samp[0]/sum)*mult;
|
||||
samp[1] = (samp[1]/sum)*mult;
|
||||
samp[2] = (samp[2]/sum)*mult;
|
||||
printf("float3(% .4lf,% .4lf,% .4lf)%s",samp[0],samp[1],
|
||||
samp[2],(i%2)?(i<max-1)?",\n":"\n":",");
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue