/**/ #include #include #include/*TOUHOU*/ #include/*.BUNKA*/ #define z(u,n)gl##n##u/*CHOU*/ typedef double x;typedef int _;_ A,y,a,_w,w; T(){glutInitDisplayMode(GLUT_RGBA|GLUT_DOUBLE);z(ow ,utSetWind)(glutCreateWindow("Aya"));a=GL_SRC_ALPHA;z(ble ,Ena)(GL_BLEND);glBlendFunc(a,GL_ONE_MINUS_SRC_ALPHA);glEnable( GL_TEXTURE_2D);}W(_ O){glTexParameteri(GL_TEXTURE_2D,O,GL_NEAREST); }V(x O,x P,x Q,x R){glTexCoord2d(O,P);glVertex2d(Q,R);}unsigned char*p,b [0x4000];B(_ O){glMatrixMode(O);glLoadIdentity();}C(){glDrawBuffer(GL_BACK); glClear(GL_COLOR_BUFFER_BIT);glViewport(0,0,a=glutGet(GLUT_WINDOW_WIDTH),y=z(et ,utG)(GLUT_WINDOW_HEIGHT));B(GL_PROJECTION);if(a>y)gluOrtho2D(-a/(x)y,a/(x)y,-1,1); else{gluOrtho2D(-1,1,-y/(x)a,y/(x)a);}B(GL_MODELVIEW); }x X(x O){return O*(x)(rand()& 0x3fff)/8191.-O;}x BUN[]={.9,.98,1,0,-1},KA[]={.32,.98 ,.36,.12,.54,.12,.58,.98,.9,.98 ,1 ,0,-1},CHOU[]={.56,.99,.58,.7,.9,0,-1},t,u,v;Z(){ struct timeval U;gettimeofday(&U , NULL);u=U.tv_sec+U.tv_usec/1e6;}x c,d,r,s,i,j,k,l ,m,n;I(){Z();srand(u);C();s=(u-l)/ 1.5;for(a=0;a<23;a++){if( (j=s-a/23.)>=0){r =j*2.1;for(y=0;y<32;y++){m=i+y*d/16. ;k=j*((c+y*d/16.0)-m)+m; if(a& 1 )k+= d/32.;glPushMatrix();glTranslated(r* cos(k) +n, r*sin(k)+t,0) ;z (st ,/* ,*/ CallLi)(w);glPopMatrix();}}} if(2.2 s) { for(;(j=*q++)>s;){k=(* q++) ;if(r255)A=255;*p++=A;if((A = o(KA))>255)A=255;*p++=A;*p++=A;A= o(CHOU);if( A>255)A= 255; *p++=A; }}T(); D() ;}