Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 28 Jun 2013
Offline Last Active Aug 21 2015 10:54 PM

Topics I've Started

Graphic anomalies

26 December 2014 - 06:58 AM



I've recently begun learning 3D programming and am curious as to the reason for the visual anomalies occuring in my output; I'm not sure how to explain it so I'll just provide the binary: http://wikisend.com/download/559838/Game.zip (sorry for the size)


You'll see what I mean when moving; it occurs on the 'walls'. I'm assuming it's something simple and will be obvious on sight (hopefully)


Also, as I'm from a background in writing isometric engines where drawing order is of paramount importance to get correct results, I find it somewhat unnerving that I can just throw whatever polygons I like at the adapter, in any order, and the resulting output will be correct. Are there any caveats to this line of thinking? (ignoring performance concerns)



P.S., if you find my 'game' familiar, that's because I got bored of manually plotting vertices and decided to reverse an old game I'm fond of.

Queries on a synchronization model

28 June 2013 - 08:11 AM

I'm sure this has a name but I'm not entirely sure what it is:

  • Server and client(s) run the same deterministic simulation
  • Clients send input to server
  • Server aggregates input from all clients over period of time
  • Simulation at server [and after propagation, clients] integrates time/input.

The reasons I've chosen this model are:

  • To reduce bandwidth requirements and thus also latency (the game involves alot of densely packed units)
  • It's easier to extend and frankly,more elegant than a dumb-client model (assuming the determinism quality can be assured)
  • Enables a more thorough anti-cheating system

There are however three main issues I foresee which I'd like some input on:


Firstly, as the simulation client-side will only advance upon receiving a 'frame' of input it will be highly sensitive to network jitter. I believe this could be solved by using the usual latency compensation/hiding techniques.


Secondly, the entire model is predicated on what is essentially a perfect information game thus enabling unscrupulous players to gain information otherwise hidden. Obviously this is not unique to this model but it's exagerated.


Lastly, filtering client input in respect to the relevance of that input to another client (e.g, proximity) would be desireable (for both bandwidth and security) however it's clearly going to raise problems with synchronization. Possibly partitioning of the world-space and have clients only run the simulation for those sectors which are within proximity would be a solution.