Game loop
Lord Gaga
12/10/2016 19:47:26Hallo,
Ik ben alweer een tijdje bezig met een spelletje in HTML5 en er is een klein dingetje waar ik tegenaan loop.
Graag zou ik mijn spel voorzien van de mogelijkheid om samen met andere spelers te spelen, hiervoor zou ik dus een websocket server moeten opzetten. Dit lukt en gaat allemaal prima. Echter zie ik nu 2 manieren waarop ik inkomende server berichten kan afhandelen.
Stel ik wil een alert laten zien wanneer er een nieuw bericht van de server binnenkomt. Dan kan dat op de volgende manieren:
Manier 1:
Wanneer de client een bericht binnenkrijgt wordt meteen een alert getoond.
Manier 2:
Wanneer de client nu een bericht binnenkrijgt wordt deze opgeslagen en pas in het eerstkomende frame worden de berichten afgahendeld. Op deze manier blijft alles netjes binnen de 60 frames per seconde.
Mijn vraag is nu: welke manier wordt het meest toegepast en biedt de meeste voordelen?
Ik hoop dat iemand mijn vraag kan beantwoorden. :)
Ik ben alweer een tijdje bezig met een spelletje in HTML5 en er is een klein dingetje waar ik tegenaan loop.
Graag zou ik mijn spel voorzien van de mogelijkheid om samen met andere spelers te spelen, hiervoor zou ik dus een websocket server moeten opzetten. Dit lukt en gaat allemaal prima. Echter zie ik nu 2 manieren waarop ik inkomende server berichten kan afhandelen.
Stel ik wil een alert laten zien wanneer er een nieuw bericht van de server binnenkomt. Dan kan dat op de volgende manieren:
Manier 1:
Wanneer de client een bericht binnenkrijgt wordt meteen een alert getoond.
Manier 2:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var messages = [];
websocket.addEventListener('message', function(message)
{
message.push(message);
});
function gameloop()
{
for (var i = 0; i < messages.length; i++)
{
alert(messages[i].data);
}
messages = [];
}
websocket.addEventListener('message', function(message)
{
message.push(message);
});
function gameloop()
{
for (var i = 0; i < messages.length; i++)
{
alert(messages[i].data);
}
messages = [];
}
Wanneer de client nu een bericht binnenkrijgt wordt deze opgeslagen en pas in het eerstkomende frame worden de berichten afgahendeld. Op deze manier blijft alles netjes binnen de 60 frames per seconde.
Mijn vraag is nu: welke manier wordt het meest toegepast en biedt de meeste voordelen?
Ik hoop dat iemand mijn vraag kan beantwoorden. :)
Gewijzigd op 12/10/2016 19:48:06 door Lord Gaga
Er zijn nog geen reacties op dit bericht.