ผมสร้างเกมขับรถมุมมองบุคคลที่หนึ่งบน Nürburgring ที่เล่นได้ทันทีในเว็บเบราว์เซอร์โดยตรง สามารถขับได้เลยโดยไม่ต้องติดตั้ง
บนมือถือ หากใช้โหมดแนวนอนก็สามารถเล่นแบบเต็มหน้าจอได้

url: https://drive-game.pages.dev
GitHub: https://github.com/esc5221/drive-game

ผมชอบเกมอย่าง slowroads.io อยู่แล้ว เลยอยากลองทำเวอร์ชันที่อิงกับสนามแข่งจริงและรถจริงมากขึ้น มี DNA แบบเรซซิ่งมากกว่าเดิม เกมนี้ตั้งใจไปทางแนว sim มากกว่า arcade จึงอาจยากกว่าที่คิด แต่ถ้าเคยเล่นเกมแข่งรถด้วยคีย์บอร์ดมาก่อนก็น่าจะเล่นกันได้

โค้ดของเวอร์ชันที่ใช้งานได้ทั้งหมด Claude Fable 5 เป็นคนเขียนให้ จากนั้นผมค่อยเข้าไปปรับฟังก์ชัน จูนรายละเอียด และเก็บฟีลการเล่นเพิ่มเติม ช่วงนี้กำลังนิยมทำเกมจากพรอมป์ต์บรรทัดเดียวกันอยู่ แต่ผมสนใจอยากลองดูว่า AI จะพาไปได้ไกลแค่ไหนในส่วนที่ต้องลงมือเยอะอย่างฟิสิกส์หรือเสียง เลยโฟกัสตรงนั้นเป็นหลัก

วิธีที่ได้ผลระหว่างทำ ไม่ใช่การสั่งให้มันออกมา “ดูเหมือนจริง” แต่เป็นการให้เป้าหมายที่วัดผลได้พร้อมวิธีตรวจสอบไปด้วย

  • ฟิสิกส์: ให้ค่าความเร่ง 0-100 และความเร็วสูงสุดจริงของรถแต่ละคัน แล้วให้ย้อนคำนวณด้วยสมการ จากนั้นวัดด้วย headless test และวนปรับจนค่าตรงตามตัวเลข
  • เสียง: วิเคราะห์การบันทึกเสียง onboard ของจริงด้วยสเปกโตรแกรม แล้วเรนเดอร์เสียงสังเคราะห์แบบออฟไลน์ เพื่อนำมาเทียบ A/B ด้วยวิธีเดียวกันและจูนพารามิเตอร์

สรุปเทคนิค:

  • ฟิสิกส์รถทำเองทั้งหมด(ไม่ใช้เกมเอนจิน): rigid body แบบ fixed step 240Hz, raycast suspension, ยาง Pacejka แบบ combined slip, clutch launch model, แรงอากาศพลศาสตร์, ค่าการยึดเกาะตามพื้นผิวและสภาพอากาศ, TC/ABS
  • รถ 5 รุ่น(Avante N, 992 GT3 / GT3 RS, kart, F1) โดยจูนให้ตรงกับอัตราเร่ง 0-100 และความเร็วสูงสุดจริงของแต่ละคัน
  • เสียงเครื่องยนต์ไม่ใช้ sample ที่อัดไว้ แต่เป็นการสังเคราะห์(AudioWorklet) — เครื่องยนต์, ไอเสีย, การเปลี่ยนเกียร์, ยาง, เบรก ฯลฯ เป็นเลเยอร์ที่เปิดปิดแยกกันทั้งหมด
  • แทร็กใช้ geometry จริงจาก OpenStreetMap(OSM) — Nordschleife 20.7km + Spa + เซอร์กิตซ้อม พร้อมข้อมูลความสูง SRTM
  • การเรนเดอร์ใช้ Three.js และใช้ codebase เดียวกันสำหรับเว็บ(Vite) + Android(Capacitor)

ผมเปิดเผยเซสชันทั้งหมดที่ใช้สร้างเกมนี้ไว้ตามเดิมด้วย สามารถดูบทสนทนาที่คุยกับ Fable ตั้งแต่ต้นได้ และมีปุ่มสลับภาษาอังกฤษกำกับต้นฉบับภาษาเกาหลีไว้ด้วย ระหว่างทางจะเห็นได้ว่าโมเดล Fable มีข้อจำกัดอยู่.. หลังจากนั้นก็จะเห็นว่ามีการใช้งาน opus ต่อเช่นกัน
https://drive-game.pages.dev/making

ผมยังไม่เคยเห็นโมเดล AI ตัวไหนสร้างงานคุณภาพระดับนี้ได้ในเวลาสั้นขนาดนี้มาก่อน แต่ Fable ให้ความรู้สึกว่าดีมากอย่างชัดเจนจริง ๆ

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น