
Game Networking (AKA Multiplayer Networking หรือ NetCode ) เป็นการซิงโครไนซ์ของสถานะเกมและเหตุการณ์ระหว่างผู้เล่นหลายคนที่เชื่อมต่อผ่านเครือข่าย มันมุ่งเน้นไปที่ความท้าทายโดยธรรมชาติของเกมออนไลน์ที่มีผู้เล่นหลายคนเช่นเวลาแฝง, กระวนกระวายใจและการสูญเสียแพ็คเก็ต, การบรรเทาผ่านอัลกอริทึมและเทคนิคที่ซับซ้อนรวมถึงการทำนายการชดเชยการกระทบยอดการแก้ไขและกลไกอื่น ๆ นอกจากนี้ยังมีส่วนร่วมอย่างลึกซึ้งและรวมเข้ากับระบบเกมอื่น ๆ เช่นฟิสิกส์แอนิเมชั่นและการเล่นเกม
บทความ
- 1500 นักธนูใน 28.8: การเขียนโปรแกรมเครือข่ายใน Age of Empires and Beyond - Mark Terrano, Paul Bettner
- บล็อกของ Alvaro Jover-Alvarez-บทความต่าง ๆ เกี่ยวกับ Unreal Engine 5 Multiplayer โดย Alvaro Jover-Alvarez
- การเลือก TCP หรือ UDP: คู่มือสำหรับนักพัฒนาเกม - การเปรียบเทียบ TCP พื้นฐานกับ UDP โดย Heroic Labs
- Look Close: ประสบการณ์ออนไลน์ของ Halo Infinite - พูดคุยเกี่ยวกับปัญหา Netcode และการบรรเทาโดย Richard Watson
- อย่าใช้ LockStep ในเกม RTS - เปรียบเทียบ LockStep กับโมเดลเครือข่ายไคลเอนต์ - เซิร์ฟเวอร์สำหรับ RTS
- Ethernet vs. WiFi - การเชื่อมต่อกับ WiFi กับการเปรียบเทียบตัวชี้วัด Ethernet โดย Viscarious จาก Riot Games
- การอธิบาย Netcode ตามความล่าช้าและการย้อนกลับ - Netcode Rollback สำหรับการต่อสู้เกมโดย Ricky Pusch
- ผู้เล่นหลายคนที่รวดเร็ว - การทำนายการกระทบยอดการแก้ไขและการชดเชยโดย Gabriel Gambetta
- คำพูดของ Fightin, Netcode - บทความอธิบายว่าเกมต่อสู้ใช้ Netcode ตามความล่าช้าและย้อนกลับได้อย่างไร
- ต่อสู้กับความล่าช้า! เคล็ดลับที่อยู่เบื้องหลัง Netcode เวลาแฝงต่ำของ GGPO - คำอธิบายของ GGPO โดย Tony Cannon
- Gaffer on Games - โปรโตคอลที่เชื่อถือได้ของ Glenn Fiedler และบทความพัฒนาเครือข่ายเกม
- Game Networking Demystified - คำศัพท์และแนวคิดเครือข่ายเกมขั้นพื้นฐานโดย Ruoyu Sun
- สถาปัตยกรรมเซิร์ฟเวอร์เกม - บล็อกสถาปัตยกรรมเกมเซิร์ฟเวอร์เกม Multiplayer ของ Matthew Walker
- เครือข่ายเบราว์เซอร์ประสิทธิภาพสูง - หนังสือออนไลน์ฟรีเกี่ยวกับโปรโตคอลเว็บที่ทันสมัยโดย Ilya Grigorik
- วิธีการยิงปืน - การวิเคราะห์ของ Armin Ronacher เกี่ยวกับกลไกการยิงของ Battlefield 3 ในผู้เล่นหลายคน
- ผลกระทบของความหน่วงแฝงในเครือข่ายไร้สายสำหรับเกมผู้เล่นหลายคนแบบเรียลไทม์บนอุปกรณ์มือถือ - กระดาษ
- มันมีส่วนร่วมในการเขียนโปรแกรมเครือข่าย - บทความการเขียนโปรแกรมเครือข่ายโดยละเอียดจากทีม IT Hare
- บล็อกของ Kieran Newland - บทความต่าง ๆ เกี่ยวกับ Unreal Engine 5 เครือข่ายผู้เล่นหลายคนโดย Kieran Newland
- การชดเชยความล่าช้า - การเล่นที่ยุติธรรมสำหรับการปิงทั้งหมด - บทความที่อธิบายถึงการชดเชยความล่าช้าโดย Mitchell Robinson
- Nat Punch -through สำหรับเกมผู้เล่นหลายคน - การเชื่อมต่อ NAT และ P2P โดย Keith Johnston
- NetCode ที่ Super Bit Machine: Multiplayer First - บทความเกี่ยวกับ NetCode Stack ของ Armajet โดย Nicola Geretti
- NetCode อธิบาย - แนวคิดเครือข่ายเกมพร้อมตัวอย่างโดย Chris "Battle (Non) Sense" บน PC Gamer
- ฟิสิกส์เครือข่ายในความเป็นจริงเสมือน - เครือข่ายสแต็คก้อนที่มีความสามัคคีและ physx โดย Glenn Fiedler
- เครือข่ายของเกมเทิร์นอิง - Netcode การซิงโครไนซ์สถานะที่กำหนดโดยFrédéric Kaczynski
- Network Protocols - ภาพรวมสั้น ๆ ของโปรโตคอลเครือข่ายระดับต่ำสแต็กจากการทำลายซอฟต์แวร์ทั้งหมด
- Más Bandwidth - บล็อกใหม่ของ Glenn Fiedler เกี่ยวกับการเขียนโปรแกรมเครือข่ายเกมและวิศวกรรมแบ็กเอนด์ที่ปรับขนาดได้
- มองเข้าไปใน Netcode ของ Valorant - ภาพรวม Netcode และความได้เปรียบของ Peeker โดย Matt Dewet และ David Straily
- Quake 3 Network Model - รีวิวซอร์สโค้ดของ Fabien Sanglard เกี่ยวกับโมเดลเครือข่ายของ Quake 3
- ผู้เล่นหลายคนแบบเรียลไทม์ใน HTML5 - การพัฒนาเกมผู้เล่นหลายคนของ Sven Bergströmบนคู่มือเว็บ
- การจำลองแบบในเกมเครือข่าย - บทความการจำลองแบบของ Mikola Lysenko สำหรับผู้เล่นหลายคนที่ใช้ JavaScript
- การย้อนกลับเครือข่ายใน Inversus-โพสต์ของ Ryan Juckett บนระบบย้อนกลับแบบเพียร์ทูเพียร์ในผู้เล่นหลายคน
- Snapnet Blog - สถาปัตยกรรม NetCode (Lockstep, Rollback, Snapshot Recedpolation, Tribes ') โดย Jay Mattis
- เครือข่ายผู้เล่นหลายคนที่มา - Wiki Engine ต้นทางของ Valve รวมถึงหัวข้อเครือข่ายเกมขั้นสูง
- ภาพรวมโฮสต์ซิงค์ - ดาดฟ้าสไลด์ครอบคลุมสถาปัตยกรรมโฮสต์ซิงค์โดย Peter Kao จาก Insomniac Games
- Tech-stack ของเซิร์ฟเวอร์ออนไลน์ Ultima-บทสรุปของ UO Tech-stack โดย Raph Koster และ Brian Crowder
- กรณีของการโกง Quake - บทเรียนความปลอดภัยจากรุ่นไคลเอนต์ - เซิร์ฟเวอร์จาก Software Quake 1 โดย ID ซอฟต์แวร์
- สถาปัตยกรรมเครือข่าย Doom III - การปรับปรุงสถาปัตยกรรมเครือข่ายที่ใช้ใน Quake III Arena
- Netcode ของ Poor Man - รหัสโครงการและโพสต์บล็อกโดยละเอียดเกี่ยวกับความท้าทายเครือข่ายโดย Evan Todd
- โมเดลเครือข่ายของ Tribes Engine - โมเดลเครือข่ายของ Tribes I & II โดย Mark Frohnmayer และ Tim Gift
- การชดเชยความล่าช้าตามเห็บใน Unity - สถานการณ์กรณีในการถ่ายภาพด้วยความแม่นยำที่ดีขึ้นโดย Albin Corén
- ฟิสิกส์เอกภาพและการทำนายฝั่งลูกค้า-โครงการสาธิตและวิธีการโพสต์บล็อกโดย Joe Best-Rotheray
- Unity UNET HLAPI และ Steam P2P Networking - ตัวอย่างโครงการและโพสต์บล็อกโดยละเอียดโดย Justin Rempel
- Unreal Engine 1 Netcode - เอกสารประวัติศาสตร์บน Netcode ใน UE1 (และการแข่งขัน Unreal) โดย Tim Sweeney
- Unreal Engine 3 Networking & Replication - Historical UE3 Game Networking จาก Wiki เก่า
- Unreal Engine 4 Framework & Network - ดูกรอบการทำงานเครือข่ายเกมที่ไม่เป็นจริงโดย Nuno Afonso
- Unreal Engine Multiplayer Network Compendium - บทนำสู่ผู้เล่นหลายคนที่ไม่จริงโดย Cedric Neukirchen
- เซิร์ฟเวอร์ 128-Tick ของ Valorant-เทคนิคการเพิ่มประสิทธิภาพของเซิร์ฟเวอร์รันไทม์ในเชิงลึกโดย Brent Randall
- สิ่งที่ทำให้ Apex Tick: นักพัฒนาลึกลงไปในเซิร์ฟเวอร์และ Netcode - โดย Samy Duc
- ru какаисалисетевоййодилถึง pvp штера - Pixonic оиенте
การพูดคุย
- การประชุมนักพัฒนาเกม
- 2000 / ครึ่งชีวิตและเครือข่ายป้อมปราการของทีม - พูดคุยเกี่ยวกับบริการเครือข่ายแบ็กเอนด์โดย Yahn Bernier
- 2010 / สร้างซอฟต์แวร์เซิร์ฟเวอร์เพื่อกำจัด - โดย Stephen Detwiler และ James Marr
- 2011 / Crysis 2 Multiplayer - การชันสูตรศพของโปรแกรมเมอร์โดย Peter Hall จาก Crytek
- 2011 / ฉันยิงคุณก่อน - เครือข่ายการเล่นเกมใน Halo: REACH โดย David Aldridge จาก Bungie
- 2012 / การเขียนเซิร์ฟเวอร์และรหัสเครือข่ายสำหรับเกมออนไลน์ของคุณ - พูดคุยโดย Patrick Wyatt จาก EN MASSE
- 2013 / Network Serialization และการกำหนดเส้นทางใน World of Warcraft - พูดคุยโดย Joe Rumsey จาก Blizzard
- 2015 / เกมเครือข่ายสำหรับโปรแกรมเมอร์ฟิสิกส์ - พูดคุยโดย Glenn Fiedler จาก Respawn
- 2015 / Networking GamePlay และ AI ใน Assassin's Creed Unity - พูดคุยโดย Charles Lefebvre จาก Ubisoft
- 2015 / Shared World Shooter: สถาปัตยกรรมภารกิจเครือข่ายของ Destiny - โดย Justin Truman
- 2015 / หยุด, คัดลอก / วางเครือข่ายและนวัตกรรม - แนวทางการออกแบบโดย Claire Blackshaw จาก Sony
- 2016 / การต่อสู้แฝงใน Call of Duty Black Ops III - พูดคุยโดย Benjamin Goyette จาก Activision
- 2017 / Overwatch GamePlay Architecture and Netcode - Timothy Ford ในการจำลองที่แม่นยำด้วย ECS
- 2017 / Technology Technology ใน Overwatch: Kill Cam, GamePlay และ Highlights - Talk by Philip Orwig
- 2017 / เครือข่ายอาวุธและความสามารถในการสคริปต์ใน Overwatch - พูดคุยโดย Dan Reed จาก Blizzard
- 2017 / การจำลองความโกลาหล: การจำลองยานพาหนะใน Watch Dogs 2 - การจำลองการเคลื่อนไหวของยานพาหนะใน P2P
- เฟรม 2018/8 ใน 16MS - เครือข่ายย้อนกลับใน Mortal Kombat และ Injustice 2 โดย Michael Stallone
- 2018 / เพื่อเป็นเกียรติแก่: จากการเปิดตัวที่ยอดเยี่ยมจนถึงช่วงชีวิต - โดย Damien Kieken และ Roman Campos Oriola
- 2018 / มันคือวิทยาศาสตร์จรวด! - ฟิสิกส์และเครือข่ายของ Rocket League ในรายละเอียดโดย Jared Cone
- 2019 / ย้อนกลับไปสู่อนาคต! การทำงานกับการจำลองแบบกำหนดเพื่อให้เกียรติ - โดยเจนนิเฟอร์เฮนรี่
- 2019 / Quantum Deep Dive - Foton Quantum Network Engine สำหรับ Unity โดย Eric จาก Exit Games
- เครื่องยนต์ที่ไม่จริง livestream
- กราฟการจำลองแบบ - ทีมงานของ EPIC แสดงให้เห็นถึงคุณสมบัติกราฟการจำลองแบบใหม่ของ UE 4.20
- การเพิ่มประสิทธิภาพเซิร์ฟเวอร์ - Ryan Gerleve และ Dave Ratti เพื่อหารือเกี่ยวกับเทคนิคการเพิ่มประสิทธิภาพเซิร์ฟเวอร์ใน UE4
- เทศกาลที่ไม่จริง
- EU 2019 / กราฟการจำลองแบบเพื่อเพิ่มประสิทธิภาพเกม RTS - พูดคุยโดย Nick Prühsจาก Deadalic
- Unity Unite
- EU 2016 / สร้าง PVP ที่มุ่งเน้น MMO - อัลเบียน MMO สถาปัตยกรรมโดย David Salz จาก Sandbox
- EU 2017 / Photon vs UNET - การเปรียบเทียบสถาปัตยกรรม NetCode โดย Christof Wegmann จาก Exit Games
- LA 2018 / Deep Dive ลงในเครือข่ายสำหรับตัวอย่าง FPS ของ Unity - พูดคุยโดย Peter Andreasen จาก Unity
- EU 2019 / Intro to Dots และ Netcode - Futureed Future of Unity โดยใช้ DOTS โดย Tim Johansson
- อื่น
- ระหว่างเซิร์ฟเวอร์สองเครื่อง - Glenn Fiedler สัมภาษณ์ Gamedevs เกี่ยวกับผู้เล่นหลายคนและ NetCode
- วิศวกรรมเกมที่มีผู้เล่นหลายคนอย่างรวดเร็วกับ Gabriel Gambetta - พอดคาสต์สัมภาษณ์ 1 ชั่วโมง
- Handmadecon 2015 / Pat Wyatt - พูดคุยเกี่ยวกับ Guild Wars, Diablo, Starcraft Netcode โดย Pat Wyatt
- Overwatch / Let's Talk Netcode - Overwatch NetCode โดย Tim Ford และ Philip Orwig จาก Blizzard
- Unity + Mirror Networking Tutorials - แนวคิดและการใช้งานจริงโดย Neil Shah
- Valorant / NetCode & 128 -Servers - แนวคิดเครือข่ายพื้นฐานบางอย่างใน Valorant จาก Riot Games
- สถาปัตยกรรม Warframe / Networking - Netcode Warframe โดย Maciej Sinilo จาก Digital Extremes
ห้องสมุด
- C / C ++
- ENET - ไลบรารีเครือข่าย UDP ที่เชื่อถือได้ง่ายและเชื่อถือได้
- GamenetWorkingSockets - เลเยอร์การขนส่งเครือข่ายภายใน (Steam) ของ Valve สำหรับเกม
- GGPO - เกมที่ดี, Peace Out Rollback Network SDK
- KCP - โปรโตคอล ARQ ที่รวดเร็วและเชื่อถือได้
- NetCode - โปรโตคอลไคลเอนต์/เซิร์ฟเวอร์ที่ใช้การเชื่อมต่อที่ปลอดภัยสร้างขึ้นบน UDP (C, C#, Rust, Go ฯลฯ ... )
- Raknet - (ไม่ใช้งาน) เอ็นจิ้นเครือข่าย UDP ที่มีคุณสมบัติครบถ้วนและเป็นผู้ใหญ่
- เชื่อถือได้ - ระบบการตอบรับแพ็คเก็ตสำหรับ UDP (C)
- Serialize - serializer bitpacking ง่ายสำหรับ C ++
- Snapnet - AAA Netcode สำหรับเกมผู้เล่นหลายคนแบบเรียลไทม์
- TNL2 - (ไม่ใช้งาน) Torque Networking Library 2 ซึ่งค่อนข้างคล้ายกับรูปแบบเครือข่ายของเผ่า
- Yojimbo - ไลบรารีเครือข่าย UDP ที่เชื่อถือได้สำหรับเกมไคลเอนต์/เซิร์ฟเวอร์ที่มีเซิร์ฟเวอร์เฉพาะ (C ++)
- C#
- Barebones Master Server - Backend Framework พร้อม Auth, โปรไฟล์, ล็อบบี้, คุณสมบัติการแชทเพื่อความสามัคคี
- Darkrift 2-Unity มุ่งเน้นโซลูชันเครือข่ายผู้เล่นหลายคนที่มีประสิทธิภาพสูง
- FISHNET - โซลูชันเครือข่าย Unity มุ่งเป้าไปที่ความน่าเชื่อถือความสะดวกในการใช้งานประสิทธิภาพและความยืดหยุ่น
- Forge Networking - Unity มุ่งเน้นโซลูชันเครือข่ายผู้เล่นหลายคนแบบเรียลไทม์
- Lidgren.Network - ห้องสมุดเครือข่าย UDP ที่เชื่อถือได้ (.NET/MONO/Unity)
- LitenetLib - Lite Lite Library เครือข่าย UDP ที่เชื่อถือได้ (.NET/MONO/Unity)
- Magiconion - Unified Realtime/API Framework สำหรับแพลตฟอร์ม. NET และ Unity
- Mirror - การแทนที่ชุมชนสำหรับระบบเครือข่าย Unet ที่ถูกทอดทิ้งของ Unity
- NETCODE สำหรับเอนทิตี - NETCODE อย่างเป็นทางการของ Unity SDK สำหรับเวิร์กโฟลว์เอนทิตี
- NetCode สำหรับ GameObjects - NetCode อย่างเป็นทางการของ Unity สำหรับเวิร์กโฟลว์ GameObject
- NETICK - โซลูชันเครือข่ายเซิร์ฟเวอร์ที่ได้รับอนุญาตสำหรับ Unity
- NetStack - ชุดเครื่องมือที่มีน้ำหนักเบาสำหรับการสร้างระบบเครือข่ายพร้อมกันสำหรับเกมผู้เล่นหลายคน
- Networker - TCP และ UDP Networking Library (.NET/Unity)
- Normcore - เครือข่ายเกมที่มีผู้เล่นหลายคนไร้รอยต่อสำหรับ Unity (Cloud/SaaS)
- โฟตอนเอ็นจิ้น - แพลตฟอร์มเครือข่ายเกมหลายคนไฮบริด (คลาวด์/SaaS)
- Riptidenetworking - โซลูชันเครือข่าย C# น้ำหนักเบาสำหรับเกมผู้เล่นหลายคน
- SocketWeaver - บริการคลาวด์ผู้เล่นหลายคนออกแบบมาสำหรับเอ็นจิ้น Unity (คลาวด์/SaaS)
- ไป
- Nakama - โครงสร้างพื้นฐานแบ็กเอนด์โอเพ่นซอร์สสำหรับเกมผู้เล่นหลายคน (รวมถึง Unity/C# SDK)
- Goworld - เครื่องยนต์เซิร์ฟเวอร์เกมแบบกระจายที่ปรับขนาดได้พร้อมการแลกเปลี่ยนร้อน (และการสาธิต Unity!)
- ชวา
- SmartFoxServer - เซิร์ฟเวอร์เกมผู้เล่นหลายคนจำนวนมากพร้อมคุณสมบัติในตัวขั้นสูง
- จาวาสคริปต์
- ActionHero - เฟรมเวิร์กเซิร์ฟเวอร์ API Node.js สำหรับซ็อกเก็ต TCP, WebSockets และไคลเอนต์ HTTP
- Colyseus - เฟรมเวิร์กเกมเซิร์ฟเวอร์ผู้เล่นหลายคน
- KALM - ซ็อกเก็ตผู้จัดการ/ไลบรารีเครื่องมือเพิ่มประสิทธิภาพพร้อมการควบคุมความแออัดที่กำหนดเองสำหรับ Node.js และเบราว์เซอร์
- SocketCluster-Multi-Process ที่ปรับขนาดได้ HTTP & Framework เซิร์ฟเวอร์แบบเรียลไทม์
เครื่องมือ
- Capanalysis - Web Visual Tool เพื่อวิเคราะห์การรับส่งข้อมูลเครือข่ายที่จับได้ (Ubuntu, Debian)
- ซุ่มซ่าม - ยูทิลิตี้การจำลองสภาพเครือข่าย (Windows)
- Netem - การจำลองเครือข่ายสำหรับการทดสอบโปรโตคอล (Linux)
- Matchmaker - การจำลองการจับคู่กับข้อมูลผู้เล่นทั่วโลกจริง (GO)
- MITMPROXY - เว็บพร็อกซีเซิร์ฟเวอร์ดีบัก (Windows, MacOS, Linux)
- คอนดิชั่นเนอร์เครือข่าย - ยูทิลิตี้การจำลองสภาพแวดล้อมของเครือข่าย (macOS, iOS)
- ตัววิเคราะห์โปรโตคอลเครือข่าย - เครื่องมือสำหรับการวิเคราะห์การดีบักและการตรวจสอบการเชื่อมต่อ (Windows)
- Network Simulator (NS) - การจำลองเครือข่ายการกำหนดเป้าหมายการวิจัยและการใช้งานด้านการศึกษา (MacOS, Linux)
- Postman - Web API Debugging และ Development Client (Windows, MacOS, Linux)
- WebSocat - ไคลเอนต์ CLI สำหรับ WebSockets เช่น NetCat หรือ Curl (Windows, MacOS, Linux)
- Wireshark - เครื่องมือวิเคราะห์การรับส่งข้อมูลเครือข่าย (Windows, MacOS, Linux)
ใบอนุญาต