<track id="twkei"></track>
          1. <tr id="twkei"><label id="twkei"><menu id="twkei"></menu></label></tr>
            

            千云互聯

            Openl繪制二維動畫

            文章出處: │ 網站編輯: │ 發表時間:2014-08-20 11:38 我要分享

            很多學游戲的人都會想知道二維動畫是怎么出來的呢?現在我就教你們一個簡單實用的二維動畫算法。

            首頁我們需要定義一個類叫AnimatedSprite里面初始化的參數有

            Openl繪制二維動畫

            分別是圖片的xyz坐標,xFrameNumber, yFrameNumber為圖片的框架,比如1*4的框架

            Openl繪制二維動畫

            然后FrameDelay, totalFrames得出這個圖像的幀數FrameDelay比如為4,接著totalFrames算出這圖像1*4=4的總體框架, xVelocity, yVelocity接著賦予x,y的速度給這圖片,char *textureName這塊是選擇圖片文件路徑,int width, int height是賦予圖片每個分割出來的圖片大小。

            接著我們運行一個繪制圖片函數

            void AnimatedSprite::Draw2()

            {

            float    xStep;

            float    yStep;

            xStep = 1.0f / xFrameNumber;

            yStep = 1.0f / yFrameNumber;


            //// Enable z-buffer

            glEnable(GL_DEPTH_TEST);

            glDepthMask(TRUE);


            //// Set the general polygon properties

            glColor4f(1.0f,1.0f,1.0f,1.0f);

            glEnable(GL_TEXTURE_2D);

            glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);

            glAlphaFunc(GL_GREATER,0.05f);

            glDisable(GL_CULL_FACE);


            glLoadIdentity(); // 重置當前的模型觀察矩陣

            glEnable(GL_CULL_FACE);

            glCullFace (GL_BACK);


            if(ABlendFlag)     glEnable(GL_BLEND);

            else                        glDisable(GL_BLEND);


            if(ATestFlag)      glEnable(GL_ALPHA_TEST);

            else                        glDisable(GL_ALPHA_TEST);


            FrameIndex ++;

            currentFrameIndex = FrameIndex / FrameDelay % TotalFrames;

            //if(loop != true) {

            //   if(FrameIndex/FrameDelay >= TotalFrames )

            //       alive = false;

            /

            下一篇:沒有了
            无码视频在线观看 69xx视频 尤物在线 一本一本久久a久久精品综合麻豆 亚洲欧美在线看片爽爽爽 亚洲一级无码AV毛片琢磨影院 欧美视频在线高清在线观看 欧洲一卡二卡三卡 公司 AV网站在线播放

            <track id="twkei"></track>
                  1. <tr id="twkei"><label id="twkei"><menu id="twkei"></menu></label></tr>