Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
andy
Založen: 20. 09. 2007 Příspěvky: 54
|
Zaslal: 30. květen 2008, 10:30:45 Předmět: |
|
|
ja by som aj pouzil UDP, ale pouzivam multisync.h a tato kniznica pouziva TCP. a inak neviem ako by som urobil tu komunikaciu. poznate ine kniznice, kde by to nebol problem urobit? |
|
Návrat nahoru |
|
|
rezna
Založen: 27. 07. 2007 Příspěvky: 2156
|
Zaslal: 30. květen 2008, 10:33:12 Předmět: |
|
|
WinAPI -> WinSock |
|
Návrat nahoru |
|
|
andy
Založen: 20. 09. 2007 Příspěvky: 54
|
Zaslal: 30. květen 2008, 11:00:44 Předmět: |
|
|
rezna napsal: |
WinAPI -> WinSock |
ta kninica sa mi zda velmi zlozita |
|
Návrat nahoru |
|
|
nou
Založen: 28. 07. 2007 Příspěvky: 1047
|
Zaslal: 30. květen 2008, 11:35:45 Předmět: |
|
|
SDL_net _________________ Najjednoduchšie chyby sa najtažšie hľadajú. |
|
Návrat nahoru |
|
|
if.then
Založen: 13. 04. 2008 Příspěvky: 579
|
Zaslal: 30. květen 2008, 13:10:17 Předmět: |
|
|
andy napsal: |
rezna napsal: |
WinAPI -> WinSock |
ta kninica sa mi zda velmi zlozita |
ta kniznica se mi zda velmi obsahla a rychla
Konaktuj me na ICQ, zacinam s WinSock |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1525 Bydliště: Telč
|
|
Návrat nahoru |
|
|
andy
Založen: 20. 09. 2007 Příspěvky: 54
|
Zaslal: 1. červen 2008, 16:11:22 Předmět: |
|
|
dik, za dobry link, myslim ze sa na to pozriem, ale az po skuskach..
Myslis si ze ked urobim komunikaciu pomocou UDP tak, ze aplikacia bude dostatocne rychlo spracovavat spravy a nebude treba este dopocitavat pohyb? |
|
Návrat nahoru |
|
|
frca
Založen: 28. 07. 2007 Příspěvky: 1552
|
Zaslal: 1. červen 2008, 20:11:43 Předmět: |
|
|
Těžko. Dopočítávat to budeš každopádně, pokud to má být nějaká kvalita.
Vem si třeba Quake 3 Arena - tam je komunikace UDP a pohyb se dopočítává (přenášejí se údaje o poloze a rychlosti objektů). |
|
Návrat nahoru |
|
|
andy
Založen: 20. 09. 2007 Příspěvky: 54
|
Zaslal: 1. červen 2008, 21:44:35 Předmět: |
|
|
No to potom nieje dobre. ako uz povedal semo, je to alchymia.
skusal som vymysliet nejaky algoritmus ale zatial bez uspechu.. , nenasiel by sa uz hotovy kod |
|
Návrat nahoru |
|
|
frca
Založen: 28. 07. 2007 Příspěvky: 1552
|
Zaslal: 1. červen 2008, 22:25:41 Předmět: |
|
|
Našel, zdrojáky již uvedeného quakea 3. Jestli jsi líný to v nich hledat, tak se na mě nezlob. |
|
Návrat nahoru |
|
|
pcmaster
Založen: 28. 07. 2007 Příspěvky: 1821
|
Zaslal: 2. červen 2008, 00:38:17 Předmět: |
|
|
Ja neviem co andy riesi Nic ine ako UDP sa pouzit vobec neoplati a dopocitavat pohyb je nutne v kazdom pripade. Tak kde je problem? Otvorit socket a sup sup _________________ Off-topic flame-war addict since the very beginning. Registered since Oct. 2003!
Interproductum fimi omne est. |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1525 Bydliště: Telč
|
Zaslal: 2. červen 2008, 10:28:12 Předmět: |
|
|
Na lokální síti by to mohlo běžet plynule i bez dopčítávání, 100Mbit lecos pojme. Nejdřív to zkus bez dopočítávání.
Ale i tak se toho dopočítávání moc neboj. Od startu síťový hry se začne všem hráčům počítat herní čas T. Zpráva bude obsahovat kromě dat ještě čas odeslání S. Takže víš, že v době S byl hráč na pozici X. (takže ti přišly data z minulosti). Otázka zní, kam se posunul hráč za dobu Delta = T-S? (to je ten čas, kdy zpráva putovala sítí). Musí bejt na pozici X + nějaký kousek. Ten vypočteš podle středoškolského vzorce pro dráhu dráha=Delta * rychlost. A rychlost znáš, buď je ve hře konstantní, nebo jí pošli taky.
Tolik k principu, jsou tam ještě různý drobný "libůstky", jako že seřízení času na začátku neni až taková prdel (ale dá se to fejkovat). _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
Augi
Založen: 28. 07. 2007 Příspěvky: 781 Bydliště: Čerčany
|
Zaslal: 2. červen 2008, 11:37:14 Předmět: |
|
|
A případně rychlost si můžeš taky dopočítat pomocí středoškolské matematiky ze dvou předchozích údajů o poloze a času. |
|
Návrat nahoru |
|
|
if.then
Založen: 13. 04. 2008 Příspěvky: 579
|
Zaslal: 2. červen 2008, 13:31:12 Předmět: |
|
|
EDIT: Neni to skvely kod, ale psal jsem to za 5 min jak pro blbce Jinak se omlouvam jo semo, myslel jsem to tak, ze se pri prijeti zpravy nastavi pozice a spocita se cas = akt.cas - cas odesleni zpravy
EDIT2: Jsem z planety krypton
Naposledy upravil if.then dne 2. červen 2008, 16:57:18, celkově upraveno 2 krát |
|
Návrat nahoru |
|
|
]semo[
Založen: 29. 07. 2007 Příspěvky: 1525 Bydliště: Telč
|
Zaslal: 2. červen 2008, 15:54:01 Předmět: |
|
|
if.then> z který jsi planety, prozdrail bys?
Kromě toho, za ten kód co si napsal bych ti dal tak akorát vyžvejkaný Pedro, a ne bonboniéru. Co když ta zpráva přijde se zpožděním? Budeš Model vracet zpátky kde byl v okamžiku odeslání zprávy? _________________ Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory |
|
Návrat nahoru |
|
|
|