Re: [問題] JAVA小遊戲設計的問題
※ 引述《sam31112 (Sam)》之銘言:
: 我們想說要做一個像電流急急棒的遊戲
: 已經用座標把地圖拉好了...
: 游標也可以動了
: 但是我們想不出要怎麼打
: 才可以讓游標碰到邊界或障礙物的時候
: 跳出視窗game over 之類的
: 我們想說設範圍當X < 多少 或Y > 多少的方法
: 不過似乎行不通!
: 有人有做過類似的遊戲可以提供意見嗎?
: 感謝
簡單點的作法,
把所有不能走的 (或著反過來,所有能走的)拆成長方形,
然後判斷游標是不是在長方形內。
看起來比較漂亮的作法就是直接判斷游標是否在地圖內,
由於地圖多半會是一個具有 concave 的 simple polygon,
而這多半就是你先前做不出來的原因。
這邊補充一下,如果沒有 concave 而只是 convex polygon,
就會有很簡單的判斷方式檢查游標是否在 polygon 之內。
(向量外積,判斷游標是否都落在同一邊)
如果是 non-convex polygon,其實也不會太難,
這邊有個七行的演算法:
http://www.codeproject.com/Tips/84226/Is-a-Point-inside-a-Polygon
它的作法大概是從游標任選一個方向一直線延伸出去,看會與幾個邊交錯,
如果是奇數個就表示游標在 polygon 之內。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.34.7.189
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):