You are on page 1of 24

Istraživačka nastava

Izradili: Ivano Vidović i Fran Đeraj, 3.D


Sadržaj

1. Što je Unity Networking?


2. Prednosti i nedostatci Unity Networkinga
3. Prednosti i nedostatci mrežnih alata treće strane
4. Unity Networking vs mrežni alati treće strane
5. Prevencija varanja
6. Dosljednost između Klijenta i Servera
7. Optimizacija mreže
8. Implementacija mrežnog sučelja za korisnike
Sadržaj

9. Osnovne Sigurnosne Prakse u mrežnim igrama


10. Kriptografija u mrežnom okruženju
11. Funkcionalnosti Mrežnog Igranja s Cloud Uslugama
12. Primjena Sigurnosnih Mjera u Unity-ju
13. Primjeri varanja i kako ih suzbijati
14. Studija Slučaja: Apex Legends
15. Budući Razvoj Mrežnih Igara
Što je Unity Networking?

• skup alata i usluga unutar Unity-ja koji omogućuje programerima


da implementiraju mrežnu funkcionalnost u svoje igre
• To uključuje mogućnost povezivanja više igrača putem interneta,
razmjenu podataka između klijenata i servera, sinkronizaciju
stanja igre među svim sudionicima i druge mrežne značajke
Što je Unity Networking?

• Unity Networking pruža niz funkcionalnosti koje čine


implementaciju mrežne igre jednostavnom i pristupačnom,
uključujući:
1. High-Level API (HLAPI): Visokorazinski API koji pojednostavljuje
postavljanje osnovne mrežne funkcionalnosti. Olakšava stvari
poput stvaranja i povezivanja s igračima, sinkronizacije objekata
i slanja poruka između klijenata i servera
2. Low-Level API (LLAPI): Niz alata za naprednije programere koji
žele veću kontrolu nad mrežnim aspektima igre. Ovo uključuje
izravnu kontrolu nad paketima podataka, stvaranje prilagođenih
rješenja i slično
Što je Unity Networking?

3. NetworkManager: Sustav upravljanja mrežom koji pomaže u


lakoći povezivanja igrača, upravljanju mrežnim scenarijima i
praćenju stanja igre
4. RPC (Remote Procedure Call): Omogućuje pozivanje funkcija
između klijenata i servera, čime se postiže sinkronizacija stanja igre
5. Unity Multiplayer Service: Dodatna usluga koja pruža podršku za
mrežne igre, uključujući hosting, povezivanje i druge značajke
Prednosti i nedostatci Unity Networking-a

1. Integracija s Unityjem: 1. Skalabilnost: Za velike kompleksne


Jednostavna integracija u Unity mrežne igre, Unity Networking
razvojno okruženje. može pokazati ograničenja u
skalabilnosti.
2. Ugrađena Podrška: Odmah
dostupna u okviru Unity 2. Odvojenost od Unity Multiplayer
Services: Unity Multiplayer
platforme, što olakšava
Services nije uvijek uključen, što
početak rada. može uzrokovati dodatni posao kod
3. High-Level i Low-Level API: konfiguracije
Pruža fleksibilnost - korisnici
mogu odabrati High-Level za
jednostavne scenarije ili Low-
Level za veću kontrolu.
Prednosti i nedostatci mrežnih alata treće
strane

1. Specijalizirane Značajke: Alati 1. Kompatibilnost: Ponekad može biti


treće strane mogu pružiti specifične izazovno osigurati potpunu
značajke koje Unity Networking kompatibilnost s Unityjem.
možda nema. 2. Troškovi i Licenciranje: Neki od alata
2. Skalabilnost: Neki alati treće treće strane mogu zahtijevati
strane mogu biti skalabilniji za troškove licenciranja ili plaćanja
velike mrežne igre. usluga.
3. Nepovezanost s Unityjem: Moguće 3. Učenje Sustava: Integracija s novim
je koristiti ove alate s drugim alatima može zahtijevati dodatno
razvojnim okruženjima osim Unityja vrijeme za učenje
Unity Networking vs mrežni alati treće strane

• Odabir između Unity Networking-a i alata treće strane ovisi o


specifičnostima projekta.
• Unity Networking nudi brz početak i integraciju s Unityjem, dok
alati treće strane mogu biti korisni za projekte s posebnim
zahtjevima ili većim razmjerima.
• Važno je pažljivo procijeniti potrebe projekta prije donošenja
odluke
Prevencija varanja

• Strategije i metode:
1. Server-side Provjere: Sve kritične odluke (npr.
validacija poteza ili rezultata) provode se na serveru,
čime se sprječava manipulacija s klijentske strane
2. Enkripcija Komunikacije: Koristi se enkripcija podataka
kako bi se otežala analiza i manipulacija podataka
između klijenta i servera
3. Anti-Cheat Softveri:Integracija specijaliziranog softvera
za otkrivanje poznatih hack-ova
Prevencija varanja

