.[ ČeskéHry.cz ].
UNITY 3D - network game
Jdi na stránku Předchozí  1, 2, 3  Další
 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Obecné
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
frca



Založen: 28. 07. 2007
Příspěvky: 1561

PříspěvekZaslal: 24. leden 2011, 13:25:06    Předmět: Odpovědět s citátem

Tak mi ukaž nějakou hru s realtime multiplayerem, který jede výhradně přes TCP.
_________________
www.FRANTICWARE.com
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
micky



Založen: 28. 02. 2008
Příspěvky: 348
Bydliště: Plzeň, Praha

PříspěvekZaslal: 24. leden 2011, 14:03:50    Předmět: Odpovědět s citátem

frca napsal:
Tak mi ukaž nějakou hru s realtime multiplayerem, který jede výhradně přes TCP.


Tak víš co, v rámci LANu bychom se asi na TCP/IP shodli, že může fungovat. Tuším, že Bulánci to tak měli. Ale jinak globálně asi na nic nepřijdu.
_________________
https://www.bluepulsar.cz/
https://twitter.com/11thDream_Game/
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Fremen



Založen: 30. 12. 2008
Příspěvky: 9

PříspěvekZaslal: 24. leden 2011, 14:36:42    Předmět: Odpovědět s citátem

frca napsal:
Tak mi ukaž nějakou hru s realtime multiplayerem, který jede výhradně přes TCP.


Třeba WOW? (kromě voice chatu, který je přes UDP).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 24. leden 2011, 15:51:23    Předmět: Odpovědět s citátem

frca napsal:
Tak mi ukaž nějakou hru s realtime multiplayerem, který jede výhradně přes TCP.


Diablo 2 a neopatchovanej Starcraft.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1050

PříspěvekZaslal: 24. leden 2011, 16:29:44    Předmět: Odpovědět s citátem

no pri FPS strielackach je myslim UDP nutnost. kedze tam ide o tie ms. ale RTS a RPG to nie je nutnost. tam sa prave zide to ze je zarucene dorucenie na rozdiel od FPS kde vynechany paket neboli a proste to lagne.

tusim aj Warcraft 3 mal TCP. UDP pouzival len na objavenie spoluhracov na LAN pre broadcast.
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Al



Založen: 23. 10. 2007
Příspěvky: 196

PříspěvekZaslal: 24. leden 2011, 18:46:57    Předmět: Odpovědět s citátem

Nezlobte se na mě, ale někteří tu objevujete Ameriku.

A navíc mi to připomíná, že je tomu už 10 let, co jsem programoval síťovou část Hidden and Dangerous 2. Tehdy to bylo náročné, každej bit jsme počítali a zvažovali, jestli ho můžeme dovolit poslat. Dnes je to ve srovnání s tehdejší dobou ráj na Zemi.

A k věci: Ten problém je opravdu obecný síťový a netýká se konkrétního frameworku. Chcete-li komunikovat v internetu, počítač, ke kterému se připojujete musí mít IP adresu. IP je prostě adresa. Počítač bez veřejné IP není prostě vidět a nedá se s ním spojit. TCP má tu výhodu, že ke spojení stačí, aby jeden z těch počítačů v herní síti měl IP adresu a všechny ostatní se k němu připojí. Většina her podle mě používá TCP. UDP má výhodu, že je fakt hbitější, ale má nevýhodu, že se s ním hůř algoritmicky pracuje, neboť tam není zaručeno doručení paketu (data se mohou ztrácet). A hlavně UDP vyžaduje, aby všechny počítače v herní síti měly veřejné IP adresy!! Pomocí UDP se tedy v praxi dá opravdu bez problémů hrát jedině v LAN. Tj. to je tak na školní či firemní pařby, ne na nějaké internetové hry.

Každopádně prvotní otázka hraní bez veřejné IP a bez master serveru nemá řešení. To prostě udělat nejde.

A s IPv6 je podle mě problém s providery. Já teda nevím, jak který provider válčí s moderními protokoly, ale neprojde to přes řadu aktivních síťových prvků (switche, routery apod.), takže to je problém. Možná až dojdou IPv4 adresy (a to bude už brzo), začnou se ledy hýbat rychleji a do pár let máme IPv6 všude. Kdo ví...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1050

PříspěvekZaslal: 24. leden 2011, 19:42:36    Předmět: Odpovědět s citátem

mozes mi povedat preco je potrebne aby vsetky mali pri UDP verejnu IP?
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 24. leden 2011, 21:07:00    Předmět: Odpovědět s citátem

Al napsal:
A navíc mi to připomíná, že je tomu už 10 let, co jsem ... Tehdy to bylo náročné, každej bit jsme počítali a zvažovali, jestli ho můžeme dovolit poslat. Dnes je to ve srovnání s tehdejší dobou ráj na Zemi.


A ještě řekni, že na tebe tehdy byli škaredí a ubližovali ti Wink a že dneska už je to ve srovnání s tou dobou hamburgerovej ráj. Smile
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
if.then



Založen: 13. 04. 2008
Příspěvky: 579

