{"id":13745193,"url":"https://github.com/tconkling/flump","last_synced_at":"2026-01-27T02:02:57.416Z","repository":{"id":2301256,"uuid":"3260018","full_name":"tconkling/flump","owner":"tconkling","description":"Exports Flash .FLAs to GPU-friendly formats","archived":false,"fork":false,"pushed_at":"2020-01-27T18:53:00.000Z","size":5065,"stargazers_count":383,"open_issues_count":41,"forks_count":72,"subscribers_count":65,"default_branch":"master","last_synced_at":"2025-05-19T10:19:04.230Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"ActionScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tconkling.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-01-24T21:35:00.000Z","updated_at":"2025-01-12T07:27:17.000Z","dependencies_parsed_at":"2022-08-20T07:51:19.446Z","dependency_job_id":null,"html_url":"https://github.com/tconkling/flump","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/tconkling/flump","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tconkling%2Fflump","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tconkling%2Fflump/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tconkling%2Fflump/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tconkling%2Fflump/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tconkling","download_url":"https://codeload.github.com/tconkling/flump/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tconkling%2Fflump/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28796962,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T01:07:07.743Z","status":"online","status_checked_at":"2026-01-27T02:00:07.755Z","response_time":168,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T05:01:24.550Z","updated_at":"2026-01-27T02:02:57.401Z","avatar_url":"https://github.com/tconkling.png","language":"ActionScript","funding_links":[],"categories":["Unsorted"],"sub_categories":["Other API"],"readme":"# Flump\n\nFlump reads specially-constructed `.fla` and `.xfl` files saved by Flash and extracts animations and\ntextures to allow them to be recreated in the GPU. Animations created in Flump's style will use far\nless texture memory per frame of animation than an equivalent flipbook animation, allowing for more\nexpressive animations on mobile platforms. Runtimes have been written for [Starling], [Sparrow],\n[Flambe], [PlayN], and [StageXL].\n\n[Starling]: https://github.com/threerings/flump/tree/master/runtime\n[Sparrow]: https://github.com/threerings/betwixt\n[Flambe]: https://github.com/aduros/flambe\n[PlayN]: https://github.com/threerings/tripleplay\n[StageXL]: http://www.stagexl.org/index.html\n\n# Creating a movie for Flump\n\n1. [Install the latest version of Adobe AIR](http://get.adobe.com/air/).\n1. [Install the Flump AIR app](https://github.com/threerings/flump/releases/latest).\n2. Create a `.fla` in Flash CS 5, 5.5, or 6.\n3. Create a new item in the library and draw a shape in its canvas.\n4. Right-click on the item, select its properties, tick the **Export for ActionScript** and\n   **Export in frame 1** checkboxes and change its base class to `flash.display.Sprite`.\n5. Create a second item in the library, and drag the first into it.\n6. Add additional frames in the second item, and create a classic tween moving the first item around\n   in those frames.\n6. Set the **Export for ActionScript** and **Export in frame 1** properties for the second item. Leave its base class as `flash.display.MovieClip`.\n7. Save the file and publish it as a swf.\n8. Open the Flump app and change its import directory to the directory containing the `.fla` and\n   `.swf` files. The `.fla` file should appear in the list of source files.\n9. Select the `.fla` file and click 'Preview'. The tween you created in step 6 should start playing\n   back in a preview window.\n\n# Details of Flump's conversion\n\nThis walks through Flump's process when it exports a single .fla/.swf file combo.\n\n### Texture creation\n\nFor each item in the document's library that is exported for ActionScript and extends\n`flash.display.Sprite`, Flump creates a texture. To do so, it instantiates the library's exported\nsymbol from the `.swf` file and renders it to a bitmap.\n\nAll of the created bitmaps for a Flash document are packed into texture atlases, and xml is\ngenerated to map between a texture's symbol and its location in the bitmap.\n\n### Animation creation\n\nFor each item in the document's library that extends `flash.display.MovieClip` and isn't a flipbook\n(explained below), Flump creates an animation. It checks that for all layers and keyframes, each\nused symbol is either a texture, an animation, or a flipbook. Flump animations can only be\nconstructed from the flump types.\n\n### Flipbook creation\n\nFor animations that only contain a few frames, a flipbook may be more appropriate. To create one,\nadd a new item to the library and name the first layer in the created item `flipbook`. When\nexporting, flump will create a bitmap for each keyframe in the flipbook layer. In playback, flump\nwill display those bitmaps at the same timing.\n\n### Compatibility\n\nFlump works with Flash CS 5 and later\n\n# Precompiled binaries\n\n[Get them here](https://github.com/threerings/flump/releases/latest)\n\n# Building\n\nYou will need these dependencies to build Flump:\n\n* [Flex SDK 4.6](http://www.adobe.com/devnet/flex/flex-sdk-download.html).\n\n* [AIR SDK](https://www.adobe.com/devnet/air/air-sdk-download.html). \n\n* [AIR SDK with Flex Support](https://www.adobe.com/devnet/air/air-sdk-download.html) You'll also need to download the version of the AIR SDK that comes *without* the new compiler (links near the bottom of that page) and [follow the instructions here to overlay it on the Flex SDK](http://helpx.adobe.com/x-productkb/multi/how-overlay-air-sdk-flex-sdk.html)\n\n* [Ant](http://ant.apache.org/)\n\n1. Build the flump runtime\n\n        flump/runtime$ ant -Dairsdk.dir=/path/to/air maven-deploy\n\n2. Build the flump exporter\n\n        flump/exporter$ ant -Dflexsdk.dir=/path/to/flex swf\n        \n3. Build the flump demo\n\n        flump/demo ant -Dairsdk.dir=/path/to/air\n\n4. To get AIR to report errors, run Flump with the AIR debugger (adl):\n\n        flump/exporter$ /path/to/air/bin/adl etc/airdesc.xml dist\n        \n# Runtimes\n\nA list of known Flump runtime implementations for different languages and frameworks:\n\n* [Flump (Starling/AS3)](https://github.com/tconkling/flump) (the reference runtime, contained here)\n* [Flambe (Haxe)](https://github.com/aduros/flambe)\n* [pixi-flump-runtime (Haxe/PixiJs)](https://github.com/jackwlee01/pixi-flump-runtime)\n* [StageXL_Flump](https://github.com/bp74/StageXL_Flump) (Dart / HTML5 / WebGL / Canvas)\n* [Betwixt (Sparrow/Objective-C)](https://github.com/threerings/betwixt) (no longer maintained)\n* [pixi-flump](https://github.com/mientjan/pixi-flump) (Javascript/PixiJs)\n* [Lump (LÖVE2D)](https://github.com/sixFingers/lump) (Lua)\n* [flump-hx](https://github.com/CrazyFlasher/flump-hx) (HaXe/OpenFL)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftconkling%2Fflump","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftconkling%2Fflump","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftconkling%2Fflump/lists"}