TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ruffle – A Flash Player emulator written in Rust

381 pointsby raneover 4 years ago

25 comments

sterlindover 4 years ago
I spent today hacking on it! Trying to get all the Homestuck movies to work. The codebase seems pretty accessible so far. Fixed one bug where it couldn't render shapes with >65535 vertices. It's really rewarding watching movies light up as you fix things.
评论 #25243978 未加载
haunterover 4 years ago
I really really wish Flash MX 2004 were made free to download by Adobe. That was one of the greatest piece of software they (well Macromedia) ever released. The format is dead, basically abandonware, they should make it available.<p>Adobe already released the universal activation keys cause they shutdown the servers but it&#x27;s still not legal to use if you haven&#x27;t bought an original copy <a href="https:&#x2F;&#x2F;helpx.adobe.com&#x2F;x-productkb&#x2F;policy-pricing&#x2F;macromedia-legacy-activation-error.html" rel="nofollow">https:&#x2F;&#x2F;helpx.adobe.com&#x2F;x-productkb&#x2F;policy-pricing&#x2F;macromedi...</a>
评论 #25245140 未加载
评论 #25244948 未加载
raphlinusover 4 years ago
I could research this myself, but will ask lazy HN instead. One of the big challenges in presenting Flash <i>well</i> is &quot;conflation artifacts,&quot; which are the seams that appear when compositing antialiased vector shapes. The old software renderer in Flash had very clever techniques for avoiding these, but browser 2D renderers generally don&#x27;t. (The actual story is a bit more complex, as Skia is careful to avoid conflation artifacts within a shape, but the compositing rules in the HTML5 spec almost seem to require them for compositing multiple shapes). Thus, Shumway and the other Flash emulators had artifacts which detracted from the visual quality.<p>A particularly good paper explaining the problem (and how the NV_path_rendering extension solves it) is &quot;GPU-accelerated Path Rendering&quot;, Kilgard and Bolz, 2012.<p>Does Ruffle solve these? If so, how?
评论 #25246810 未加载
apignottiover 4 years ago
A FOSS Flash Player implementation has certainly value, and I hope to have contributed to the cause by starting the Lightspark project years ago. The sad reality is that the Flash runtime is massive and under-documented. The best approach for Flash preservation in the medium term is using _actual emulation_ to run the binary player itself.<p>Further reading:<p><a href="https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;preserving-flash-content-with-webassembly-done-right-eb6838b7e36f" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;preserving-flash-content-with...</a><p><a href="https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;running-flash-in-webassembly-using-cheerpx-an-update-d500b6fbc44e" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;running-flash-in-webassembly-...</a><p><a href="https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;announcing-cheerpx-for-flash-a-solution-to-extend-the-life-of-flash-applications-post-2020-8fd35483ee35" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;announcing-cheerpx-for-flash-...</a><p><a href="https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;cheerpx-for-flash-now-generally-available-a20bc2a5eea6" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;leaningtech&#x2F;cheerpx-for-flash-now-general...</a><p>For questions: <a href="https:&#x2F;&#x2F;twitter.com&#x2F;alexpignotti" rel="nofollow">https:&#x2F;&#x2F;twitter.com&#x2F;alexpignotti</a>
评论 #25244478 未加载
评论 #25244533 未加载
评论 #25245302 未加载
评论 #25244496 未加载
lxeover 4 years ago
Those sample files.. bring back memories. I think we took a step backwards in serving vector art&#x2F;animation on the web. When YouTube replaced Flash, we&#x27;ve probably wasted petabytes of bandwidth serving rasterized content when Flash or a similar format would have been much more effective.
评论 #25243219 未加载
评论 #25244599 未加载
评论 #25245803 未加载
tonyover 4 years ago
What&#x27;s Newgrounds affiliation with Ruffle? Did they create it?<p>To test it out: <a href="https:&#x2F;&#x2F;www.newgrounds.com&#x2F;portal&#x2F;view&#x2F;113883" rel="nofollow">https:&#x2F;&#x2F;www.newgrounds.com&#x2F;portal&#x2F;view&#x2F;113883</a><p>No flash player required. Works in HTML 5.<p>Loaded slow though.<p>There&#x27;s a cool song in it: Splashdown - So Ha<p>Is Albino Blacksheep in on the ruffle.rs stuff? Remember them? They were always pioneering CSS stuff back in the 2000&#x27;s.
评论 #25243570 未加载
评论 #25243326 未加载
shubhamjainover 4 years ago
I have unfinished project to revive the Flash Games I played as a kid using Ruffle JS. Make them accessible through a simple website. Games like Eggs[1] used to be my favorite pastimes. Of course, we have moved on to better entertainment, but there&#x27;s still value in these short games, something you can just play for five minutes to take a break from work.<p>I would love to play these games, not just for the nostalgia but being quick, small, and not too addictive. Hopefully, I am not alone.<p>I think, HTML5 would have done the same job, but the number of HTML5 games is surprisingly low in comparison and wesbites are generally ad-infested.<p>[1]: <a href="http:&#x2F;&#x2F;www.vagenisonline.com&#x2F;flash&#x2F;eggs.html" rel="nofollow">http:&#x2F;&#x2F;www.vagenisonline.com&#x2F;flash&#x2F;eggs.html</a>
mwillover 4 years ago
Its funny to me to see Newgrounds and New York Times listed as diamond sponsors to the same project but makes sense.
qzwover 4 years ago
Man, I would love it if this could be integrated into Steam or GoG along with a curated collection of great flash games.
swinglockover 4 years ago
At what point does a flash player emulator just become a flash player?
评论 #25243902 未加载
bitwizeover 4 years ago
There was a little Strong Bad skit about Ruffle posted to @StrongBadActual twitter... gives me hope that Homestar Runner&#x27;s content will be preserved as is.
评论 #25246294 未加载
LASRover 4 years ago
Flash player emulator written in Rust...compiled to WebAssembly and running in the browser?<p>I like how things like this come out so frequently these days like it’s no big deal.
ivancerasover 4 years ago
Ruffle is also used in archived.org to play old swf files.
gitgudover 4 years ago
Anyone know of any animation editing software similar to the original <i>Flash MX</i>?
评论 #25245826 未加载
michaelchisariover 4 years ago
Tried Super Mario Crossover and unfortunately it freezes at the first screen, but it gives me hope that some day I can play it again on a modern browser.
评论 #25245820 未加载
mnahkiesover 4 years ago
This is great for preserving all the old content. It&#x27;d be cool to see a follow up project for an ide to author new stuff - as a kid the timeline system made producing 2d games accessible in a way that I haven&#x27;t seen with JavaScript engines on the modern web. Being able to just draw and animate then slap some scripts on it was a really interactive way to learn
IceWreckover 4 years ago
<a href="https:&#x2F;&#x2F;www.coolmathgames.com" rel="nofollow">https:&#x2F;&#x2F;www.coolmathgames.com</a> is also using this, nice !
irrationalover 4 years ago
Should have called it Rash.
评论 #25243139 未加载
评论 #25243067 未加载
评论 #25243891 未加载
appstorelotteryover 4 years ago
Wow. Might be enterprise opportunities for all those Flex based apps buried the the hell of past broken promises from Adobe :-) I developed an ERP with a flex client back when Adobe and Apple went to war... I’ve been warning the client for years that flash will sunset...
评论 #25244399 未加载
smerikover 4 years ago
I see Ruffle a lot, but I hardly see a mention of AwayFL on here: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25243958" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=25243958</a>
评论 #25248537 未加载
_Microftover 4 years ago
If you need a Flash file to try this with, here you go. At least on Windows, you can paste the URL directly into the file name field of the &quot;Open local file&quot; on the demo page.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;claus&#x2F;as3swf&#x2F;blob&#x2F;master&#x2F;examples&#x2F;dumps&#x2F;AYB.swf?raw=true" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;claus&#x2F;as3swf&#x2F;blob&#x2F;master&#x2F;examples&#x2F;dumps&#x2F;A...</a>
评论 #25248487 未加载
k__over 4 years ago
Half-OT: Does anyone have an idea how the WASM interface types proposal is coming along in terms of actual implementation?
joshlkover 4 years ago
How is this achieved? Is the flash API&#x2F;architecture open knowledge?
评论 #25247085 未加载
anthkover 4 years ago
THis is not an emulator, this is another Flash interpreter.
ruffleover 4 years ago
Neat