青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

天地之靈學(xué)習(xí)小組
我們學(xué)習(xí)小組的OpenGL學(xué)習(xí)筆記 大家一定要互相折磨呀~~
posts - 150,  comments - 156,  trackbacks - 0
  1 #include <GL/glut.h>
  2 #include <ctime>
  3 #include <cstdlib>
  4 
  5 static const int WindowWidth = 640;
  6 static const int WindowHeight = 480;
  7 
  8 int count = 0;
  9 int speed = 4;
 10 
 11 enum GridType
 12 {
 13     NOTHING, CAPSULE, WORM
 14 };
 15 
 16 enum Connect
 17 {
 18     NOT_CONNECTED, LEFT, RIGHT, UP, DOWN
 19 };
 20 
 21 enum Color
 22 {
 23     BLACK, YELLOW, BLUE, RED
 24 };
 25 
 26 enum DoctorDirect
 27 {
 28     DD_NODIRECT, DD_UP, DD_DOWN, DD_LEFT, DD_RIGHT
 29 };
 30 
 31 
 32 class Bottle
 33 {
 34 private:
 35     int b_x,b_y; //bottle的位置
 36     GridType b_grid_type[16][8];
 37     Color b_color[16][8];
 38     Connect b_connect[16][8];
 39 public:
 40     void drawBottle( void )
 41     {
 42         //畫瓶子的外殼
 43         glColor3f( 0.0f1.0f1.0f );
 44         glLineWidth(1);
 45         lineUpDown( 22016026*16 );
 46         //畫瓶子的內(nèi)部,根據(jù)b_x,b_y和瓶子的內(nèi)容物
 47     }
 48 
 49     void lineUpDown( int x, int y0, int yEnd )
 50     {
 51         glBegin( GL_LINES );
 52             glVertex2i( x, y0 );
 53             glVertex2i( x, yEnd );
 54         glEnd();
 55     }
 56 
 57     Bottle( int level, int xx, int yy )
 58     {
 59         int i; //vc6這點(diǎn)真是恨死人
 60         b_x = xx;
 61         b_y = yy;
 62         for ( i = 0; i < 16++i )
 63         {
 64             for ( int j = 0; j < 8++j )
 65             {
 66                 b_grid_type[i][j] = NOTHING;
 67                 b_color[i][j] = BLACK;
 68                 b_connect[i][j] = NOT_CONNECTED;
 69             }
 70         }
 71         for ( i = 0; i < level*4++i )
 72         {
 73             int x = rand()%16;
 74             int y = rand()%8;
 75             Color color = (Color)(rand()%3);
 76             if ( ok( x, y, color, level ) )
 77             {
 78                 b_grid_type[x][y] = WORM;
 79                 b_color[x][y] = color;
 80             }
 81             else
 82                 --i;
 83         }
 84     }
 85     bool ok( int x, int y, Color color, int level )
 86     {
 87         if ( level < 15 && x <= 6 ) return false;
 88         if ( ((level+1)>>1)+3+< 16 ) return false;
 89         if ( x-2 >= 0 && b_grid_type[x-1][y] == WORM && b_color[x-1][y] == color 
 90             && b_grid_type[x-2][y] == WORM && b_color[x-2][y] == color ) return false;
 91         if ( x+2 < 8 && b_grid_type[x+1][y] == WORM && b_color[x+1][y] == color 
 92             && b_grid_type[x+2][y] == WORM && b_color[x+2][y] == color ) return false;
 93         if ( y+2 < 16 && b_grid_type[x][y+1== WORM && b_color[x][y+1== color 
 94             && b_grid_type[x][y+2== WORM && b_color[x][y+2== color ) return false;
 95         if ( b_grid_type[x][y-1== WORM && b_color[x][y-1== color 
 96             && b_grid_type[x][y-2== WORM && b_color[x][y-2== color ) return false;
 97         return true;
 98     }
 99 };
100 
101 class Doctor
102 {
103 private:
104     int d_x,d_y; //活動(dòng)藥丸(左下角)相對(duì)于瓶子的位置
105     bool d_state; //橫的0,豎的1
106     Color d_color[2]; //倆藥丸的顏色
107     DoctorDirect d_direct;
108 public:
109     void drawDoctor( void )
110     {
111         //畫醫(yī)生的形象
112         //畫活動(dòng)藥丸
113     }
114     Doctor( void )
115     {
116         //確定初始位置
117         //隨機(jī)生成兩藥丸顏色
118     }
119     void move( void )
120     {
121         //偽碼就先不寫了,我紙上寫了一堆,思路很清晰
122     }
123     void fall( void )
124     {
125         d_direct = DD_DOWN;
126         move();
127     }
128     void setDirect( DoctorDirect direct )
129     {
130         d_direct = direct;
131     }
132 };
133 
134 static Bottle* bottle = NULL;
135 static Doctor* doctor = NULL;
136 
137 void init( void )
138 {
139     bottle = new Bottle( 311040 );
140     doctor = new Doctor();
141 }
142 
143 void key( unsigned char key_char, int not_use, int not_use_1 )
144 {
145     switch ( key_char )
146     {
147     case 'w':
148     case 'W':
149         doctor->setDirect( DD_UP );
150         break;
151     case 's':
152     case 'S':
153         doctor->setDirect( DD_DOWN );
154         break;
155     case 'a':
156     case 'A':
157         doctor->setDirect( DD_LEFT );
158         break;
159     case 'd':
160     case 'D':
161         doctor->setDirect( DD_RIGHT );
162         break;
163     default:
164         doctor->setDirect( DD_NODIRECT );
165     }
166 }
167 
168 bool dead( void )
169 {
170     return false;
171 }
172 
173 void step( void )
174 {
175     if ( dead() ) return ;
176     //還沒寫完
177     ++count; if ( count == speed ) { count = 0; doctor->fall(); }
178 }
179 
180 void timer( int not_use )
181 {
182     step();
183     glutPostRedisplay();
184     if ( !dead() )
185     {
186         glutTimerFunc( 1000/speed, timer, 0 );
187     }
188 }
189 
190 void drawBG( void )
191 {
192     int i,j;
193     glColor3f( 0.0f0.0f0.7f );
194     for ( i = 0; i < 32++i )
195     {
196         for ( j = 0; j < 30++j )
197         {
198             if ( ((i+j)&1== 0 )
199                 //畫方塊
200         }
201     }
202 }
203 
204 void draw( void )
205 {
206     drawBG();
207     bottle->drawBottle();
208     doctor->drawDoctor();
209 }
210 
211 void display( void )
212 {
213     glClear( GL_COLOR_BUFFER_BIT );
214     draw();
215     glutSwapBuffers();
216 }
217 
218 int main( int argc, char * argv[] )
219 {
220     srand( (unsigned int)time(NULL) );
221     glutInit( &argc, argv );
222     glutInitDisplayMode( GLUT_RGBA|GLUT_DOUBLE );
223     glutInitWindowPosition( 5050 );
224     glutInitWindowSize( WindowWidth, WindowHeight );
225     glutCreateWindow( "Dr Mario By PureMilk" );
226     glutDisplayFunc( display );
227     glutKeyboardFunc( key );
228     glutTimerFunc( 1000/speed, timer, 0 );
229     gluOrtho2D( 0, WindowWidth, WindowHeight, 0 );
230     glutMainLoop();
231     
232     return 0;
233 }
我就不多說啥了。碼代碼中。
歡迎飄。


<2008年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

常用鏈接

留言簿(6)

隨筆分類(149)

隨筆檔案(150)

同道中人

搜索

  •  

積分與排名

  • 積分 - 50617
  • 排名 - 457

最新隨筆

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美韩日亚洲| 欧美久久久久免费| 亚洲一区3d动漫同人无遮挡| 欧美在线播放一区| 午夜激情久久久| 欧美片第一页| 亚洲精品123区| 极品尤物久久久av免费看| 亚洲午夜高清视频| 一区二区三区精品久久久| 鲁大师成人一区二区三区| 久久精品国产综合精品| 国产精品一区二区女厕厕| 亚洲美女精品一区| 日韩视频在线播放| 麻豆精品视频| 欧美激情视频一区二区三区在线播放| 国产视频久久久久| 欧美一级午夜免费电影| 欧美在线观看一区二区三区| 欧美色中文字幕| 一区二区欧美在线观看| 亚洲性视频网址| 国产精品狠色婷| 亚洲无限av看| 久久精品1区| 国内视频一区| 久久影院午夜片一区| 理论片一区二区在线| 在线观看亚洲专区| 麻豆精品传媒视频| 亚洲欧洲在线免费| 亚洲一区二区三区免费观看| 欧美视频一二三区| 羞羞色国产精品| 久久综合九色| 亚洲区国产区| 欧美日韩一区三区四区| 中文在线一区| 久久免费黄色| 亚洲精品国产精品久久清纯直播 | 国产一区视频观看| 久久精品男女| 欧美韩日精品| 亚洲欧美另类国产| 国产亚洲精品资源在线26u| 久久欧美肥婆一二区| 亚洲国产欧美一区二区三区同亚洲| 日韩天堂在线观看| 国产精品卡一卡二| 久久蜜桃资源一区二区老牛| 亚洲激情视频在线播放| 午夜一区不卡| 亚洲国产精品久久久久秋霞蜜臀| 欧美精品999| 午夜激情久久久| 亚洲第一中文字幕在线观看| 亚洲在线电影| 一区在线视频观看| 欧美日韩一区在线播放| 欧美中在线观看| 日韩午夜av| 美国成人毛片| 亚洲综合国产| 亚洲精品久久久久| 国产日韩欧美二区| 欧美日韩国产大片| 久久国产精品一区二区三区| 日韩亚洲精品在线| 蜜臀91精品一区二区三区| 亚洲一区在线播放| 亚洲经典视频在线观看| 国产欧美视频一区二区| 欧美—级在线免费片| 久久精品二区三区| 亚洲视频在线观看网站| 亚洲国产日韩欧美在线图片| 久久精品主播| 亚洲嫩草精品久久| 亚洲精品久久视频| 伊人色综合久久天天| 国产精品免费小视频| 欧美日本韩国| 欧美成人精品激情在线观看| 亚洲私拍自拍| 夜夜嗨av一区二区三区中文字幕| 欧美成人精品在线视频| 久久理论片午夜琪琪电影网| 亚洲欧美国产77777| 夜夜狂射影院欧美极品| 亚洲人成人99网站| 在线视频国产日韩| 伊人精品在线| 韩国av一区二区| 国产午夜亚洲精品理论片色戒| 国产精品成人播放| 欧美日韩在线视频首页| 欧美日本韩国一区二区三区| 女同性一区二区三区人了人一| 久久久久免费视频| 久久精品成人一区二区三区| 欧美影片第一页| 欧美亚洲在线播放| 欧美一区免费| 久久国产精品免费一区| 久久精品久久综合| 久久亚洲国产成人| 久久久水蜜桃av免费网站| 久久在线91| 欧美a级片网站| 欧美激情在线狂野欧美精品| 欧美精品电影| 欧美日韩综合不卡| 欧美性色aⅴ视频一区日韩精品| 欧美三级第一页| 国产精品久久7| 国产日韩在线视频| 国产主播在线一区| 亚洲国产精品视频| 日韩视频一区二区在线观看 | 娇妻被交换粗又大又硬视频欧美| 国产综合欧美在线看| 一区二区三区无毛| 亚洲欧洲综合另类| 一本色道久久综合亚洲精品高清 | 亚洲欧美日本伦理| 欧美亚洲三级| 麻豆av一区二区三区久久| 欧美精品精品一区| 国产精品男女猛烈高潮激情 | 亚洲第一精品电影| 9久草视频在线视频精品| 亚洲自拍偷拍视频| 久久久久中文| 欧美日韩成人一区二区| 国产精品系列在线| 亚洲第一狼人社区| 亚洲无线观看| 久久久久久久999精品视频| 亚洲国产成人久久综合| 在线中文字幕一区| 久久综合一区二区| 国产精品成人一区二区网站软件 | 亚洲韩国日本中文字幕| 亚洲视频大全| 麻豆精品视频在线观看| 国产精品九色蝌蚪自拍| 在线免费高清一区二区三区| 亚洲线精品一区二区三区八戒| 久久久久久久网| 日韩视频专区| 老司机免费视频一区二区| 国产精品毛片| 日韩亚洲精品视频| 久久久久久久综合色一本| 亚洲美女视频在线免费观看| 久久精品91久久久久久再现| 欧美色网一区二区| 亚洲黄色免费电影| 久久精品亚洲热| 亚洲视频免费在线观看| 欧美暴力喷水在线| 加勒比av一区二区| 欧美亚洲尤物久久| 99re6热只有精品免费观看 | 欧美激情一区二区三区在线视频| 国产午夜亚洲精品不卡| 亚洲一级免费视频| 亚洲国产欧美日韩精品| 久久精品一二三| 国产视频在线观看一区二区三区| 宅男噜噜噜66国产日韩在线观看| 欧美~级网站不卡| 欧美在线免费| 国产亚洲美州欧州综合国| 亚洲男人天堂2024| 一区二区精品在线| 欧美日韩精品中文字幕| 亚洲精品视频中文字幕| 欧美激情精品久久久久| 久久精品国产精品| 国产一区二区三区最好精华液| 午夜一区不卡| 亚洲一区二区三区精品在线观看| 欧美日韩人人澡狠狠躁视频| 日韩视频一区二区三区在线播放免费观看 | 欧美自拍偷拍| 国产视频丨精品|在线观看| 欧美一二三区精品| 亚洲一区二区三区在线视频| 欧美天堂亚洲电影院在线播放| 一本到高清视频免费精品| 亚洲国产综合在线| 欧美精品亚洲精品| 99综合在线| 亚洲深夜影院| 国产亚洲亚洲| 久久青草久久| 麻豆精品视频| 在线亚洲欧美专区二区|