PříspěvekZaslal: 24. leden 2011, 21:48:46    Předmět: Odpovědět s citátem

Al> "Měli jsme jen jedničky a nuly. A někdy jsme neměli ani jedničky. Psal jsem program databáze a používal jen samé nuly." "Vy jste měli nuly? My jsme museli používat písmeno O!" (Dilbertův princip)

Nicméně jsem měl dojem, že UDP je stejně jako TCP nadstavba IP, tudíž by veřejné adresy měly mít stejný vliv. Tj. server musí mít veřejnou, ale po otevření spojení je možno komunikovat oběma směry. A taky jsem měl dojem, že UDP používají prakticky všechny FPS (CoD, CS...) i na hru po internetu, tak proč by to bylo nepoužitelné? Shocked
_________________
For guns and glory, go to www.ceske-hry.cz.
For work and worry, execute VC++.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
nou



Založen: 28. 07. 2007
Příspěvky: 1050

PříspěvekZaslal: 24. leden 2011, 21:55:52    Předmět: Odpovědět s citátem

nevyhoda TCP je taktiez v tom ze OS to nemusi odoslat okamzite to co aplikacia zapisala. ma to dokonca aj nejaky nazov na ktory si teraz nespomeniem. ale proste caka kym sa nastrada aspon na jeden vetsi paket.
cheche uz vidim ten flame TCP vs UDP.
_________________
Najjednoduchšie chyby sa najtažšie hľadajú.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
if.then



Založen: 13. 04. 2008
Příspěvky: 579

PříspěvekZaslal: 24. leden 2011, 21:59:48    Předmět: Odpovědět s citátem

Typické C-H: Jsou to dva protokoly, sloužící k jedné věci, ale odlišným způsobem.

FLAME ALERT! Twisted Evil
_________________
For guns and glory, go to www.ceske-hry.cz.
For work and worry, execute VC++.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mem



Založen: 28. 07. 2007
Příspěvky: 1959
Bydliště: Olomouc

PříspěvekZaslal: 25. leden 2011, 08:33:39    Předmět: Odpovědět s citátem

if.then napsal:
Nicméně jsem měl dojem, že UDP je stejně jako TCP nadstavba IP, tudíž by veřejné adresy měly mít stejný vliv. Tj. server musí mít veřejnou, ale po otevření spojení je možno komunikovat oběma směry.

Ustavení spojení (handshaking), které pak umožní streamovat pakety oběma směry, se děje jen u TCP (a nižší vrstva v OSI pak zajišťuje i správné doručování pořadí, doposlání při chybě atd.).

U UDP se ale jednorázově odesílá zpráva, nižší vrstva nedrží žádný connection a protistrana nemá kam odpovědět (typicky se ani nenastavuje zdrojový port)
_________________
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Yossarian



Založen: 28. 07. 2007
Příspěvky: 274
Bydliště: Šalingrad

PříspěvekZaslal: 25. leden 2011, 11:03:36    Předmět: Odpovědět s citátem

Mem napsal:
U UDP se ale jednorázově odesílá zpráva, nižší vrstva nedrží žádný connection a protistrana nemá kam odpovědět (typicky se ani nenastavuje zdrojový port)
eeeeee, co prosim? a jak potom funguje DNS? routery si pri maskarade vetsinou pamatuji, odkud z vnitrni site priletel UDP packet, a pokud mu na nej nekdo odpovi, tak jej preposlou zpatky spravne, tohoto vyuziva treba udp-punching.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
franz



Založen: 30. 07. 2007
Příspěvky: 1325

PříspěvekZaslal: 25. leden 2011, 11:15:02    Předmět: Odpovědět s citátem

Koukal jsem, že v GameMakeru mají hotové řešení a není potřeba znát lautr nic, v Unity to bude počítám stejné, tak proč tolik křiku kolem?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Fremen



Založen: 30. 12. 2008
Příspěvky: 9

PříspěvekZaslal: 25. leden 2011, 11:47:30    Předmět: Odpovědět s citátem

Yossarian má pravdu. Routery si pamatují odkud a kam byl datagram poslán a když z cílové adresy přijme odpověď, přepošle ho správným směrem zpět. Jak by jinak fungoval i třeba RTP pro VoIP?

UDP má stále velké využití. Třeba dnes se pro hry používají různé "reliable UDP" knihovny např. RakNet, ENet (btw: Unity3D používá RakNet), které označují datagramy identifikátory a zpětně mohou zasílat i potvrzení o přijetí tohoto datagramu, případně odhazují datagramy, které příjdou pozdě apod. Takže ve výsledku je to vesměs velmi podobné jako TCP (laicky řečeno) s některými výhodami (třeba menší velikost paketu; žádné lagy) a nevýhodami (chybí connection management, případně je velmi jednoduchý; routery, kterým dochází pamět, odhazují UDP pakety skoro jako první věc).

Myslím si ale, že když v dnešní době sítí použije game developer kterýkoliv z těchto dvou protokolů správným způsobem, tak chybu neudělá.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Obecné Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2, 3  Další
Strana 2 z 3

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna