作者iLeyaSin365 (365)
看板C_Chat
標題[閒聊] 老遊戲《尾行》為何不再做?兼論虛幻引
時間Mon Aug 11 18:32:34 2025
https://youtu.be/8k76LCSMz6s?si=OOgti9hwxIsp3COr
尾行是款以「跟蹤」為遊戲核心的遊戲,
但只有在早期的遊戲機上出現,
為什麼最近高效能的主機沒有這類型遊戲呢?
覺得可能是市場和玩家需求的改變。
純粹以「尾行」為核心的遊戲類型,其玩家群體相對小眾,
容易與道德爭議或情色內容聯想在一起,
這對主流遊戲開發商來說風險較高。
現今的主流遊戲更注重動作性、故事深度、互動,以及更廣泛的玩家接受度。
另一個重要原因可能是市場和玩家需求的改變。
純粹以「尾行」為核心的遊戲類型,
其玩家群體相對小眾,而且容易與道德爭議
或情色內容聯想在一起,
這對主流遊戲開發商來說風險較高。
現今的主流遊戲更注重動作性、
故事深度、多人互動,以及更廣泛的玩家接受度。
因此,開發公司會將「跟蹤」這類玩法
融入到更豐富的遊戲框架中,
讓它成為整體體驗的一部分,而不是獨立存在。
在近年遊戲中,雖然不以「尾行」命名
,但包含大量跟蹤和潛入元素的遊戲有:
人中之龍、碧血狂殺2
虛幻引擎(Unreal Engine)中的AI偵測系統非常強大,除了你提到的聽覺和視覺偵測,還
有其他幾種方式可以用來製作「尾行」遊戲。
「完成尾行的女主角發現玩家」的功能。在虛幻引擎中,敵人AI的偵測組件有聽聲音與視覺
偵測,還有什麼嗎?這些組件用來製作尾行可能的使用方式有什麼例子呢?
如果是以Unity引擎,又該使用什麼方法?代替那些機制?
---
### Unreal Engine 的偵測機制與應用
Unreal Engine 的 AI 偵測組件主要整合在 **AIPerceptionComponent** 中,它包含了以
下幾種感官:
1. **視覺 (Sight)**:這是最直觀的偵測方式,透過 **可視性 (visibility)** 和 **視
野角度 (field of view)** 來判斷目標是否在視線內。
* **尾行應用**:你可以設定 NPC(非玩家角色)的視野角度和距離。玩家如果進入這
個範圍,就會被發現。例如,在轉角處偷偷觀察、躲在掩體後面,這些都可以利用視覺偵測
來實現。
2. **聽覺 (Hearing)**:這個感官用來偵測聲音事件。
* **尾行應用**:玩家走路、跑步、打破東西、觸發陷阱等動作都可以產生聲音事件。
你可以根據聲音的 **音量 (Loudness)** 和 **距離** 來決定 NPC 是否會被驚動。例如,
玩家如果跑得太快,NPC 就會回頭查看。
3. **傷害偵測 (Damage)**:當 AI 偵測到自身受到傷害時,會產生反應。
* **尾行應用**:雖然這在「尾行」中較少作為主要偵測手段,但可以作為特殊情況。
比如玩家不小心觸發了陷阱,導致 NPC 受傷,NPC 會立刻進入警戒狀態,而不是直接發現
玩家。
4. **團隊關係 (Team Perception)**:這個組件讓 AI 能知道其他 AI 偵測到了什麼。
* **尾行應用**:如果一個 NPC 發現了玩家,它可以廣播給其他附近的 NPC,讓他們
一起進入警戒狀態。這能模擬更真實的巡邏團隊。
5. **氣味或觸覺 (Sense of Smell / Touch)**:Unreal Engine 沒有內建獨立的「氣味
」感官,但可以透過 **藍圖 (Blueprint)** 或 C++ 程式碼自訂義。
* **尾行應用**:你可以自訂一個偵測組件,當玩家靠近某些特定物品(如發出氣味的
物品)時,AI 會產生反應。例如,玩家身上帶有某種氣味,即使沒有被看到,AI 也會循著
氣味接近。
---
### Unity 引擎的實作方式
在 Unity 中,雖然沒有像 Unreal 內建的 `AIPerceptionComponent` 那樣整合好的組件,
但可以透過**程式碼**和**物理引擎**的組件來實現類似的功能。
#### **視覺偵測**
* **Raycast(射線投射)**:你可以從 NPC 的眼睛位置發射一條或多條射線。如果射線擊
中了玩家,就表示玩家在視野內。你還可以結合 **視野角度(Field of View)** 的計算
,只在特定角度內發射射線。
* **實作範例**:使用 `Physics.Raycast()` 函式,檢查射線是否擊中玩家的 `Colli
der`。
* **SphereCast** 或 **OverlapSphere**:這兩個方法可以模擬 NPC 擁有一個球形視野範
圍。只要玩家的碰撞體進入這個球形範圍,就可能觸發偵測。
#### **聽覺偵測**
* **觸發器 (Trigger)**:你可以為玩家的移動設定一個觸發器。當玩家移動時,這個觸發
器會產生一個**虛擬的聲音事件**。
* **距離判斷**:讓 NPC 偵測是否有聲音事件在自己的半徑範圍內發生。你可以設定不同
的聲音類型(如走路、跑步)對應不同的偵測半徑。
* **實作範例**:當玩家跑步時,在玩家周圍創建一個 **`OverlapSphere`**,任何進
入這個範圍的 NPC 都會被「聽」到。
#### **其他進階機制**
* **自訂狀態機 (State Machine)**:你可以為 AI 敵人製作一個狀態機,包含「巡邏 (Pa
trolling)」、「警戒 (Alert)」、「追逐 (Chasing)」等狀態。當偵測到玩家時,AI 的狀
態就會切換。
* **NavMesh Agents**:這在兩個引擎中都很常用,用來控制 AI 的移動。你可以利用 Nav
Mesh Agents 來讓 AI 根據偵測到的資訊,導航到玩家的最後已知位置。
總結來說,無論是 Unreal Engine 還是 Unity,核心思想都是透過**程式碼**和**物理引
擎的偵測功能**來模擬 AI 的感官,並根據這些感官回饋來觸發 AI 的行為。Unreal Engin
e 提供了更完整的內建組件,而 Unity 則需要你透過腳本來自行建構這些邏輯。
你對在 Unity 中實現這些功能是否有更具體的想法或想了解的部分?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.82.244.242 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1754908356.A.E48.html
→ yuizero: 你把特攻神碟(潛龍諜影)放那了? 08/11 18:34
推 andy0481: 這什麼AI文== 不就單純i社被味道團體弄過 誰敢再做 08/11 18:36
推 LAODIE: 主要是跟蹤h題材被抗議吧 i社還被一堆歐美國家國會拿出來 08/11 18:37
→ LAODIE: 咨詢 超慘 08/11 18:37
→ nahsnib: 你把這篇AI文貼上來在幹嘛,而且明明就有潛行類遊戲 08/11 18:37
→ carllace: 潛行類的3d hgame也還是有啊 08/11 18:42
→ carllace: 尾行系列是跟蹤+雷普日本有人燒,幾年後歐美也搬出來燒 08/11 18:43
推 frlair: 嗚,超想用VR玩... 08/11 18:50
→ owo0204: 尾行本來就不是什麼能拿上檯面的遊戲吧 08/11 18:58
推 ruby080808: 真要說現在比起尾行這類,背德、違法題材的h game現 08/11 19:00
→ ruby080808: 在更流行電車痴漢就是了 08/11 19:00
→ viper0423: 就當年レイプレイ被西方女權針對後的餘波 08/11 19:01
推 romsqq: 大量跟蹤+潛入+脫衣+下藥+NPC互動=殺手47 08/11 19:02
噓 LouisLEE: 全篇都是AI的觀點,你的論點呢? 08/11 19:17
噓 jonathan793: ai發文 08/12 03:06