2012-03-22 35 views
0

我想弄清楚我正在研究的遊戲設計的汽車和道路物體的最佳設計方法。課程設計:汽車和道路

這個想法是爲了讓AI Cars(以及玩家控制的車)能夠識別他們在道路上穿過虛線或直線時。 我希望能夠用適當的標誌和子對象爲Unity3D建立一條變通道,以便汽車能夠識別它們在哪裏,何時以及如何穿越或輪流等等等等。 ,一條道路可以有一個方向或兩個方向。 對於每個方向都可以有多個通道。車道允許汽車相互超車(意思是車道之間的虛線)。 如果是雙向道路,那麼兩條車道之間有一條直線 - 任選且理想情況下,如果任何方向上有多條車道,則分隔定向車道的線是直的。 默認情況下,應該有一個標誌根據isOvertakingAllowed布爾標誌繪製線條。

最重要的部分是車對象需要知道他們在哪條車道上,或者他們是否在車道分隔線上,以及這種間隔是什麼類型(超車是否允許)。 對我來說,這是最難的部分。

任何幫助表示讚賞。

回答

1

在gamasutra上有一個article,其中描述了用於opencity的模型以及不同代理(標準汽車,賽車,行人......)如何使用它。它可能會給你一些指示或想法。

2

我會建議你實施一個Lane,它有一個旅行的方向。然後實現一個Road,其中包含點的集合,定義它的形狀的路徑和距離,以及遵循該路徑的一組對象。道路是單向還是雙向成爲其中的一個問題,以及它們有多少通道。

在這種情況下,Car旅行在給定方向的Road,車道,它的。它只能切換到具有旅遊的兼容的方向(即在同一方向的航向其他車道以下汽車),除非汽車轉過身。

您還可能有一種被稱爲Intersection這是多Lanes的連接點Road一個特殊的點,並以某種方式指定Lanes當它在一個Intersection可以Car過渡到從。

這是一個粗略的概述,但我認爲這些是你呈現的對象之間的基本關係,並且應該讓你開始。

+0

事實上,這是一個好的開始。 但是,我的遊戲設計有點複雜。一輛汽車在分隔線上行駛是可以的 - 在這種情況下,遊戲所需的各種動作都可以得到獎勵。 基本上,車的物體不應該被車道或道路收縮。只有在他們的指導和通知他們(我的意思是,汽車知道他們在哪裏,他們可能會做什麼交通違規行爲)。 – 2012-03-22 14:49:09

+1

因此,使用車道/道路作爲轉彎等的指導,但允許從該強線路有一些偏移,該距離儘可能遠地出去。例如,在我的行人技術演示中,行人使用A *在迷宮中尋找路徑,他們得到的路徑是基於8路的路徑。然而,他們被允許偏離這些路徑以轉向並避開對方。以下是視頻:http://www.youtube.com/watch?v = ZEY9MLpDkGE &list = UU7iqR7zggnpvZySau81qCqw&index=2&feature=plcp – jefflunt 2012-03-22 14:59:11