[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Oppdatering og hastighet




En liten oppsummering

Vi begynte diskusjonen med en frame basert løsning. Der serveren bygger
opp en frame med posisjon og id til de objektene som skal tegnes og sender
denne til clienten. Clienten henter så objektene(grafikken) med gitt id
fra gos eller lokalt mellomlager for så å tegne dem.

Det har kommet frem i diskusjonen at med en scene med ca 100 objekter 
er vi over størrelsen til en UDP pakke. For at denne løsningen skulle være
akseptabel så jeg det som en forutsettning at vi skulle kunne klare oss
med en pakke for å beskrive en frame. 

Det er blitt mer og mer klart at en løsning med en litt smartere klient en
en frame viser er nødvendig. Det betyr at klienten må ha en form for
representasjon av den delen av verdnen som er synlig for spilleren.
Serveren vil nå oppdatere denne representasjonen med kommandor som: Nytt
objekt med id # i posisjon X, Objekt 5 beveger seg med hastighet 5m/s i
rettning Y, Objekt 23 starter animasjon 3 ved tid T, Fjærn objekt 12,
Klargjør grafikk for objekt 11, osv.
Klienten vil fortsatt hente den grafiske representasjonen og animasjoner 
av objektene fra GOSen.

Når det gjelder faren for joks så ser ikke jeg at den er tilstede hvis id
feltet kun er en unik nummerisk verdi og det ikke er sent noe som helts
informasjon om logisk funksjon til objektet. Da kan også id'en
dynamsik forandre seg over tid slik at en ikke kan lage en liste som sier
at objekt 5 er en Stol, Objekt 6 er et sverd osv. Hvis noe gidder å lage
et system som lagrer unna signatur av de enkelte objekten for så å
dynamisk sjekke dette så bryr det ikke meg. En kan eventuelt si i reglene
til spillet at det ikke er lov å svarteliste de som er slemme. Noe slikt
tror jeg er helt vanlig i det administrative systemet rundt andre MUDs.

Når brukeren så velger et objekt med f.eks musa så sendes objekt IDen til
game serveren som så sender mulige valg for dette objektet tilbake til
klienten.

En mer inteligent klient en dette tror jeg ikke er nødvendig. Hovediden er
å samle mest mulig makt til gameserveren og ha mest mulig dumme klienter.
Smarte klienter som har mye informasjon om status til de ulike objekten og
gjør beregniner og avgjørelser på vegne av gameserveren ser jeg på som et
hav av problemer mhp. joks. Klienter som kontakter andre klienter neppe.
De som spiller gjør dette bare hvis linken til gameserveren er ok, skal en
da opprette forskellige linker mellom klienter så stiller dette bare enda
større krav til nettet og gjør problematikk rundt liker som dør nesten
uoverkommelige. 

Hvis en gruppe personer går i lag og holder til i samme netsegment (f.eks
ei gruppe på nvg). Kan det jo være aktuelt å lage en form for felles
chashe og en lokal server som får den informasjonen de klienten trenger,
som så fordeler informasjonen til hver enkelt klient. Går du sammen så har
en jo nesten samme syn på verdnen.


Hilsen
Anders 

 -----------------------------------------------------------
|    ******  Anders Reggestad                               |
|  *   *   *  Norges teknisk-naturvitenskapelige universitet|
| *    *   *  E-Mail  : andersr@pvv.ntnu.no                 |
| *********  Post adresse  : Studpost. 159 7034 Trondheim   |
| *    *   *  Hybel adresse : Rainheimliv. 21A 7053 Ranheim |
| *    *    *  Hjemmeside : http://www.pvv.ntnu.no/~andersr |
 -----------------------------------------------------------