User Tools

Site Tools


proton_info

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
proton_info [2010/10/25 14:52]
seth
proton_info [2010/12/28 14:16]
seth
Line 11: Line 11:
   * Components designed to be modular and loosely linked, should be possible to understand and fix bugs when you find them yourself   * Components designed to be modular and loosely linked, should be possible to understand and fix bugs when you find them yourself
   * Created to be easy to compile on many systems, a single .mak should be all that is required, avoiding the automake/​configure tools   * Created to be easy to compile on many systems, a single .mak should be all that is required, avoiding the automake/​configure tools
-  * Device specifics abstracted out, native UI usage avoided. ​ Games look and play the same on all devices, but you won't see the standard iOS buttons or dialog boxes in your game for example +  * Device specifics abstracted out, native UI usage avoided. ​ Games look and play the same on all devices, but you won't see the standard iOS buttons or dialog boxes in your game for example ​(with some exceptions, for instance, the native pop-up keyboard is invoked for text entry if needed) 
-  * Can write raw GL/GLES code and easily import ​existing C/C++ source you have +  * Can write raw GL/GLES code and use existing C/C++ source you have 
-  * An (optional) entity/​component system that is designed to conbat ​"​entity bloat",​ subclass hell and complexity creep - an entity can be anything, an entire game, a widget, a non-rendering sound that plays every ten seconds or something that detects when the Escape key is hit+  * An (optional) entity/​component system that is designed to combat ​"​entity bloat",​ subclass hell and complexity creep - an entity can be anything, an entire game, a widget, a non-rendering sound that plays every ten seconds or something that detects when the Escape key is hit
  
 == What Proton SDK isn't === == What Proton SDK isn't ===
Line 22: Line 22:
   * Not every platform is supported yet.  Looking for volunteers! ​ Or, [[seth@rtsoft.com|send me]] a device/SDK and I'll see what I can do   * Not every platform is supported yet.  Looking for volunteers! ​ Or, [[seth@rtsoft.com|send me]] a device/SDK and I'll see what I can do
   * Doesn'​t look and "​feel"​ like a native app.  For games, this usually isn't a problem. ​ But if you are writing a spreadsheet or twitter client, this would be the wrong thing to use   * Doesn'​t look and "​feel"​ like a native app.  For games, this usually isn't a problem. ​ But if you are writing a spreadsheet or twitter client, this would be the wrong thing to use
-  * Not a full game engine, more like a toolkit. ​ For example, you won't find built-in pathfinding or a level editor like with [[www.rtsoft.com/​novashell|Novashell]]+  * Not a full game engine, more like a toolkit. ​ For example, you won't find built-in pathfinding or a level editor like with [[http://www.rtsoft.com/​novashell|Novashell]]
   * Made by [[http://​www.rtsoft.com/​pages/​about.php|one guy]] who isn't charging so adjust your tech support expectations accordingly   * Made by [[http://​www.rtsoft.com/​pages/​about.php|one guy]] who isn't charging so adjust your tech support expectations accordingly
  
 +== What's the down size of all this entity/​component stuff the framework has? ==
  
 +  * It can be slow.  It's mostly boost:​signals fault.  ​
 +  * If you have 200 entities, you should not be using entities and components for them, you should be using one component that handles all your entities in a faster more logical form.
 +  * It's complicated. ​ If you aren't organized the abiltity to create variables and functions on the fly (and schedule same) can get out of control fast!
 +  * The syntax is sucky. ​ Forcing C++ to approach the features of flexible languages like lua and python just isn't a perfect solution, you'll have to decide if the trade-offs of being able to stay in glorious C++ at all times is worth it.
 +  * The good news is you don't really have to touch that stuff at all, it's optional. ​ But especially for GUIs it's very useful.
proton_info.txt · Last modified: 2011/04/26 22:34 by seth