User Tools

Site Tools


proton

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
proton [2015/08/03 10:14] sethproton [2023/09/15 23:18] (current) seth
Line 2: Line 2:
  
 === What is it? ==== === What is it? ====
-Proton SDK (aka p+) is a free and open source component based C++ framework with its own touch-optimized GUI system that is optimized for GL/GLES based cross-platform app/game development. +Proton SDK is Seth'GL/GLES messy multi-platform C++ game SDKCan output to Windows, Linux (including the Raspberry Pi), HTML5, OS X, iOS, AndroidFree and open source.
- +
-Both 2D and 3D apps (using the included but optional [[http://irrlicht.sourceforge.net|Irrlicht 3D engine]]are supported[[proton_features|View the feature list]].+
  
 [[proton:screenshots|{{:proton_screenshots.jpg}}]] [[proton:screenshots|{{:proton_screenshots.jpg}}]]
 +
 +A component based toolbox of useful things built up over the last twenty years. Instead of a giant .lib you link only the .cpp files used when possible to simplify multiplatform support, efficient debugging, as well as keep code size down.
 +
 +It's kind of an SDL-like on steroids (while also being able to target SDL2 for setup/input/audio itself when needed) but generally gets the best results with its own native implementations of things. For example, it can target the following audio subsystems: SDL2_mixer, Audiere, FMOD, FMODStudio, Native iOS, Native Android, Denshion, Native Flash
 +
 +It's designed with a "Write stuff in Windows with Visual Studio 2022, then compile/export to other platforms as needed" mentality, although you could certainly use alternate IDEs and platforms to develop on. (Xcode projects are available but only CMake setups for most other platforms)
 +
 +**Deprecated technologies/platforms no longer actively supported**: Flash, BBX, WebOS, Irrlicht, Bullet
  
 Supported platforms: Supported platforms:
Line 18: Line 24:
 |  In App Purchase | Tapjoy  |  Chartboost  |  Flurry  |  Hooked  |  iCade  |  60beat pad  |   DX Input  |  Xperia pad  |  Irrlicht  |  FMOD  | |  In App Purchase | Tapjoy  |  Chartboost  |  Flurry  |  Hooked  |  iCade  |  60beat pad  |   DX Input  |  Xperia pad  |  Irrlicht  |  FMOD  |
  
-=== Downloads/SVN === +=== Get it === 
-  * [[proton:download|Checkout the Proton SDK via svn]] - (web svn browsing removed for now, was causing issues) +  * Github: https://github.com/SethRobinson/proton 
 +  * [[https://github.com/SethRobinson/proton/discussions|Need help?  Post your question on Github!]] 
 + 
 === Information === === Information ===
-  * A nicer link to this page: www.protonsdk.com+ * A nicer link to this page: www.protonsdk.com
   * [[proton:about|About, credits, how to contribute]]   * [[proton:about|About, credits, how to contribute]]
   * [[proton_features|Feature list]]   * [[proton_features|Feature list]]
Line 29: Line 36:
   * [[proton:screenshots|Screenshots from the included sample apps]]   * [[proton:screenshots|Screenshots from the included sample apps]]
   * [[proton:showcase|Showcase (released games built with p+)]]   * [[proton:showcase|Showcase (released games built with p+)]]
-  * IRC: #proton on [[http://freenode.net/|freenode]] 
  
 === Getting started and setting up and running the Proton SDK samples === === Getting started and setting up and running the Proton SDK samples ===
Line 36: Line 42:
     * [[proton:win_setup|Setup and compiling RTBareBones with MSVC++ (read first, even if you don't use MSVC or Windows!)]]     * [[proton:win_setup|Setup and compiling RTBareBones with MSVC++ (read first, even if you don't use MSVC or Windows!)]]
     * [[proton:win_setup2|Setup and compiling RTSimpleApp with MSVC++ (Read second, even if you don't use MSVC or Windows!)]]     * [[proton:win_setup2|Setup and compiling RTSimpleApp with MSVC++ (Read second, even if you don't use MSVC or Windows!)]]
-    * [[proton:win_3dapp|Setup and compiling RT3DApp with MSVC++ (3D with Irrlicht, bsp map, terrain, .b3d and .x file loading)]] +    * [[proton:ios_setup|Compiling examples for iOS with Xcode]]
-    * [[proton:ios_setup|Compiling examples for iPhone, iPad, and iPod with Xcode]]+
     * [[proton:android_projects|How the Android projects are organized in general]]     * [[proton:android_projects|How the Android projects are organized in general]]
-    * [[proton:android_setup|Compiling examples for Android from Windows]]+    * [[proton:android_setupv3|Compiling examples for Android from Windows (V3)]] ([[proton:android_setup|Old V2 method]])
     * [[proton:android_setup_linux|Compiling examples for Android from Linux]]     * [[proton:android_setup_linux|Compiling examples for Android from Linux]]
-    * [[proton:webos_setup|Compiling examples for HP WebOS from Windows]] 
     * [[proton:osx_setup|Compiling examples for native Mac OS X with Xcode]]     * [[proton:osx_setup|Compiling examples for native Mac OS X with Xcode]]
-    * [[proton:bbx_setup|Compiling examples for the Playbook from Windows]] 
     * [[proton:linux_setup|Compiling examples for Linux from Linux]]     * [[proton:linux_setup|Compiling examples for Linux from Linux]]
-    * [[proton:flash_setup|Compiling examples for Flash from Windows]] 
     * [[proton:html5_setup|Compiling examples for HTML5 from Windows]]     * [[proton:html5_setup|Compiling examples for HTML5 from Windows]]
 +    * [[proton:raspi_setup|Compiling examples on Raspberry Pi]]
  
-=== Other example projects and tools included === +=== Deprecated/removed things, but maybe still useful to someone === 
 +    * [[proton:win_3dapp|Setup and compiling RT3DApp with MSVC++ (3D with Irrlicht, bsp map, terrain, .b3d and .x file loading)]] 
 +    * [[proton:bbx_setup|Compiling examples for the Playbook from Windows]] 
 +    * [[proton:webos_setup|Compiling examples for HP WebOS from Windows]] 
 +    * [[proton:flash_setup|Compiling examples for Flash from Windows]]
     * [[proton:looney_ladders|Looney Ladders, a full game example]]     * [[proton:looney_ladders|Looney Ladders, a full game example]]
-    * [[proton:rtphysics|RTPhysics - 3D physics example using Irrlicht and IrrBullet (which uses Bullet)]] 
-    * [[proton:rtpack|RTPack.exe tool source code]] 
  
 +=== Other example projects and tools included ===
 +
 +    * [[proton:arduboysim|Proton Arduboy Simulator]]
  
 === Understanding the Proton SDK (designed to be read in order) === === Understanding the Proton SDK (designed to be read in order) ===
Line 61: Line 68:
     * [[proton:variants|Variant, VariantList and the VariantDBs who love them]]     * [[proton:variants|Variant, VariantList and the VariantDBs who love them]]
     * [[proton:FileManager|FileManager - Reading/writing files and mounting zips as file systems]]     * [[proton:FileManager|FileManager - Reading/writing files and mounting zips as file systems]]
-    * Surface and SurfaceAnim - 2D blitting or 3d texturing, up to you+    * [[proton::surfaces|Surface and SurfaceAnim - 2D blitting or 3d texturing, up to you]]
     * ResourceManager - so you don't load the same bmp 50 times     * ResourceManager - so you don't load the same bmp 50 times
     * MessageManager - an alternative to scripting     * MessageManager - an alternative to scripting
Line 73: Line 80:
   * [[proton:gamepadmanager|How to enable GamepadManager]] ( [[proton:gamepadmanager_directx|DirectX]], [[proton:gamepadmanager_icade|iCade]], [[proton:gamepadmanager_xperia|Xperia]], [[proton:gamepadmanager_60beatgamepad|60beat GamePad]] )   * [[proton:gamepadmanager|How to enable GamepadManager]] ( [[proton:gamepadmanager_directx|DirectX]], [[proton:gamepadmanager_icade|iCade]], [[proton:gamepadmanager_xperia|Xperia]], [[proton:gamepadmanager_60beatgamepad|60beat GamePad]] )
   * [[proton:iapmanager|How to enable IAPManager]] ( [[proton:iapmanager#ios|iOS]], [[proton:iapmanager#android|Android]], [[proton:iapmanager#android|webOS]]  )   * [[proton:iapmanager|How to enable IAPManager]] ( [[proton:iapmanager#ios|iOS]], [[proton:iapmanager#android|Android]], [[proton:iapmanager#android|webOS]]  )
-  * [[proton_vsrename|How to duplicate a sample to create a new app using vsrename]]+  * [[proton_vsrename|How to duplicate a sample app to create a new app using vsrename]]
   * [[proton_gles_emu|How to setup PowerVR GL ES 1.X emulator libs so you can debug in GL ES 1.X mode on Windows]]   * [[proton_gles_emu|How to setup PowerVR GL ES 1.X emulator libs so you can debug in GL ES 1.X mode on Windows]]
   * [[proton_osx_dist|How to submit to the Mac App Store]]   * [[proton_osx_dist|How to submit to the Mac App Store]]
Line 79: Line 86:
 === Latest forum posts === === Latest forum posts ===
  
-{{rss>http://www.rtsoft.com/forums/external.php?type=RSS2&lastpost=1&forumids=27 5 author date 1h }} +([[https://www.rtsoft.com/forums/forumdisplay.php?27-Proton-SDKa|visit the forums here]])
- +
-([[http://www.rtsoft.com/forums/forumdisplay.php?26-Proton-SDK-Area|visit the forums here]])+
  
 === Latest from Seth's blog, Codedojo === === Latest from Seth's blog, Codedojo ===
proton.1438596894.txt.gz · Last modified: 2015/08/03 10:14 by seth