2013年1月6日 星期日

期末PROJECT 第十組 接水珠小遊戲

遊戲規則

1.空中會噴出許多水球,畫面中會有方塊會讓水球改變方向
2.以雙手去補足黑色方塊的位置,讓水球可以正確地流至灰色的終點
3.根據所接到的水球來決定得分以及過關判定條件。

圖示
水珠在上方集中噴撒之後往四方移動,錯過了紫色線條

必須放上自己的手去接住水珠,才可以導引水珠到正確的終點
使用的技術 
1.以判斷畫面中是否有物體在那邊有的話就當做水平反射
2.水流的判定,考慮將水流做成大量的小球,每一個小球物件都有他的生命值。
3.物件的碰撞判定,考慮套用openCV的繪圖功能

製作過程
首先是畫面中的藍色軌跡,作一個迴圈去製造1000個小圓形,並且讓這些小圓形一次隨機亂噴。
每一個圓形是一個class作出來的,有幾個重要的值如下:
目前的位置ballStartX[1000]和ballStartY[1000]
向量為ballVectorX[1000]和ballVectorY[1000]
遊戲中的摩擦力以及反彈力因為怕永無止盡 所以改成碰撞之後有耗損,每次反彈都會剩下原來的0.6~0.8倍。
進入到終點線的範圍後 生命值(wBall[1000].live = 0)
球就不會再進行運算,並且消失

DEMO影片

                                  


沒有留言:

張貼留言