haxenme / nme

A cross-platform native backend for Haxe projects
MIT License
480 stars 124 forks source link

[QUESTION] Flash Player Emulator #687

Closed barisyild closed 3 years ago

barisyild commented 3 years ago

Is emulation possible by directing api calls in Flash directly to the NME library?

Execution: Haxe written custom ActionScript 3.0 interpreter Rendering & API: Directed from Flash to NME. (import flash.display.MovieClip => import nme.display.MovieClip)

While it may take 1-2 years for a stable emulator running as ActionScript 3.0 to arrive, I think we can done within 6 months with nme.

nulld commented 3 years ago

Take a look to openfl project. It's trying to stay maximum closer to the flash api. NME has flash like api, but doesn't support some things. stage3d for e.g.

ROBERT-MCDOWELL commented 3 years ago

there are also other projects https://github.com/ruffle-rs/ruffle https://github.com/vidkidz/waflash

hughsando commented 3 years ago

Yes, I think it will get you about 90% of the way there. So, if it is your own project, you could take the 90% and do 10% extra work for your project and you should have a nice solution. However, if you don't have any control over the project (it is someone else's swf file) then it could be hard to close this gap. Same goes for ABC/byte code vs as3 code. If you have the source code, converting to haxe is a since solution, but if you are working off arbitrary bytecode then it would be not so easy. So would say if you are trying to get a fixed set of projects going, it is possible. If you are trying to make and flash-player replacement then there is still quite a bit of work to do.