Iphone連軸畫的實現

2021-09-08 23:17:52 字數 986 閱讀 5480

連軸畫的實現/

本文只討論橫屏連軸畫的實現,豎屏連軸畫的原理相同不做討論

本文不會直接給出結論,而是還原作者當初的思路,把問題解決的過程再現。

本文作者系初學者,水平有限,請多多請教!

問題的背景是:遊戲背景從右往左按一定速度無限移動,只有一張480*320的背景圖。

背景圖命名為background.png

首先想到的是宣告一ccsprite *bg;

bg = [ccsprite spritewithfile:@" background.png"];

把bg加入場景中來,然後在update函式中改變bg的位置

比如[bg setposition:cgpointmake((int)( bg. position .x-shudu *dt), bg.position.y)];

shudu是移動的速度 int型

這時執行程式就可以看到背景圖background.png徐徐向左移動,不要開心太早因為在右邊出現了黑色的背景,這種效果顯然不是我們想要的。

這時我們想到再宣告一ccsprite *bg2;

bg2 = [ccsprite spritewithfile:@" background.png"];

把bg2的位置設為(480,320)

[bg addchild:bg2]

再執行程式這時看到背景徐徐向左移動 並且右邊出現了重複的背景,向目標邁進了一步。但是沒過幾秒,右邊又出現了黑色的背景,並逐步變大。

這時我們想到背景bg已經向左移動了480個單位 位置是(-480,0),應該把bg的位置設為(0, 0)

於是我們在update中加了乙個判斷,

if((bg position].x < -480)

else

再次執行,一切正常,功能實現了。這是乙個很簡單的功能,但是實現過程卻不像想象中的簡單,分析原因如下,和新手共勉:

1、想當然,想問題過於主觀。

2、沒有分析問題,在全面了解問題之前就下手去做,邊做邊想走了彎路

iPhone 實現簡單的CoverFlow 效果

名字隨便起就行 這裡我命名為coverflow如圖 修改 coverflowviewcontroller.h 為下面內容 import import coverflowview.h protocol coverflowviewdelegate void flipselectedcover end i...

強人畫的畫 )

這是在哥本哈根的街頭拍到的,這位街頭畫家,據他講,這種做畫的方式也是一種生活,他已經作畫20多年了。呵呵,當然不素偶拍滴啦 先用粉筆打底 測量一下比例是否正確 給路人講解 立體畫草稿 開始繪畫 畫的是felix貓 細節需要精心刻畫 開始完善畫面 中國舞獅和felix貓,呼之欲出 換個角大功告成 與作...

Iphone實現簡單翻頁效果

經常看到iphone的軟體向上向下翻頁面的效果,其實這個很簡單,已經有封裝好的相關方法處理。首先設定動畫的相關引數 uiview beginanimations curl context nil uiview setanimationduration 1.25 時間 uiviewsetanimati...