2013-10-12 43 views
0

我正在寫一個OpenGL ES 1.0 Android 2D遊戲。我想創造一個滾球,但我不知道如何做到這一點。當然,我可以加載球紋理並沿着x或y軸移動它,但是沒有滾動效果。我怎樣才能創造這樣的效果?這場比賽是在鳥類的視角,所以你從上面看着場。OpenGL滾動球

+2

您可以將球紋理映射到一個球體,然後在球體上應用變換以使其具有滾動效果。爲了簡單起見,沿x軸向下滾動的球需要圍繞其局部y軸旋轉,因此您可以重複將球體轉換爲原點,應用圍繞y軸的旋轉,然後將其平移回去。 – AndyG

+0

爲什麼要我使用球體?我只有一個2D投影,而一個球體是一個3D對象。如果完全忽略投影,我應該如何設置Z軸? – Cilenco

+0

如果您可以在2D中表示一個具有您的紋理的圓形,那麼您可以簡單地旋轉該圓形,將其轉換爲原點,然後在其上應用2D旋轉。例如,如果你想旋轉你的多邊形'theta',那麼你可以使用2D旋轉矩陣http://en.wikipedia.org/wiki/Rotation_matrix旋轉你的模型。 – AndyG

回答

0

使用映射到幾何的紋理座標來做這類動畫的正確方法是使用創作工具,例如Maya,3DSMax或Blender。攪拌機是免費的,太棒了。我強烈推薦它。您還需要一些中間件來導入在Blender中創建的幾何圖形,紋理和動畫。爲此,請查看PowerVR SDK或Ogre3D或Valve工具。