API ระดับสูงสำหรับการสร้างเกมเครือข่ายใน Unity ใช้ RevenantX/LiteNetLib
เป้าหมายของ TinyBirdNet คือการสร้างสภาพแวดล้อมที่คุณสามารถเพิ่มเครือข่ายให้กับเกมที่เป็นเอกภาพได้อย่างง่ายดาย ในขณะที่ใช้ LiteNetLib อยู่เบื้องหลัง
รองรับ Unity 2017 ขึ้นไป
เวอร์ชันปัจจุบันได้รับการทดสอบทั่วทั้ง Windows และ Linux โปรดเปิดปัญหาหากคุณพบข้อบกพร่องใดๆ
การเพิ่มโฟลเดอร์ TinyBirdNet ใต้ Assets ให้กับโปรเจ็กต์ของคุณจะทำให้คุณมีทุกสิ่งที่จำเป็นในการเริ่มต้นสร้างเครือข่ายในเกมของคุณ
ภายในโฟลเดอร์ Examples คุณจะพบการสาธิตการทำงานอย่างง่ายของเกมบนเครือข่าย
คุณจะต้องมี TinyNetGameManager หรืออินสแตนซ์ที่ได้รับเปิดใช้งานอยู่เสมอในเกมของคุณ ดังนั้นโปรดเพิ่มหนึ่งรายการในฉากแรกของคุณและทำเครื่องหมายเป็นอย่าทำลายขณะโหลด จำเป็นต้องมี "ConnectKey" ที่ไม่ซ้ำกันเพื่อให้เกมของคุณเชื่อมต่อได้ โดยควรรวมเวอร์ชันปัจจุบันของแอปพลิเคชันของคุณไว้ในคีย์สตริงด้วย
ขั้นตอนการทำงานที่แนะนำคือการสร้างคลาสที่ได้รับมาจาก TinyNetPlayerController และใช้ตรรกะการควบคุมผู้เล่นของคุณที่นั่น TinyNetPlayerController ใหม่จะถูกสร้างขึ้นสำหรับผู้เล่นใหม่แต่ละคนในเกม คุณสามารถส่งอินพุตระหว่างไคลเอนต์ Player Controllers และเซิร์ฟเวอร์ได้โดยใช้ TinyNetInputMessage
GameObject แต่ละรายการที่คุณต้องการรวมโค้ดเครือข่ายจะต้องมี TinyNetIdentity เพียงอันเดียว หลังจากนั้นคลาสที่ต้องการรวมโค้ดเครือข่ายจะต้องใช้ ITinyNetComponent หรือคุณสามารถทำให้เป็นลูกของ TinyNetBehaviour เพื่อเข้าถึงฟีเจอร์มากมาย เช่น [TinyNetSyncVar] และ RPC วิธีการ
ด้วยการสร้างคลาสที่ได้รับจาก TinyNetBehaviour คุณจะสามารถเพลิดเพลินกับการทำให้ซีเรียลไลซ์และดีซีเรียลไลซ์อัตโนมัติได้ แม้ว่าการทำให้ซีเรียลไลซ์/ดีซีเรียลไลซ์ด้วยตนเองและการใช้ ITinyNetMessage ยังคงเป็นไปได้
คุณสามารถซิงค์คุณสมบัติได้สูงสุด 64 รายการต่อ TinyNetBehaviour โดยใช้แอตทริบิวต์ [TinyNetSyncVar] คุณสามารถข้ามขีดจำกัดนี้ได้ตลอดเวลาโดยใช้วิธี TinySerialize และ TinyDeserialize ของคุณเอง
คุณสามารถวางไข่และทำลายอ็อบเจ็กต์ในเครือข่ายได้เพียงเรียก TinyNetServer.instance.SpawnObject และ TinyNetServer.instance.DestroyObject บนเซิร์ฟเวอร์ โดยกำหนด GameObject ที่ถูกต้องซึ่งมี TinyNetIdentity
อย่าลืมลงทะเบียนรูปแบบสำเร็จรูปทั้งหมดที่มี TinyNetIdentity บน TinyNetGameManager ของคุณ ด้วยตนเองหรือโดยการคลิกปุ่ม ลงทะเบียนรูปแบบสำเร็จรูป TinyNetIdentity ทั้งหมด บนตัวตรวจสอบ TinyNetGameManager ของคุณ