De grootste kennisbank van het HBO

Inspiratie op jouw vakgebied

Vrij toegankelijk

Terug naar zoekresultatenDeel deze publicatie

Networking implementation & optimizations for a VR-AR game with mocap, VoIP and gameplay data

Networking implementation & optimizations for a VR-AR game with mocap, VoIP and gameplay data

Samenvatting

This paper deals with the networking implementation and optimizations for a VR and AR game with mocap suit, voice over IP and gameplay data like player information, lobby, etc. The logic for implementing these systems in the game is studied.
First, there is a general description of the game so the reader can understand more easily what type of data is expected to be transferred over the network.
Some techniques for compressing mocap data like deflate algorithm and delta compression are studied and tested. The first one is a combination of huffman coding and LZ77 algorithm. Delta compression is a custom made implementation for collecting and sending mocap data that have changed by a given threshold. If threshold is set to 0 this technique is lossless. If it’s set to higher than 0 it is lossy.
Then Dissonance is studied and tested for implementing VoIP in the game. Implementation details follow. A lobby is implemented based on a choice from networking options and architecture. A players dictionary is implemented in the server and the clients where the keys are the IDs created by the server upon connecting to a client which are in turn broadcasted. The values are a Player structure with various data like class, name, ready state, spawn position etc.
Then gameplay data is networked including player’s spawn positions, and player spawning is implemented at the server and the clients. Loading the game world at the server and at the clients is handled. After the world has loaded at the server, clients fetch tile data from the server at a specific rate (like three times per second) based on their position in the world. Using some hexagonal grid functions it’s possible to retrieve the tile where the player is positioned in the server and get the tiles that are in a specific range like six, and send the total amount of tiles to all clients with the ID of the recipient client. The client which has the same ID as the packet ID processes the information and renders its world.
Following are some implementation details on how player movement works with running pathfinding at the server side since the server computer has much more processing power and better specifications than the mobile devices and can better handle player navigation and pathfinding in the game world.
Finally a test is conducted where all these streaming data like mocap, VoIP, tile and movement data is transmitted over the network to see whether the server can handle the network load.
In the end conclusions are derived from the tests and implementation results.

Toon meer
OrganisatieSaxion
OpleidingInformatica
Datum2019-02-01
TypeBachelorscriptie
TaalEngels

Op de HBO Kennisbank vind je publicaties van 26 hogescholen

De grootste kennisbank van het HBO

Inspiratie op jouw vakgebied

Vrij toegankelijk