Is ACE good for RTS game programming?
hi, there im new to network programming, i've read the faq for this forum and found several network librarys such as ENet, openTNL, RakNet, etc. i noticed that ACE ( Adaptive Communication Environment) was not mentioned there at all. so my question is : is ACE good for (RTS) network game programming, it is low level or high-level library? thanks.
In my opinion, ACE is too heavy-weight for most interactive games. It has different goals.
enum Bool { True, False, FileNotFound };
thanks hplus0603, i will not use ACE for games.
anyway, im wondering why its 'heavy' for network games, does it take too long to compile or the compiled library too big in size? or its data transfer speed is slower than other network librarys?
anyway, im wondering why its 'heavy' for network games, does it take too long to compile or the compiled library too big in size? or its data transfer speed is slower than other network librarys?
The general design, and what it does to your data, is not well suited to low latency games, in my opinion: It's more of an enterprise-type distributed object broker than a real-time networking library; It uses TCP internally; It solves non-game problems like network locking, but not game problems like distributed physics state management, extrapolation, etc.
Another example: They address "real time" in the traditional sense of the word: they guarantee that all operations can complete within a given amount of time. To do that, you have to describe the amount of time your operations will take, which clearly will vary wildly between different classes of machines. That's a great facility if you're building a dedicated communications controller, but it's needless complexity for typical games (or, indeed, most distributed simulations, especially the ones that can load balance).
Another example: They address "real time" in the traditional sense of the word: they guarantee that all operations can complete within a given amount of time. To do that, you have to describe the amount of time your operations will take, which clearly will vary wildly between different classes of machines. That's a great facility if you're building a dedicated communications controller, but it's needless complexity for typical games (or, indeed, most distributed simulations, especially the ones that can load balance).
enum Bool { True, False, FileNotFound };
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement