现在的位置: 首页 > 综合 > 正文

game_main(32)

2013年02月06日 ⁄ 综合 ⁄ 共 764字 ⁄ 字号 评论关闭

int Game_Main(void *parms = NULL, int num_parms = 0)
{
 //按ESC键退出
 if (KEYDOWN(VK_ESCAPE))
    SendMessage(main_window_handle,WM_CLOSE,0,0);

 memset(&ddsd,0,sizeof(ddsd));
 ddsd.dwSize=sizeof(ddsd);

 //锁定主显示表面
 if (FAILED(lpddsprimary->Lock(NULL, &ddsd,
        DDLOCK_SURFACEMEMORYPTR | DDLOCK_WAIT,
        NULL)))
    return(0);

 int lpitch32 = (int)(ddsd.lPitch >> 2);
 UINT *video_buffer = (UINT *)ddsd.lpSurface;

 for (int index=0; index < 1000; index++)
 {
  // select random position and color for 640x480x32
  int red   = rand()%256;
  int green = rand()%256;
  int blue  = rand()%256;
  int x = rand()%640;
  int y = rand()%480;

  UINT pixel = ((blue) + ((green) << 8) + ((red) << 16) + ((0) << 24));
  //写色
  video_buffer[x + y*lpitch32] = pixel;
  } // end for index

 //解锁主显示表面
 if (FAILED(lpddsprimary->Unlock(NULL)))
    return(0);

 return(1);

} // end Game_Main

抱歉!评论已关闭.