proton:flash_setup
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
proton:flash_setup [2012/12/13 01:57] – seth | proton:flash_setup [2015/09/09 02:00] (current) – seth | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | NOTE: Well, Flash is more or less dead so this probably won't be updated. | ||
+ | |||
====Compiling the examples for Flash from Windows ==== | ====Compiling the examples for Flash from Windows ==== | ||
Adobe' | Adobe' | ||
+ | |||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | <div id=" | ||
+ | < | ||
+ | <param name=" | ||
+ | <!--[if !IE]> | ||
+ | <object type=" | ||
+ | < | ||
+ | <param name=" | ||
+ | <param name=" | ||
+ | <param name=" | ||
+ | <div> | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | <!--[if !IE]> | ||
+ | </ | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | [[http:// | ||
==Features== | ==Features== | ||
Line 17: | Line 46: | ||
It's not a perfect emulation (it's still a work in progress), but all the Proton examples run fine, so it ain't bad either. | It's not a perfect emulation (it's still a work in progress), but all the Proton examples run fine, so it ain't bad either. | ||
- | |||
- | [[http:// | ||
** NOTE ** : Proton using Domain Memory and Stage3D acceleration and Adobe has a rule that if your app makes 50k+ you have to pay them 9 percent. | ** NOTE ** : Proton using Domain Memory and Stage3D acceleration and Adobe has a rule that if your app makes 50k+ you have to pay them 9 percent. | ||
Line 59: | Line 86: | ||
But that's not a great solution, because later you really WILL need more memory when you compile debug mode versions of bugger stuff, it's a huge hog. | But that's not a great solution, because later you really WILL need more memory when you compile debug mode versions of bugger stuff, it's a huge hog. | ||
- | === Step 2, compiling | + | === Step 2: Compiling |
* Edit **RTBareBones/ | * Edit **RTBareBones/ | ||
Line 66: | Line 93: | ||
* Same thing to compile the RTSimpleApp example | * Same thing to compile the RTSimpleApp example | ||
+ | |||
+ | === Step 3: How to add a Flash target to your existing Proton game === | ||
+ | |||
+ | * Copy the /flash folder from RTSimpleApp into your own project | ||
+ | * Use [[: | ||
+ | * Edit the / | ||
+ | * To change the render size of your .swf, change the SWF_SIZE setting in the makefile, and also change the two places the size appears in the test1.html file. | ||
+ | * Look at App.cpp in RTSimpleApp and notice a subtle change to the audio init - it now uses "new AudioManagerFlash", | ||
+ | * That should be it! If you have nonstandard media folders to copy from, you can fix it by editing build_prepare.bat | ||
===Misc Notes & Gotchas=== | ===Misc Notes & Gotchas=== | ||
+ | * -O4, the best Flascc G++ optimization setting has weird freezes making it useless. | ||
* Non pod globals that get intialized right away act funky in some cases. | * Non pod globals that get intialized right away act funky in some cases. | ||
* Don't try to rename Console.as, the default preloader that Adobe ships hardcodes this name, we'd better keep it. (At first I tried to rename it FlashMain.as, | * Don't try to rename Console.as, the default preloader that Adobe ships hardcodes this name, we'd better keep it. (At first I tried to rename it FlashMain.as, | ||
Line 74: | Line 111: | ||
* printf will act like LogMsg, both will go to debug output | * printf will act like LogMsg, both will go to debug output | ||
* Only 128kz stereo mp3 audio is supported | * Only 128kz stereo mp3 audio is supported | ||
- | * SetVolume, SetPan, IsPlaying | + | * The SetVolume, SetPan, |
* Not all GL functions supported | * Not all GL functions supported | ||
* Some MSVC examples have a Flash GLES Debug profile setup, it compiles and renders with MSVC, but there is no video as it's all going through a crippled GLFlashAdaptor - you can't see anything, but it's useful to me for debugging and seeing which GLES things aren't handled yet. | * Some MSVC examples have a Flash GLES Debug profile setup, it compiles and renders with MSVC, but there is no video as it's all going through a crippled GLFlashAdaptor - you can't see anything, but it's useful to me for debugging and seeing which GLES things aren't handled yet. | ||
- | * Only one light is supported and it must be ambient | + | * Only one GL light is supported and it must be ambient |
* LaunchURL works, but only when loading the swf from a real website, otherwise you get a security error | * LaunchURL works, but only when loading the swf from a real website, otherwise you get a security error | ||
* It's slow.. I get 60 fps but only because I have a top of the line machine.. there are many optimizations I can still make, especially in the GLESAdaptor code, I'm going to try to replace it with Adobe' | * It's slow.. I get 60 fps but only because I have a top of the line machine.. there are many optimizations I can still make, especially in the GLESAdaptor code, I'm going to try to replace it with Adobe' | ||
* Compiling is slowish. | * Compiling is slowish. | ||
+ | * I get Java memory errors if I try to compile a full -g debug version of the larger examples (RTSimpleApp) even with trying to hack everything to use 4gb of java memory, it just won't work. So RTSimpleApp doesn' | ||
+ | * You can do full GDB debugging with this - edit BuildDebug.bat and change **set RUN_GDB_DEBUGGER=0** to 1 | ||
proton/flash_setup.1355363832.txt.gz · Last modified: 2012/12/13 01:57 (external edit)