彈幕模塊
源碼簡介:滑動航道選擇
方案:
1、
通過彈幕碰撞檢測,決定是否使用此航道,即航道每次都是從上往下做判斷。
碰撞檢測主要難點在于檢測橫向滾動彈幕之間的碰撞,彈幕存活時間由其顯示時間和存活長短決定,因此,彈幕之間是否碰撞只需檢測開始和消失是否碰撞即可。
2、
當***個找不到航道時候,檢查所有航道最小距離,這個距離必須在指定的***彈幕的長度之內,如果找到,將其放置在對于彈幕后面。
2.1、前彈幕最右邊還沒出現在屏幕時,新彈幕放置到其后面,space為倆之間間隔
2.2、前彈幕最右邊已出現在屏幕時,新彈幕仍然放置邊界等待滾動
浮現航道選擇(分為兩排航道)
方案:
1、
選擇***排,按沒有彈幕為準,沒有就顯示
2、
***排都占滿,使用第二排,第二排是在***排的基礎坐標y向下半個航道高度,
這樣可以有個視覺差,***排顯示消失時,可以看到第二排,從而爭取更大的顯示航道(2n-1)
測試環境:Xcode 6.2,iOS 6.0以上
源碼效果圖: