在制作动画时,在哪个函数内更新动画控制函数最好?

解决方案 »

  1.   

    很多游戏是在系统空闲的时候刷新的
    用到了函数OnIdle
      

  2.   

    使用线程,时间间隔用sleep来表示。
    再有就是用SetTimer来完成咯,
    如果要实现的是DirectX那样的大规模的动画,最好还是自己建一个引擎或者从别人那里Down一个。
      

  3.   

    作动画?
    动画有很多种的, 从简单的动画 gif 到 avi 到 flush 到3DMAX 到即时演算的超魄力3D动画等等, 你指什么?动画 gif -> 直接找个支持动画 gif 的控件用
    avi      -> 用MS 的 Animation Control
    flush    -> 用 flush 控件
    3dMAX    -> 不知道, 可能有控件播放
    即时演算 -> 自己写绘图循环, 在 MS 的 DirectX 演示里的循环代码大概如下:MSG msg;
    while(true)
    {
      if(PeekMessage( &msg, NULL, 0, 0, PM_REMOVE))
      {
        if( msg.message == WM_QUIT)
             break;
        else
             TranslateMessage( &msg);    continue;
       }
        
       Draw() // 这里绘图
    } MFC 里怎么写, 我不懂
      

  4.   

    Thanks a lot!  :)
    可惜我不会directX,我正是在MFC里做的循环绘图。