• Integracija Sigurnosnih Mjera:


1. Višeslojni Model Sigurnosti: Implementacija višeslojnog
modela sigurnosti koji uključuje različite razine
autentifikacije i autorizacije
2. Praćenje i Izvješćivanje: Kontinuirano praćenje
ponašanja igrača kako bi se otkrile neuobičajene
aktivnosti, automatizirano izvješćivanje o sumnjivim
aktivnostima
3. Sankcije i Kazne: Postavljanje jasnih pravila i sankcija za
igrače koji varaju
Dosljednost između Klijenta i Servera

• Kako Održati Dosljednost Podataka:


1. Centralizirano Upravljanje Stanjem: Server čuva centralnu
kopiju stanja igre, klijenti šalju svoje akcije na server, a
server ažurira stanje igre i šalje promjene natrag klijentima
2. Sinkronizacija Pomoću Vremenskih Žigova: Korištenje
vremenskih žigova kako bi se označilo kada su promjene
napravljene, server koristi vremenske žigove za praćenje
redoslijeda akcija klijenata
3. Predviđanje Klijenta: Klijenti predviđaju rezultate svojih
akcija lokalno, server potvrđuje i korigira predviđanja
klijenata
Dosljednost između Klijenta i Servera

• Različite Metode za Sinkronizaciju:


1. Autoritativni Model: Server ima autoritet nad svim
ključnim odlukama, klijenti izvršavaju akcije, a server
potvrđuje i ažurira stanje
2. Delta-Kompresija: Slanje samo promjena umjesto
cijelog stanja
3. P2P (Peer-to-Peer) Model: Direktna komunikacija
između klijenata umjesto posredovanja servera,
zahtijeva pažljivo upravljanje kako bi se održala
dosljednost
Optimizacija mreže

• Savjeti za optimizaciju mrežnih performansi:


• Minimiziranje prometnih podataka
• Optimizacija protokola
• Smanjenje broja mrežnih poziva
• Smanjenje latencije:
• Optimizacija koda
• Korištenje CDN-a (Content Delivery Network)
• Geografsko razmještanje poslužitelja
Implementacija mrežnog sučelja za korisnike

• Mrežno sučelje za igrače – prikazivanje broja igrača i drugih relevantnih


podataka
• Chat sustav
• Ljestvice i Rezultati
• Sigurnosne Mjere
• Mrežna Sigurnost
• Testiranje na Različitim Uređajima
Osnovne Sigurnosne Prakse u mrežnim igrama

• Autentifikacija igrača (Oauth, JWT)


• Autorizacija pristupa
• Enkripcija podataka
• Osiguranje komunikacije
• Redovito ažuriranje sustava
Kriptografija u mrežnom okruženju

• Šifriranje podataka
• Digitalni potpisi
• SSL/TLS protokoli
• Ključevi i certifikati
• End to end šifriranje
• Sigurnosna pitanja
Funkcionalnosti Mrežnog Igranja s Cloud
Uslugama

• Globalna dostupnost
• Fleksibilnost
• Sigurnost Podataka
• DDoS zaštita
• Upravljanje Multiplayer Sustavima
Primjena Sigurnosnih Mjera u Unity-ju

• Autentifikacija igrača – PlayerPrefs


• Autorizacija pristupa – RBAC
• Zaštita od varanja – UnityNetworking
• Redovito ažuriranje
Primjeri varanja i kako ih suzbijati

Primjeri Kako suzbijati


• Wall Hacks • Anti-cheat alati
• Aimbot • Server-side provjere
• Speed Hacks • Enkripcija i validacija
podataka
Studija Slučaja: Apex Legends

• Izazovi Implementacije Mreže:


• Veliki broj igrača
• Sustav od zaštite varanja
• Tehnički Aspekti Uspješne Implementacije:
• Fleksibilna Mrežna Arhitektura
• Server-Side Provjere
• Rezultati Uspješne Implementacije:
• Velika Popularnost
• Pozitivan Igrački Dojam
Studija Slučaja: Apex Legends

• Apex Legends predstavlja primjer uspješne implementacije mreže


u battle royale igri, ističući važnost prilagodljive arhitekture,
snažnih sigurnosnih mjera i redovitih tehničkih nadogradnji kako bi
se održala kvaliteta igračkog iskustva
Budući Razvoj Mrežnih Igara

• Trendovi u razvoju mrežnih igara:


• 5G mrežna revolucija
• Cloud gaming
• AR i VR
• Cross-Platform igranje
Hvala Vam na pažnji!

You might also like