User Tools

Site Tools


proton_features

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
proton_features [2012/07/08 07:54]
seth
proton_features [2013/07/26 01:34]
seth
Line 1: Line 1:
 {{:​proton_header_black.png?​|}} {{:​proton_header_black.png?​|}}
 === Features === === Features ===
-  * Create ​2D and 3D games that run on seven platforms in C++:  OSX, Win, iOS, Android, WebOS, RIM Playbook, Linux +  * Create games and apps that run on eight platforms in C++:  OSX, Win, iOS, Android, WebOS, RIM Playbook, Linux, Flash 
-  * Entire engine based on GL (Can use OpenGL ES 1.X or GL 1.3) +  * Entire engine based on GL (OpenGL ES 1.X or GL 1.3) 
-  * In App Purchase integrated for iOS, Android, webOS through a single interface (IAPManager) +  ​* **In App Purchase** integrated for iOS, Android, ​and webOS through a single interface (IAPManager) 
-  * Third party systems integrated: Tapjoy, Hooked, Chartboost, Startapp, Flurry+  * Third party systems integrated: ​[[http://​www.tapjoy.com|Tapjoy]][[http://​www.hookedmediagroup.com/​Mobile/​|Hooked]][[http://​www.chartboost.com/​|Chartboost]], Startapp, ​[[http://​www.flurry.com/​|Flurry]]
   * System specifics are abstracted, hiding the gotchas and caveats of each platform, while still harnessing the full power of the native hardware (for instance, hardware audio decoding)   * System specifics are abstracted, hiding the gotchas and caveats of each platform, while still harnessing the full power of the native hardware (for instance, hardware audio decoding)
-  * Hierarchical entity/​component based system that handles game and GUI objects together (they are the same thing) 
   * Sigslot based (with boost::​signals) messaging system that lets you dynamically schedule calling entity and component functions, set variables   * Sigslot based (with boost::​signals) messaging system that lets you dynamically schedule calling entity and component functions, set variables
-  * Supports screen stretching ​to fit any screen sizemanual multiple resolution layouts, or mixture of both+  * Supports ​fake screen ​resolutions with stretching, ​so you can target only few sizes and automatically scale up/down to the closest one
   * Internal component based GUI system with menus, buttons, scrolling, text input (supporting hardware and soft keyboards)   * Internal component based GUI system with menus, buttons, scrolling, text input (supporting hardware and soft keyboards)
-  * Particle system (LinearParticle) +  * 2D and 3D Particle system (LinearParticle ​for 2d, and Irrlicht for 3D
-  * Font system supporting in-line coloring, kerning, scaling, wrapping. Imports BMFont generated fonts.+  * Font system supporting in-line coloring, kerning, scaling, wrapping. Imports BMFont generated fonts. ​(no unicode yet..)
   * Simple to use AudioManager with smart caching, streaming, and per sfx controls. (Supports 6 implementations)   * Simple to use AudioManager with smart caching, streaming, and per sfx controls. (Supports 6 implementations)
-  * Portrait and landscape modes support with rotation/​flip +  * Portrait and landscape modes support with rotation/​flip ​(on some platforms) 
-  * Automatic internal handling to seamlessly ​around ​power-of-2 texture limitations+  * Automatic internal handling to seamlessly ​deal with power-of-2 texture limitations
   * Socket and HTTP classes, in-game file downloading   * Socket and HTTP classes, in-game file downloading
   * Powerful 2D image handling with scaling, tinting, rotation, animation   * Powerful 2D image handling with scaling, tinting, rotation, animation
   * FileManager that transparently handles decompressing files when needed, supports mounting zips as filesystems,​ automatically mounts Android .apks   * FileManager that transparently handles decompressing files when needed, supports mounting zips as filesystems,​ automatically mounts Android .apks
-  * Touch screenaccelerometerand vibration support+  * Get abstracted input from touchmouseDInput, iCade, Xperia gamepad, 60Beat Gamepad, accelerometer. ​ Supports multi-touch on most platforms including Win7/Win8
   * RTPack command line tool intelligently handles image conversions to .rttex format, a wrapper that handles multiple formats including jpg and powerVR compression types   * RTPack command line tool intelligently handles image conversions to .rttex format, a wrapper that handles multiple formats including jpg and powerVR compression types
   * Requires minimum outside dependencies for portability,​ most are included (such as libjpg, libpng, a small subset of boost, etc)   * Requires minimum outside dependencies for portability,​ most are included (such as libjpg, libpng, a small subset of boost, etc)
Line 24: Line 23:
   * Supports premultiplied alpha, can optionally convert on load   * Supports premultiplied alpha, can optionally convert on load
   * Separate "​system"​ and "​game"​ timers make pausing the game easy   * Separate "​system"​ and "​game"​ timers make pausing the game easy
-  * Built-in database system (VariantDB) can serialize key/data pairs to/​from ​storage ​easily+  * Built-in database system (VariantDB) can serialize key/data pairs to/​from ​disk or raw memory ​easily
   * All C++ source is "right there" making debugging easier - don't know how to use a component? Look at its source   * All C++ source is "right there" making debugging easier - don't know how to use a component? Look at its source
   * 3D features provided by the optional pre-integrated [[http://​irrlicht.sourceforge.net/​|Irrlicht]] component - Proton SDK doesn'​t use any of its window setup or input code, but only the rendering pieces   * 3D features provided by the optional pre-integrated [[http://​irrlicht.sourceforge.net/​|Irrlicht]] component - Proton SDK doesn'​t use any of its window setup or input code, but only the rendering pieces
   * Liberal [[http://​www.rtsoft.com/​proton/​license.txt|open source license]]   * Liberal [[http://​www.rtsoft.com/​proton/​license.txt|open source license]]
-  * Used in the games [[http://​www.rtsoft.com/​pages/​dscroll_mobile.php|Dungeon Scroll]], [[http://​www.codedojo.com/?​p=138|Mind Wall]], [[http://​www.rtsoft.com/​pages/​bliparcade.php|Blip Arcade]], [[http://​www.rtsoft.com/​pages/​dink.php|Dink Smallwood HD]], and [[http://​www.rtsoft.com/​pages/​tanked.php|Tanked (Free 3d game)]] +  * Used in the games [[http://​www.rtsoft.com/​pages/​dscroll_mobile.php|Dungeon Scroll]], [[http://​www.codedojo.com/?​p=138|Mind Wall]], [[http://​www.rtsoft.com/​pages/​bliparcade.php|Blip Arcade]], [[http://​www.rtsoft.com/​pages/​dink.php|Dink Smallwood HD]], [[http://​www.rtsoft.com/​pages/​tanked.php|Tanked (Free 3d game)]], and [[http://​www.growtopiagame.com|Growtopia]]. 
-  * Even if you don't plan on selling a desktop version of your game, having a native desktop binary makes it a breeze to record high speed movies of your app for promotion purposes+  * Even if you don't plan on selling a desktop version of your game, having a native desktop binary makes it a breeze to debug and record high speed movies of your app for promotion purposes
  
 === The Insane Proton Sigslot based Entity/​Component System === === The Insane Proton Sigslot based Entity/​Component System ===
proton_features.txt · Last modified: 2013/07/26 01:34 by seth