어도비 플래시

 




1. 개요
2. 설명
2.1. 언어 판급(버전)의 차이 (AS1.0/AS2.0과 AS3.0)
2.2. 지원하는 운영 체제
2.3. 지원하는 브라우저
3. 플래시의 성능
3.1. 플래시가 시스템 자원을 많이 먹는 이유
3.2. 사실상 표준 규격
3.3. 보안 취약 문제
4. 지원 중단
4.1. 모바일의 대응
4.2. Adobe의 대응
4.3. Microsoft의 대응
4.4. 브라우저의 대응
4.5. 플짤, 스트리밍의 대응
4.6. 웹 어플리케이션의 대응
4.7. 지원 종료 이후
5. 파생 기술
5.2. AIR
5.3. 플래시 라이트
5.4. 스케일폼 GFx
5.5. 콜드퓨전
5.6. 와플래시 (WAFLASH)
5.7. 오픈소스 호환 제품
5.7.1. Gnash
5.7.2. Lightspark
5.7.3. SWFdec
5.7.5. Ruffle
6. 관련 라이브러리
6.1. 스탈링 엔진
6.2. Red2D 엔진
6.3. 얼터네이티바3D
6.4. 어웨이3D
6.5. GreenSock
7. 관련 문서


1. 개요


Adobe(구 매크로미디어)에서 개발했던 리치 인터넷 애플리케이션.

2. 설명


처음에는 원래의 목적대로 GIF 애니메이션을 대체할 정도의 웹용 애니메이션 제작 도구로 주로 쓰였으며, 우리나라에서 본격으로 퍼지기 시작한 것은 1990년대 후반과 2000년대 초반에 졸라맨, 마시마로, 달묘전설, 우비소년, 뿌까 같은 다들 한 번 쯤은 들어봤을 익숙한 플래시 애니메이션들이 유행하기 시작하면서부터다.
사실 주로 쓰이는 곳은 웹 디자인 분야인데, 웹 디자인 관련 및 디지털 디자이너의 개인 사이트를 들어가면 플래시로 만들어진 멋진 영상 및 디지털 앱스트랙트들을 볼 수 있다. 이쪽 분야에서 플래시를 잘 다루는 괴수들은 차고 넘쳤다. 특히 1세대 플래시 개발자로 큰 영향력을 미친 사람인 조슈아 데이비스나카무라 유고. MIT 미디어랩의 교수인 존 마에다의 초기 액션스크립트 작품은 MoMA에 전시되기도 했다.
플래시는 원래 GIF를 대신할 애니메이터일 뿐이었으나, 나중에 보조하기 위해 액션 기능(코드)가 생기고 버전 4까지만 해도 단순한 동영상 재생을 제어할 때나 쓰던 이 액션 기능이 버전 5부터 액션스크립트라는 이름으로 강화되면서 슬슬 프로그래밍 도구의 냄새를 풍기기 시작하더니 나중에 2.0(AS2.0)이 되고 좀 더 시간이 흐르자 액션 스크립트 가상머신(AVM)을 완전히 갈아엎어 새로 만들다시피 한 액션스크립트 3.0(AS 3.0)가 나와서 웬만한 프로그래밍 언어 수준의 능력을 갖춘 무서운 도구(툴)가 되어 버렸다. 결국 동영상 재생을 넘어서는 시도가 각 방면으로 이루어졌고 그 중 하나가 플래시 게임이다.
멀티 플랫폼에 평균 이상은 찍는 성능, JIT, 내장된 그래픽 처리가 상용 그래픽 엔진 급, 바이트 단위의 저수준 조작, 그래픽 가속을 통한 3D 개발, 소켓 서버 등. 이 정도 기능을 내장하여 지원하는 스크립트 언어는 그렇게 많지 않다. 단지 프로그래밍 언어의 냄새를 풍기기 시작하면서 단순히 동영상 재생이나 광고 정도에 쓰기엔 좀 과하다는 게 문제라면 문제.
그리고 보통 프로그램은 뜯어 보지 않는 한 무엇으로 만들어졌는지 알기 어려운데, 플래시도 웹 상에서 재생되어 우클릭으로 확인이 가능한 플래시 플레이어가 아니면 플래시로 만들어졌다는 걸 직접 확인하기 어렵다. 덕분에 관련 업계 종사자가 아닌 한 대부분 동영상이나 광고 정도만을 접하게 되는데, 이 때문에 일반인들의 플래시를 보는 인식은 '''"플래시? 그거 그냥 동영상 재생이나 하는 거 아냐? 그거에 무슨 의의가 있어?"''' 수준이다.
스티브 잡스는 세상을 떠날 때까지 플래시를 싫어했다.[1] 초기 어도비매킨토시를 밀고 있었고 이때는 양자의 관계가 좋았지만 마이크로소프트Windows 95를 출시한 이후로 조금씩 옮겨가는 모습을 보이면서 애플과 사이가 나빠졌다. 플래시는 원래 어도비 회사 제품이 아니었지만 어도비가 인수하고 나서부터 애플 지원 정책에 아예 빠져버려 자연히 배척하게 되었다.[2] 결국 사업상의 마찰이라고 보는 게 적절하다. 아무튼 iOS는 플래시를 아예 지원하지 않으며, macOS에서는 돌아가기는 하지만 '''발열이 심해지는 등'''[3] 최적화가 잘 되어있지 않고 상당히 불안정하다.
페이스북 게임의 대부분은 플래시를 기반으로 하여 만든 것이다.
플래시 버전 간의 하위호환 정책은 전통처럼 '''두 버전''' 전까지만 지원했다. 예를 들면 CS6에서는 CS5.5와 CS5 버전의 FLA 파일을 작성할 수 있고 CC2014라면 CC, CS6까지만 지원되는 식. 그래서 두 버전 이상의 구 버전 환경에서 옮겨 작업해야 하는 부득이한 일이 생겼을 때, 예를 들어 CS6에서 작업하다 CS4로 옮겨가야 할 때는 CS5 호환으로 저장한 다음 CS5 버전이 있는 컴퓨터를 찾아 다시 CS4 호환으로 저장하는 삽질을 거쳐야 했다. 거기다가 CC부터는 AS 2.0을 지원하지 않으므로 해당 파일이 AS 2.0으로 작성됐다면 호환되지 않는다. 그런데 사실 어도비가 포토샵일러스트레이터를 제외한 다른 시리즈에서는 하위호환을 별로 신경쓰지 않는 편이며 두 버전 '''씩이나''' 구 버전을 배려해주는 플래시 쪽이 오히려 구 버전 배려가 많은 편에 속한다. 예를 들어 인디자인은 하위호환부터가 안 된다.

2.1. 언어 판급(버전)의 차이 (AS1.0/AS2.0과 AS3.0)


매크로미디어가 시절부터 사용된 AS1.0/2.0과 어도비 인수 이후 만들어진 AS3.0이 있는데, '''이 둘은 전혀 호환이 안 된다.''' 심지어 코드의 해석을 위한 가상 머신도 따로 쓴다.[4]
AS3.0이 AS2.0의 단점들을 개선하여 좀 더 객체 지향인 언어에 가까우며, AIR이나 FLEX같은 RIA에도 대응하기 위해서 여러 가지 언어로서의 체계가 정비되어 크게 바뀌어 있다. AS3.0의 문법은 ECMA 스크립트 제4판에 준하고 있는데 덕분에 현행 자바 스크립트와 문법이 거의 유사하다. 자바 스크립트를 사용하던 기존의 웹개발자들을 끌어들이기 위한 정책이었을 것이라 추정된다. 실제로 CS3 당시에 AS3.0이 처음 나왔을 때 AS2.0을 사용해오던 디자이너들은 울상을 짓고 웹프로그래머들은 환영했다는 이야기도 있으니. 상세한 내용은 액션스크립트 항목으로.
AS3.0이 2.0에 비해 코딩이 어려워진 대신 최소 10배 이상 빠르다는 이유로 차츰차츰 3.0으로 시장환경이 이행되어 오고 있었는데 아예 CC부터는 AS 3.0만 지원하게 되었다.

2.2. 지원하는 운영 체제


'''지원되는 Flash Player 최신 버전'''
'''운영 체제'''
Flash Player 32.0.0.465
- Mac OS X 10.10(Intel 프로세서) 이상
- Windows XP, Windows Vista, Windows 7, Windows 8.1, Windows 10
- Windows Server 2008
- Red Hat 5.6+
- Open SUSE 11.3+
- Ubuntu 10.04+
Flash Player 29.0.0.171
- Mac OS X 10.9
Flash Player 22.0.0.209
- Mac OS X 10.6 - 10.8
Flash Player 11.2.202.223
- Solaris x86 및 Sparc
Flash Player 10.1.102.64
- Mac OS X 10.4+(Power PC 프로세서)
Flash Player 11.1.102.55
- Windows 2000[5]
Flash Player 10.3.183.90
- Mac OS X 10.5
Flash Player 9
- Mac OS X 10.1-10.3
- Windows 98, Windows ME
- Red Hat 3 & 4
- Novell SUSE 9.x 또는 10.1
Flash Player 7
- Mac Classic(9 이하)
- Windows 95, Windows NT
- Red Hat Enterprise Linux WS v.3 & Red Hat Linux 9
- Sun Java Desktop System 1.0
[출처]
안드로이드4.1(코드명 젤리빈)부터 지원하지 않으며, 리눅스용 플래시 런타임은 2012년 11.2.X버전을 마지막으로 지원이 끊겼다. 리눅스 유저들은 2017년까지 플래시의 보안 업데이트만을 받을 수 있다. 다만 크롬에 포함되어 있는 플래시 플러그인은 구글을 통해 계속해서 지원되고 있으니 만약 리눅스에서 플래시를 쓰고 싶다면 구형버전, 오픈소스 플래시 플러그인, 크롬. 이 세 가지 중 하나를 골라야 한다. iOSWindows Phone은 처음부터 플래시를 지원하지 않았다.
많은 운영 체제를 지원하던 플래시가 단기간에 많은 지원을 끊은 이유는 여러 가지가 있겠지만 일단 애플이 iOS에 플래시를 지원하지 않겠다고 한 것이 기폭제가 되었다. 당시 iOS는 모바일 기기 시장에서 큰 영향력을 발휘하고 있었고 인터넷으로 풀리는 컨텐츠의 대부분을 차지하는 미국에서의 점유율도 높았다. 게다가 지겹도록 논의된 바이지만 배터리가 한정된 모바일 기기에서 강력한 컴퓨팅 파워를 내기 위해서는 보통 전용 하드웨어 명령어를 칩에 내장하고 복잡한 명령어나 자주쓰지 않는 명령어는 걷어내는 방법으로 돌파하고 있는데[6] 어도비라는 일개 회사에서 출시하는 제품에 맞추어 칩셋을 제조 설계하는 것은 칩셋 제조업체나 모바일 운영체제를 소유한 업체나 별로 달가운 일은 아니다. 반대로 어도비가 출시되는 칩셋의 하드웨어를 분석하여 이에 최적화해준다는 보장만 있다면 가능할 수 도 있겠으나, 어도비는 그런 면에서 발빠르게 지원해주는 회사는 아니었고 삼자 모두 강제력, 즉 상대의 예측 가능성을 장담하기 어렵다. 명분을 그럴듯하게 제시할 수 있겠으나, 결국은 시장 주도권과 제품 장악력 싸움이다.
일단 이러한 이유들로 모바일 시장에서 플래시는 퇴출되기 시작했고 모바일이 대세가 되면서 인터넷 환경이 빠르게 비플래시 환경으로 넘어갔다. 특히 기업들도 두 가지 버전을 만드느니 양쪽에서 사용할 수 있는 플랫폼을 선호하게 되어 입지가 더 줄어들었다. 여담으로 '''현재 어도비의 HTML5 저작도구 시장 점유율은 90%에 육박한다.''' 이는 드림위버가 어도비의 소유인 것이 한몫하고 있다. 어도비 입장에서 플래시 시장이 줄어들고 그 대안으로 제시되는 HTML5 시장이 커지는 것은 그저 '''왼손에 들었던 떡을 오른손으로 옮겨 먹는 것에 불과하다.'''

2.3. 지원하는 브라우저


출처(아카이브)
기본으로 ActiveX, NPAPI, PPAPI 지원 브라우저를 지원한다.
브라우저 명
플러그인 API
Internet Explorer(W)
ActiveX[7]
Firefox(W/M/L)
NPAPI[8]
Chrome(W/M/L)
Chromium Edge(W)
PPAPI(브라우저 내장)
Legacy Edge(W)
ActiveX(브라우저 내장)[9]
Opera(W/M/L)
크로뮴 기반 브라우저(W/M/L)
PPAPI
Safari(M)
NPAPI
크롬 OS
PPAPI(브라우저 내장)

2.4. 언리얼 엔진 지원


언리얼 엔진을 지원한다. 언리얼 엔진으로 만든 플래시 3D 게임. 지금은 없어졌다.

3. 플래시의 성능


비트맵도 사용 가능하지만 기본으로 벡터 그래픽을 사용하며, 동영상(그래픽) 처리 기술이 강점이다.
보통 무작정 '플래시는 느리다'라고 알려져 있는데, 적어도 알려진 것처럼 HTML5보다 느리진 않다. 오히려 전체 성능을 보면 C++, C#, JAVA 같은 쟁쟁한 언어들을 데리고 와서 비교해도 적어도 평균 이상은 찍는다. 성능 비교 사이트. 이런 편견은 아마 플래시 게임이 오브젝트가 늘어남에 따라 기하급수처럼 속도가 느려져서 생긴 듯하다.
원래 플러그인이었던 것의 영향인지 웹 브라우저와는 그다지 잘 맞지 않으며[10], 윈도우 이외의 운영 체제 지원도 미흡하다. 특히 리눅스에선 아주 느리고 자원을 엄청나게 먹기로 유명하다. 플래시의 인식을 나쁘게 만들었던 주요 원인 중 하나로 대형 사이트들의 디자인을 빙자한 '''플래시 광고 도배'''를 들 수 있었다. 이런 사이트에 접속하면 아주 심각하게 느려졌다.[11] 그래서 리눅스로 웹 서핑을 하는 사람들 중 어도비나 플래시를 욕 안 해 본 사람을 찾기 힘들다. 가장 큰 문제는 플래시가 어도비에서만 개선을 할 수 있는데 어도비는 이러한 개선에 미흡했다.
그래도 나름대로 플래시도 성능 향상을 위해 노력하는 모습을 보인다. 플래시 플레이어 11부터는 여태까지 안 쓴 그래픽 가속을 기본으로 지원하여[12] 그래픽 부분에서 CPU의 부담이 훨씬 줄어들었다.
플래시 플레이어 11로 구동하는 레이싱 게임
그리고 JIT인 액션스크립트(AS3.0) 정규 표현식의 속도는 JavaScript의 1.5배로 알고리즘만 잘 짜면 폴리곤 몇백만 개는 무리 없이 돌릴 수 있다. 즉 플래시의 문제도 없는 건 아니겠지만 개발자의 코딩 실력 문제도 비중이 높다고 볼 수 있다.
AS 3.0에 와서 속도와 함께 많은 문제점들이 몰라보게 개선되었지만 아직도 일부 광고나 자본이 적은 소규모 회사는 AS 2.0을 사용하고 있어 플래시의 인식을 나쁘게 하는 데 한몫하고 있다. 더욱이 플래시가 사용하는 액션스크립트 각 버전(AS 1.0/2.0/3.0)의 차이점을 일반인은 잘 모르기에 인식이 쉽게 개선되진 않을 것으로 보인다.
또, 플래시의 문제점들이 꽤나 과장되게 알려지기도 했는데, 예로 '''배터리를 많이 먹는다'''라는 문제는 '''어디까지나 HTML에 비해서''' 많이 먹는다는 거지 유니티3D나 자바와 비교하면 딱히 심하진 않다. 오히려 배터리를 많이 먹는 놈을 뽑자면 분명히 자바다. 그리고 AS1/2/3의 차이를 잘 모르는 일반인들이 AS1/2의 문제점을 AS3의 문제점인 양 알리는 바람에 잘못 알려진 문제들도 꽤 된다.
플래시의 그래픽 툴로서의 장점을 뽑으면 심볼을 통해서 일종의 객체 지향 그래픽을 지원해 만든 애니메이션을 재사용할 수 있으며, 모션 트위닝과 모핑(셰이프 트위닝)을 지원한다. 다만 모핑은 제어하기 어려워서 이상한 모양으로 나올 때가 많다. 카툰 애니메이션을 만들 때 주로 쓴다.
플래시의 게임 엔진으로서의 장점을 뽑으면 무엇보다 자체 그래픽 기능이 있어 다른 그래픽 소프트웨어를 사고 창을 옮겨다닐 필요가 없다는 점을 꼽을 수 있으며, 이로 인해 1인 개발시 편리하다.

3.1. 플래시가 시스템 자원을 많이 먹는 이유


플래시는 벡터 그래픽 방식의 프로그램이다. 벡터 그래픽은 비트맵에 비해 용량이 작으나, 함수를 계산하기 위해서는 별도의 계산이 필요하기에 리소스를 많이 잡아먹어서 느리다는 단점을 보유하고 있다. 모니터에 출력을 하려면 결국에는 벡터 도형을 픽셀에 대응시켜야 하기 때문. 별로 무거워 보이지 않는 프로그램도 벡터 그래픽을 쓰면 CPU 점유율이 급격하게 오르는데, HTML5도 벡터 그래픽을 쓰면 CPU 점유율이 플래시와 비슷하게 나온다.
초창기 웹 환경에서 이러한 플래시의 특징은 엄청난 강점이 되었다. 느리디 느린 웹 환경에서 플래시는 적은 용량으로 아주 효과적인 애니메이션을 표현할 수 있었고 정적인 개념의 웹 환경을 동적인 개념으로 완전히 바꾸어 내었다. 또 낮은 화질의 동영상도 보통 10MB대의 용량이 필요한 반면 플래시는 '''100KB'''대의 용량으로 애니메이션을 표현할 수 있다. 이러한 특징들 덕분에 초기 웹 환경을 점령할 수 있었던 것이다. 하지만 이런 특징은 용량보다 렌더링 속도나 CPU 점유율을 생각하는 2010년대 기준 요즘 웹 환경에서 오히려 독이 되기도 한다.
원래는 GPU를 통한 하드웨어 가속 없이 CPU만으로 렌더링된다는 단점이 있었지만, 9.0 버전부터 동영상 재생에 한해 하드웨어 가속을 지원하였고, 11부터 하드웨어 가속을 완전하게 지원하기 때문에 이 문제는 사라졌다. 또한 인터프리터 방식 특유의 속도도 문제였지만 플래시 플레이어 9 이상의 AVM2 부터는 저스트인타임 컴파일 방식으로 바뀌어 매우 빨라졌다.
또, 진입 장벽이 낮은 플래시의 특징 탓에 역으로 효율성이 떨어지는 '''더럽게''' 만든 코드가 많다는 점과 초보 개발자들은 잘 모르는 wmode 등이 있다.

3.2. 사실상 표준 규격


플래시는 원래 표준이 아닌 어도비(구 매크로미디어)의 독점 기술이었지만 워낙 널리 사용되고 있었고 HTML5 이전에는 브라우저에서 스크립팅을 통해 화면에 뭔가를 그린다든가 하는 기능의 표준은 사실상 없었던 데다가 그 외의 다른 기능들에도 표준이 있다 한들 브라우저 전쟁 속에서 각종 상용 비표준 태그가 남발되던 탓에 사실상 표준 취급을 받았다.
그러나 최근엔 HTML이 꾸준히 개선되면서 웹에서의 입지가 줄어들었으며 서비스 종료 수준까지 가게 되었다. 당장 HTML5를 지원하는 웹 브라우저에서 유튜브에 접속하면 플래시를 이용하지 않고도 동영상 재생이 가능하다.
하지만 플래시를 선호하는 사람들은 여전히 많은 편. 무엇보다도 액션스크립트는 비슷한 기능을 지원하는 다른 개발환경에 비하면 플래시는 무지하게 쉽고 개발 속도도 빠르다.[13] 이 낮은 진입장벽 탓에 초보자가 코딩한 스파게티 코드들이 웹상에서 사용자 컴퓨터의 성능과 플래시의 이미지를 같이 갉아먹고 있다는 문제가 있기는 하지만 적어도 JavaScript처럼 브라우저 특성을 타서 그걸 다 Hack으로 끊어줘야한다든가 하는 문제는 플래시에선 거의 없다. 그리고 조금 무거운 웹 앱이나 게임 같은 것들은 HTML5로 개발하기 어렵다. 코드가 공개된다는 점과 파편화한다는 문제점도 있고 HTML5는 기본 성능(속도)이 좋지 않다.
그리고 과거에는 플래시가 HTML5보단 유니티3D와 경쟁하게 될 것이라고 여겼다. 멀티 플랫폼이라는 공통점에(실제로 구현하는 성격은 많이 다르지만), 요즘은 Flash Player가 지원하는 운영 체제가 줄어 Unity Web Player와 비슷한 수준이 되었고 지원하는 운영 체제도 비슷비슷했기 때문이다.[14][15] 그러나 둘은 2D와 3D[16], 다목적 언어와 게임용 엔진이라는 차이가 있다.
2010년대 중반 기준, 플래시는 웹표준에 맞지 않는 구식 기술 취급을 받고 있다. HTML5가 많은 주목을 받은 이유는 플래시를 능가하는 최적화와 표현력 보다는 게코, 웹킷 같은 훌륭한 오픈소스 엔진이 었었기 때문에 어느 기기[17]나 애플리케이션에도 HTML, CSS, JS코드[18]나 브라우저를 탑재하기 좋았기 때문. 플래시는 프로그래밍 보다는 아티스트들이 디자인이나 감성 표현을 위해 사용하는 목적이 더 크기 때문에 현재에는 웹 플러그인 지원 종료를 계획하고 동영상이나 웹문서로 애니메이션을 제작하는 것을 지원하고 있다.
원래부터 애플, 오페라, 모질라 등의 업체가 모여 HTML을 기반으로 한 새로운 표준을 준비하고 있었으나, 스티브 잡스의 발언 때문에 문제가 대두되었다. 애플의 플래시 배척은 플래시와 애플 둘 다 좋아하던 사람들이 애플을 욕하게 만들기도 했다. HTML5가 아직 표준화하기 이전이였기 때문에 플래시를 완전히 대체할 수 있는 것도 아니었고 플래시가 플러그인이라는 특성상 HTML5에 맞춰서 기능을 추가할 수도 있을뿐더러 HTML5+JS가 지금의 플래시만큼의 수준이 되면 플래시는 그만큼 더 발전할 수도 있으리라는 기대가 우세했다.# HTML5가 플래시를 완전히 대체할 수 있는것도 아니고 설마 플래시가 단숨에 망하겠어 식의 생각이었다.
하지만 2015년 들어 플래시는 HTML5보다 장래성이 없는 것으로 평가받고 있다. 웹 표준 기술의 기능 강화, 스마트폰의 대중화로 인해 플래시를 사용하는 사이트가 줄어들었기 때문. WASM, WebGL은 웹 게임 등 높은 그래픽 표현력을 요구하는 분야에서도 대체재가 존재하기 때문. 게다가 최신 버전 플래시 개발을 쫒아가는 개발자는 갈수록 줄어들어도 유니티와 HTML5 개발자는 갈수록 늘어간다는 점에서 인력 수급 면에서도 여러모로 문제가 있다. 이로인해 플래시로 프로그래밍을 하던 사람들은 플래시가 점점 위축된다는 소식에 고생하기만 할 뿐. 안습.

3.3. 보안 취약 문제


안그래도 거의 운영체제급으로 기능을 많이 제공하면서 그만큼 메모리를 쓰는 플래시는 처음 출시될 때부터 보안 문제가 끊임 없이 제기되어 왔고[19], 실제로 2000년 이후 바이러스 감염 경로 대부분이 플래시였기 때문에 매크로미디어 시절부터 매년 수십번씩 보안 패치나 하던 중 2011년 플래시가 랜섬웨어 감염의 주된 통로가 된다는 점이 알려지면서 보안에 취약한 애물단지 기술 취급을 받고 있다. 현재 플래시 퇴출이나 사용 금지가 논의될 정도로 심각한 상황. 플래시가 시장에서 배척받고 있는 가장 큰 이유는 바로 이것.
이런 보안 문제는 사실상 플래시가 미래 지향의 기술이 될 수 없는 가장 근본인 이유이다. 업데이트를 통해 보안 취약점 및 오류를 개선해 나가고는 있으나, 현재 시장 추세가 다양한 기능을 포기하더라도 보다 더 가볍고 다양한 환경에서 같은 서비스를 제공할 수 있는 HTML5로 노선을 갈아타기 시작하였다. 게다가 HTML5는 게코, 웹킷이나 크로뮴 같은 오픈소스 엔진이 상당수 있어 여러 기기나 애플리케이션 내부에 이식하기 용이했기 때문에 개발자들이 선호하기도 했다. 플랫폼별 서비스의 일체성은 오히려 HTML5보다 플래시가 훨씬 더 우위이긴 하나 갈수록 각종 플랫폼들에서 퇴출되고 있다는 문제가 있다.
이제는 어도비조차 애니메이트로 개명하고 플래시보다는 HTML5을 메인으로 지원할 계획이라고 공지를 했다. 어도비사 공지 CC 버전부터는 플래시에서 HTML5 코드 기반 작업물을 직접 생성할 수 있다.
현재 랜섬웨어 감염의 주된 경로 중 하나이며 어도비에서조차 보안 문제로 플래시의 즉시 사용 중단을 권고했다. 불안하다고 하면 어도비 플래시 플레이어 11.2 이후 버전에서는 자동 업데이트를 제공하고 있으며 매일 1시간 단위로 업데이트 검사를 하고 있다. 물론 해당 자동 업데이트 주기도 변경을 할 수가 있다. #
결국 해킹에 취약한 플래시 플레이어를 2020년 12월 31일까지만 지원할 예정인 어도비가 그때까지 PC에 설치된 해당 프로그램을 삭제할 것을 당부했다. #

4. 지원 중단


[image]
2010년대 들어서 아래의 이유로 플래시 사용을 자제하는 분위기가 강해지기 시작했다. 무엇보다도 보안 취약점을 악용한 악성코드(특히 '''랜섬웨어''') 감염 때문에 플래시를 금기시해야만 하는 상황이 왔다.

4.1. 모바일의 대응


  • 스마트폰과 모바일 데이터(3G/LTE/5G) 사용이 증가하면서 리소스 관리, 저전력, 데이터 사용량 절감이 필요한 모바일 환경 지원이 거의 없었던 플래시를 사용하는 것을 자제하기 시작했다.
  • 플래시를 지원하지 않는 iOS(모든 버전), 안드로이드(젤리빈 이상)가 대세가 되면서 사실상 모바일에서는 플래시를 볼 수 없게 되었다. 이 때문에 플래시를 보려면 번거롭게 컴퓨터를 켜야만 하게 되었다.
  • 초기부터 웹 표준을 확실하게 준수하고 속도도 빨랐던 웹킷 기반의 모바일 브라우저들의 등장으로 인해 개발자나 인터넷 업체들에게서 웹 표준을 준수하려는 경향이 강해져 어도비 플래시의 사용이 줄어들게 되었다.[20]

4.2. Adobe의 대응


  • 어도비에서 Flash의 지원을 2020년에 종료하기로 했다. 기사
  • 플래시 개발 환경인 어도비 애니메이트를 플래시 개발 환경보다는 애니메이션 제작에 중점을 둔 소프트웨어로 전환시켰다.
  • 아예 EOL(End of Life)(아카이브) 이라 이름 붙이며 대대적으로 이를 공지하고 있다. 이 웹사이트의 내용을 보면 어도비가 직접 플래시 컨텐츠를 막을 것을 시사하는 듯한 문구가 포함되어 있다.[21][22]
  • 2020년 말 이후로는 플래시 웹 플러그인의 지원이 중단된다. 심지어 상단 이미지와 같이 꾸준히 삭제 안내창을 띄워 삭제를 부탁하고 있다. 업무용으로 만들어진 사이트는 쉽게 바꾸기 어렵기 때문에 플래시 컨텐츠를 계속 사용해야 하는 때가 있는데 이런 때에는 하만에서 지원을 계속할 것이라고 한다. 플래시를 사용한 AIR 또한 하만에서 지원할 예정이다.
  • 2020년 1월 2일[23] 어도비 플래시 플레이어의 다운로드 페이지가 완전히 사라졌다.
  • 유예 기간 2021년 1월 12일 이후로는 어도비의 지원이 완전히 중단되고, Flash Player 32.0.0.371 이상 버전 사용이 불가능해졌다. 해당 버전부터 Time-bomb가 내장돼 모든 기능이 작동하지 않게 조치했기 때문이다. 그러나 시스템 시간을 2021년 1월 12일 이전으로 바꾸거나 32.0.0.363 이전 버전으로 다운그레이드하여 인터넷 익스플로러로 접속하면 플래시 콘텐츠를 계속 사용할 수 있다.

4.3. Microsoft의 대응


Microsoft Windows 역시 지원 중단에 맞춰서 플래시를 삭제할 예정이다. OS 업데이트로 구성요소를 삭제한다는 것이 생소하게 느껴질 수도 있지만 마이크로소프트는 2016년에 보안 취약점이 발견된 Windows 필기장을 삭제하는 업데이트를 배포한 전적이 있다.[24] 정확한 일정은 다음과 같다. 출처
  • 2021년 1월까지 새로운 Microsoft Edge에서 Adobe Flash Player가 삭제된다.
  • 2020년 12월 이후로 Microsoft Edge 레거시Internet Explorer 11에서 "Adobe Flash Player용 보안 업데이트"를 받을 수 없게 된다. 2021년 1월 12일부터 Adobe Flash Player가 기본으로 비활성화하며, 2020년 6월 배포된 KB4561600보다 오래된 버전일 때 차단된다. Microsoft 웹사이트에 등록된 Adobe Flash Player 관련 리소스를 더이상 사용할 수 없게 된다.
  • Windows OS 기기에서 Adobe Flash Player를 영구히 제거하는 "Adobe Flash Player 제거를 위한 업데이트"가 Microsoft Update 카탈로그와 Windows Update, WSUS를 통해 배포된다. 지원 종료 이전에 Adobe Flash Player를 제거하고 싶은 사용자는 2020년 가을에 Microsoft Update 카탈로그에서 이를 다운로드할 수 있다. 이 업데이트는 2021년 초에 Windows Update와 WSUS에서 선택적 업데이트로 배포되며, 몇달 후 권장 업데이트로 전환된다. 이 업데이트는 제거할 수 없다.
  • 2021년 여름, Adobe Flash Player의 행동을 구체적으로 제어하기 위한 모든 API와 그룹 정책, 사용자 인터페이스가 Microsoft Edge 레거시와 Internet Explorer 11에서 제거된다. Windows 10 플랫폼에서 최신 "누적 업데이트"를 통해, Windows 8.1, Windows Server 2012, Windows Embedded 8 Standard에서 "Internet Explorer 11용 누적 업데이트" 또는"월간 롤업"을 통해 제거된다. 또한 "Adobe Flash Player 제거를 위한 업데이트"는 "누적 업데이트" 또는 "월간 롤업"에 포함된다.
마이크로소프트는 자사의 RIA인 실버라이트의 C# 코드를 블레이저라는 WebAssembly 기반의 플랫폼에 다시 활용할 수 있도록 했지만 어도비는 공식 WebAssembly 지원 계획이 없다.

4.4. 브라우저의 대응


인터넷 브라우저들은 일단 '''플래시 플레이어를 비활성화 상태로 두고 필요한 웹 사이트에 한해서 활성화할 수 있도록''' 기본값을 변경했다.
  • 구글 크롬
    • 버전 69에서는 활성화를 하더라도 브라우저를 끄면 기본값인 비활성화 상태로 되돌아가도록 업데이트되었으며, 버전 76에서는 기본값이 '우선 묻기'에서 '차단\'으로 바뀌었다.
    • 2021년 1월 19일 정식 출시될 버전 88에서 플래시가 완전히 삭제됬으며, 이전 버전 역시 플래시를 실행할 수 없게 차단[25]한다.
  • 애플 Safari
    • 2020년 버전 14의 출시와 함께 플래시의 지원을 중단했다.
  • 모질라 파이어폭스
    • 버전 84를 마지막으로 2021년 1월 26일 버전 85 출시 이후부터는 해당 버전은 물론이고 구 버전도 플래시 지원을 중단한다.

4.5. 플짤, 스트리밍의 대응


최근 버전으로 올수록 주 사용처인 플짤 제조기에서 점점 거리가 멀어져 가게 된다.[26]
스마트폰이 대중화하기 전까지만 해도 웹에서 플래시를 심심찮게 볼 수 있었음을 생각하면 그야말로 격세지감. 동영상은 플짤을 직접 만들어서 올리는 대신 유튜브를 링크하거나 움짤로 변환해서 올리는 것이 대세가 되었고 각종 유머 사이트에서는 아예 BGM을 넣지 않는 쪽으로 추세가 바뀌었다. 이러한 추세에 유저들의 평가는 엇갈리는데, 유머글에 감칠맛을 더하는 역할을 하는 플짤이 사라져서 재미가 없어졌다는 유저들도 있지만 방심하던 사이에 브금이 갑툭튀하는 일이 없어져서 좋다는 유저들도 있다.
다만 실시간 스트리밍 쪽에선 주류 중 하나인 하는데 RTMP 프로토콜이 플래시 기반이다. RTMP에서 탈피하면 되는 일이겠지만 현재까지 OBS Studio 같은 무료 개인용 방송 프로그램들이 사실상 RTMP만 쓸만하게 지원하고 있어서 문제다. NGINX를 통해 HLS로 변환해서 송출하는 방법이 있긴 한데, 지연이 너무 심해져서 보조용으로나 쓰인다. 유튜브, 트위치 등의 대형 스트리밍 서비스에선 RTMP로 전송된 스트림을 서버에서 HTML5로 변환 송출해 해결하지만 개인이 직접 서버를 구축해 소규모 방송을 할 때는 HLS의 지연문제와 겹쳐서 여전히 골칫거리다. OBS 같은 프로그램 개발진들에게 HTML5 지원을 요청하는 글도 많으나, 개발진의 역량 부족인지 대안이 나오지 않는 상황. 아프리카TV 역시 플래시 기반으로 되어 있었으나, 2017년 4월에 HTML5로 전환했다.
네이버 블로그네이버 카페에 사용되는 BGM 플레이어도 플래시 기반이다. 그래서 네이버 블로그만 접속하면 플래시가 차단되었다는 경고가 뜨며, BGM 플레이어가 설정된 블로그에서는 Adobe Flash Player를 활성화하라는 문구까지 나타난다. 결국 제대로 된 대책이 없어 네이버 뮤직샘 서비스를 종료하는 것으로 일괄했다. 자세한 내용은 해당 문서 참고.
다음 블로그에는 BGM 플레이어가 없으나, 내글 지도, 이모티콘, 텍스티콘 등이 모두 플래시 기반이라 Chrome으로 접속 시 재생 버튼이 마구 떴다. 2020년 5월 12일에 리뉴얼되면서 플래시를 삭제했다.
과거 루리웹에는 플래시 아바타라는 기능이 있었다. 프로필 사진이 표시되는 자리에 플짤을 집어넣는 기능이었는데, 주로 동영상을 별도의 서버에서 따로 불러오게 한 뒤 마우스 포인터를 올리면 소리가 나오게 하는 식으로 많이 활용했다. 루리웹이 다음에서 서비스하던 시절까지는 이게 가능했는데, 2016년 7월 1일에 독립개편하면서 플래시 아바타를 새로 등록할 수 없게 바뀌었다. 그나마 기존에 등록해둔 아바타는 계속 볼 수 있었지만 2019년 11월 이후로 기존에 등록한 플래시 아바타까지 전부 삭제처리되어서 기본 루리웹 로고로 대체되었다.

4.6. 웹 어플리케이션의 대응


국내 지도의 스트리트뷰 서비스도 웹은 플래시 기반으로 되어 있었다. 네이버 지도는 새 지도 베타 버전에서 플래시를 제거했고 다음 지도카카오맵으로 통합 후 업데이트를 통해 "구버전 Flash 대신 새로운 기술의 카카오맵을 만나보세요!" 라는 공지와 함께 제거되었다.
네이버 가계부 역시 플래시 기반이었다. 이쪽은 PC나 모바일이나 오류수정이나 점검 외에는 사실상 손 놓은 수준이었기 때문에 모바일앱도 과거의 디자인을 그대로 유지 중이다. 일단 플래시 지원이 종료되는 2020년 12월 31일 이전까지 전환한다고 공지가 올라오긴 했다. 그리고 2020년 11월 16일 자바스크립트 기반의 새로운 가계부가 오픈되었으며, 2020년 12월 28일에는 기본값이 새로운 가계부로 바뀌었다. 기존의 플래시 기반 가계부는 플래시 지원이 완전히 중단되는 시점까지 사용자가 선택할 수 있게 남겨두었다.
이글루스는 이미지 업로드 기능 중 '편집해서 올리기' '여러장 올리기'가 플래시 기반이었고 2020년 12월까지 교체는 커녕 관련 공지도 올라오지 않았다. '개발 중이므로 자세한 사항은 알려드릴 수 없다'고 했는데 어느샌가 플래시 없어도 이미지 업로드 기능이 정상동작하고 있다.
디시인사이드는 2008년 하반기부터 2014년 초까지 갤러리 화면 상단에 있는 '○○○ 갤러리'라는 배너를 플래시로 띄웠다. 2008년 상반기까지는 이미지를 사용했으나, 갤러리 수가 많아지면서 배너를 일일이 제작하기가 힘들어지다 보니 플래시로 대체한 것이다.[27] 관리자 설정에서 표시될 갤러리 이름을 설정할 수 있었던 것으로 추정되는데, 과거 주식 갤러리처럼 김유식이 배너에 장난을 쳐놓거나 아니면 해킹으로 배너가 바꿔치기당하는 때[예시]도 있었다. 그러나 2014년 구글 크롬이 패치되면서 '중요하지 않은' 플래시를 알아서 차단하는 기능이 도입되었으며, 이 때문에 디시 배너도 차단당해서 재생 버튼이 뜨는 현상이 발생하자 결국 HTML 기반으로 바꿨다. 사실 그 이전에도 macOS리눅스 사용자들이 플래시 좀 없애달라고 항의했지만 무시당했다.

4.7. 지원 종료 이후


결국 2021년을 맞이하며 어도비 플래시는 '''완전히 지원 종료'''되었다. 2021년 여름 정도까지 플래시를 들어내는 작업이 이어질 예정이나, 보안 지원이 끊기고 각종 보안 위험의 여지가 있으므로 가상 머신에서 돌리는 게 아닌 한 빠른 삭제가 권장되지만... 어른의 사정으로 인해 다른 방향으로 어도비 플래시 종료에 대비하는 방법을 찾는 곳도 있다.
  • 지원 중단 이후에 사용하려면 플래시가 탑재된 Windows 10/버전/20H2까지의 윈도우에서 업데이트를 차단해야 한다. 당연히 업데이트가 없어지기 때문에 컴퓨터가 보안에 더 취약해질 것이다.
  • 지원 종료 이후에 인트라넷 등에서 플래시 플레이어를 사용할 필요가 있는 기업의 경우 하만에서 유상으로 지원한다.
  • 충남대학교는 플래시로 만들어진 통합정보시스템을 계속 이용할 수 있도록 "충남대 전용 브라우저"를 제공한다. # 보안사고를 방지하기 위해 충남대 내부만 접속 가능하게 만들었지만, 뚫는 방법이 있긴 하다.[28] 충남대 브라우저는 ToGate(크로미움 기반) 브라우저며, 뒤져 보면 코러스 보안 브라우저라고 적혀있고 티맥스소프트의 제품#으로 추정된다.[29]

  • 지원 종료와 별개로 중화인민공화국에서는 이미 일찌감치 플래시 제공사가 변경되었었는데 어도비에서 지원을 중단한 것과 달리 지속적으로 업데이트를 지원하고 있다. 한국에서도 이 버전을 설치할 수 있으나 대부분의 브라우저가 이미 플래시 지원을 종료했으므로 후술할 Pale Moon 등 플래시를 지원하는 브라우저를 사용해야 한다. 플래시 다운로드 사이트(영어)
  • 플래시 게임 사이트인 Newgrounds는 아예 플래시 게임용 ActiveX 컨트롤을 배포하고 있다. 이 사이트의 일부 컨텐츠에 Ruffle을 사용한 플레이어도 적용된 상태. 하지만 웹브라우저 기반이여서 1월 12일 이후 가동된 Time-bomb 킬스위치의 영향으로 인해 약간의 우회가 필요하다.
  • 네이버 웨일은 크롬 88 버전에서 플래시가 제거되는 것에 대비해서 하만에서 관리하는 플래시 플레이어 모듈이 내장된 플래시 전용 특별판(B2B) 웨일 브라우저를 따로 유상[30]# 제공할 계획을 밝혔다. 즉, 일반 버전은 더 이상 플래시를 지원하지 않는다. 당장 시간 비용 등 자원 부족으로 현존 플래시를 제거하기 어려운 언발에 오줌 역할을 할 예정이다. # 문제는 이 브라우저가 인터넷 익스플로러가 아닌 크로미움 브라우저이기 때문에 인터넷 익스플로러에 최적화한 구식 사이트는 여전히 도움을 받지 못할 거란 점이다.
  • Pale Moon, Basilisk는 지원 종료 이후에도 계속 사용할 수 있게 해주겠다는 공식 입장을 밝혔다. #
  • Waterfox는 G3 버전에서도 플래시를 작동할 수 있는 것으로 보아 계속 사용할 수 있게 해줄 것으로 추정된다.
  • HTML5를 이용해 게임을 만들거나 플래시 재생 자체를 구현하는 경우도 있다. 각종 아카이브 사이트도 운영중이다.


5. 파생 기술


친척뻘이라고 볼 수 있는 기술들로 그 중 플래시 라이트와 AIR, FLEX는 분야에 따라 기능이 조금씩 다르지만 공통으로 액션스크립트를 사용하고 있다.

5.1. FLEX


[image]
플래시에서 사용되는 액션스크립트에 MXML이라는 마크업을 더하고 이걸 .net이나 J2EE같은 서버사이드 언어와 통합해서 아예 디자이너 없이 개발자가 개발해서 넷상에서 작동하는 애플리케이션을 만들도록 만든 물건으로, 주로 엔터프라이즈급 인트라넷 등에 사용하고 있으며 일반 유저가 이것으로 만든 물건을 접할 기회는 흔치는 않다. 사실 애시당초 플렉스로 만든 프로젝트도 결과물은 동일한 .swf파일이라 일반인이 구별하기가 쉽지 않다. 굳이 구별하는 방법은 처음 구동시에 플렉스에서 고정으로 이용하는 로딩바가 나오나 안 나오나의 여부.
FLEX 애플리케이션은 일반에서는 플래시와 함께 설치되는 전용 IDE인 '플래시 빌더'를 이용해서 개발하지만 별도로 무료배포[31] 하고 있는 FLEX SDK를 이용하면 이클립스나 Flash Develop 같은 IDE를 가지고 FLEX 코딩이 가능하다. 즉 FLEX를 이용하면 비싼 플래시를 사지 않아도 합법으로 돈 한푼 안 들이고 플래시 개발환경을 구축할 수 있다는 어마어마한 장점이 있다.

5.2. AIR


[image]
플래시 플레이어로 웹 브라우저나 플래시 플레이어에서 돌아가는 것이 아닌 아예 별도로 실행되는 응용 프로그램을 제작하는 기술로, 이것으로 만든 프로그램을 작동시키기 위해서는 어도비에서 AIR 런타임이 있어야 하는데, 보통 프로그램 설치 시 자동으로 설치된다.
웹상에서 보안 등의 여러 가지 이유로 불가능한 명령어들을 사용 가능하며, 그와 관련된 일부 기능들이 추가되어 있고 속도도 플래시 플레이어보다 더 빠르다. 간단한 게임부터 앱 등, 여러 곳에 쓰인다.
런타임은 윈도우용과 맥OS용으로 나오며, 원래는 리눅스용도 있었지만 2.6을 마지막으로 중단. 그 외에 플래시로 만든 결과물을 안드로이드의 응용 프로그램으로 돌릴 수 있는 '''AIR for Android'''가 있으며, 블랙베리의 타블렛PC인 플레이북대인배스럽게도 아예 이 런타임을 OS 안에 내장하여 별도 플러그인 설치 없이도 AIR for Android용으로 만들어진 APK파일은 바로 설치해서 돌릴 수 있다.
CS5.5에 와서는 iOS용인 AIR for iOS도 추가. 이걸로 플래시 개발자들은 소스 하나를 '''윈도우, 맥OS, iOS, 블랙베리.''' 이 모든 것에 사용할 수 있게 되었다. 또한 플래시가 원래 웹 플러그인이었던 만큼 플래시 개발자 중 웹프로그래머 출신이 많은데, 거기에 AIR이 더해지면서 '''앱/프로그램 개발과 웹 개발을 다 할 수 있는 만능 개발자'''가 나오게 된다!
iOS는 In-App Purchase가 지원되지 않는 등의 문제가 있었는데, 애플의 수익을 침해하는 것이라 규정 위반이라면서 막아 버렸기 때문. 하지만 Native Extension[32]이 추가되면서 문제 해결.
플래시 AIR로 만들어진 것들 중 잘 알려진 유명한 것으로는 애니팡이 있다.
2019년, 삼성전자의 미국 자회사인 하만이 AIR을 인수했다. #, ##

5.3. 플래시 라이트


[image]
Flash Lite. 이름 그대로 가볍게 만든 플래시. NTT 도코모에서 "우리 무선인터넷에서 플래시 좀 돌려보게 한번 좀 만들어주세요" 해서 만든 물건이 시초이다. 주로 모바일이나 셋톱박스, TV같이 PC용 플래시를 쌩으로 돌리기에는 CPU등의 퍼포먼스가 좋지 않은 기기에 들어가며, 국내에 출시되는 피처폰이나 MP3 플레이어, 전자사전 등의 구형 휴대용 전자기기들은 이것으로 만든 인터페이스를 채용한 일이 많다.
EV-W100은 플래시 라이트 기반 swf파일을 실행할 수 있다.

5.4. 스케일폼 GFx


[image][image]
플래시를 기반으로 한 게임 UI 미들웨어. 2000년대 후반부터 나오는 상당수의 게임 UI가 이걸 이용해서 만들어진다. 플래시 게임이 아닌데도 게임에 플래시를 사용한다거나 하는 말이 나오면 100% 이걸 가리킨다고 보면 된다.
게임 UI를 만들때 이걸 이용하면 자체 툴을 만들지 않아도 되고 플래시의 특성상 상당히 화려하고 정교한 효과를 줄 수 있다. 벡터 방식의 그래픽 사용이 가능하기에 게임 해상도에 구애받지 않고 UI 확대/축소를 마음대로 할 수 있고 UI 동작은 스케일폼에 맞게 일부 맞춤한 액션스크립트를 이용하기 때문에 게임 제작에 들이는 시간과 수고를 줄일 수 있다. 이 때문에 많이 선호되고 있고 특히 언리얼 엔진 3에는 기본으로 제공된다.
2011년 2월 오토데스크가 스케일폼을 인수했다.

5.5. 콜드퓨전


[image]
과거 매크로미디어 시절에 플래시에서는 감당하지 못하는 서버사이드 스크립트를 구동하기 위한 기술로 만들어진 언어지만 개발자 수가 적은 데다가 이걸 사용하기 위해서는 콜드퓨전 서버 데몬을 '''별도로 돈 주고 사야한다'''는 이유로 국내에서는 처절하게 망했다. 개발 속도가 빠르다는 장점이 있어서 해외에서는 아직도 제법 사용하고 있다는 듯하다.

5.6. 와플래시 (WAFLASH)


[image]
어도비 플래시를 대체하기 위해 HTML5, WebGL, WebAssembly, Emscripten 웹표준 기술로 개발된 국산 어도비 플래시 호환 플래시 재생 플레이어이다. 자세한 내용은 와플래시 문서 참고.

5.7. 오픈소스 호환 제품


독점 소프트웨어 주제에 하도 많이 쓰이다 보니 오픈소스로 호환 프로그램(또는 라이브러리)을 구현하려는 움직임도 있다.
성능은 아직 본가에 비하면 많이 후달린다.[33]

5.7.1. Gnash


GNU 사이트 / 프로젝트 사이트
자유 소프트웨어 재단에서 밀어주는 제품. SWF v7을 지원하고 v8과 v9도 일부 지원하나, v10은 현재 지원하지 않는다.

5.7.2. Lightspark


공식 사이트
LLVM을 사용한다. 2020년 기준으로 유지/보수가 이루어지고 있는 플래시 대체품이다. 스탠드얼론과 브라우저 플러그인 방식을 지원한다.

5.7.3. SWFdec


몇 년 전까지만 해도 GNOME 쪽에서 밀어주던 제품이나, 이쪽은 지금 망한 상태.

5.7.4. Shumway


2012년 11월 모질라 재단에서 플래시 런타임을 대체할 프로젝트로 발표한 제품. 관련글 2012년 초부터 개발되었으며, HTML5 기술로 SWF 파일을 해석하고 실행할 수 있게 한다고 한다.
현재는 개발 초기 단계라 되는 게 많이 없다. 몇몇 플래시 게임이 느리게 돌아가긴 한다. 그렇지만 오픈 소스 지지자, 열린 웹 환경을 원하는 사람들이나 2017년에 아예 플래시 지원이 끊길 리눅스 사용자들로서는 고무적인 소식이다. 파이어폭스 사용자라면 한 번쯤 시도해볼 만하다.
여기에서 Shumway를 파이어폭스 부가 기능으로 설치할 수 있다.
현재는 개발이 중단되었다.

5.7.5. Ruffle


공식 사이트
소스 코드
프로젝트 로드맵
웹 데모
다운로드
2020년 기준으로 가장 활발하게 개발되고 있는 대체품이다. Rust 언어로 만들어졌으며 WebAssembly로 웹브라우저에서 추가 플러그인 없이 바로 구동될 수 있다.
Newgrounds에 올라온 일부 과거 플래시 컨텐츠는 이걸 이용해서 플래시를 지원하지 않는 브라우저를 지원한다.
현재는 ActionScript 1/2만 지원하며 3을 사용하는 비교적 최근 컨텐츠는 재생이 불가능하다. 일단 로드맵에는 AS3 지원을 약속하였으며, AS3.0의 핵심인 AVM2의 구현이 거의 완료되었다.
2020년 10월 기준, ActionScript 1/2에서도 몇가지 문제가 발생한다.
  • 중국어 또는 일본어 폰트가 깨진다.
  • 로딩이 완료되지 않거나 프레임이 멈추지 않는다.
  • 간혹 애니메이션과 사운드 싱크가 어긋난다. 특히 탐색 중 다른 탭을 보고 다시 돌아오는 때에 발생한다.
  • 일부 그래픽이 깨지거나 입력 박스를 띄울 수 없다.
  • 일부 애니메이션이 지원되지 않는다.
현재 Newgrounds, CPMStar, DeepNight.Net, Crazy Games, Coolmath Games, 뉴욕 타임스, Armor Games의 후원을 받고 있다.
국내에서는 플래시아크 서비스에서 이 라이브러리를 사용하여 기존 플래시를 서비스하고 있다.
Webgenie SWF & Flash Player라는 안드로이드 앱에서도 2020년 12월 3일에 릴리스된 버전 2.0.0부터 Ruffle을 사용하기 시작했다.

6. 관련 라이브러리



6.1. 스탈링 엔진


[image]
Starling Framework
http://gamua.com/starling/
플래시 플레이어 11에 추가된 Stage3D를 기반으로 하는 오픈소스 2D 엔진.
그래픽의 GPU 렌더링을 쉽게 할 수 있도록 해 주는 엔진이며, 플래시 액션스크립트의 내장 라이브러리와 최대한 비슷하게 설계되어서 쓰기도 쉽다. 단지 게임 개발을 염두에 두고 만들어졌기에 범용성이 약간 떨어진다.
플래시 플레이어의 프로덕트 매니저인 Thibault Imbert이 관심을 가질 정도로 비슷한 라이브러리들 중에선 가장 유명. 앵그리버드애니팡에도 사용되었다.
JavaScript로 컨버팅이 된다고도 한다. 허나 JavaScript 기반으로 개발 중인 Starling JS는 결국 개발의 어려움 및 기타 여러가지 이유로 현재는 후술할 어웨이3D 재단으로 이양되었다.
관련 링크: http://gamua.com/blog/2014/02/starling-js/

6.2. Red2D 엔진


[image]
http://red2d.cafe24.com/wordpress/
드물게 한국인이 만든 2D 엔진. 그런데 유명하지가 않은지 이걸로 뭔가를 만들었다는 얘기는 나오지 않고 있다. 2020년 현재 사이트 도메인이 만료되었다. 2012년 6월 이후로 제작자의 페이스북에도 별 내용이 없다.

6.3. 얼터네이티바3D


[image]
Alternativa3D
http://alternativaplatform.com/
러시아에서 만든 플래시용 3D 엔진. 일단 비슷한 플래시용 3D 엔진들 중에서 성능은 최고로 인정받는다. 원래 상업으로 쓰는 건 유료였는데, 인지도 탓인지 8 버전부터 오픈소스화.

6.4. 어웨이3D


[image]
Away3D
http://www.away3d.com/
플래시용 3D 엔진. 처음부터 오픈 소스였으며, 그 때문인지 이걸로 만들어진 게 꽤 많다. 특히 닛산이 이걸로 홍보용 게임을 만든 건 업계에서 유명.

6.5. GreenSock


http://www.greensock.com/
플래시 개발자들에겐 모르면 간첩이라는 소리가 나올 정도로 정말로 유명한 라이브러리.
그런데 사실 GreenSock라는 건 사이트 이름이고 실제 라이브러리'들'의 이름은 TweenNano, TweenLite, TweenMax 등. 그런데 아무도 그렇게 안 부른다. 따라서 보통 GreenSock이라 하면 GreenSock의 여러 라이브러리들 중에서 애니메이션 트윈 엔진을 뜻한다.

7. 관련 문서




[1] Thoughts on Flash - Apple[2] 플래시의 원래 개발사인 매크로미디어는 애플과 사이가 좋은 편이었다.[3] MacBook에서 플래시가 포함된 페이지를 접속하면 팬이 미친 듯이 돌아가는 소리를 들을 수도 있다.[4] AVM1과 AVM2. AVM1은 AS 1.0과 2.0, AVM2는 AS 3.0에 사용된다.[5] DirectX 9.0c 설치되어 있지 않으면 d3d9.dll 오류가 발생하면서 설치가 안 된다.[출처] 보관된 Flash Player 버전[6] 이를테면 모바일용 칩셋에 비해 어마어마한 컴퓨팅 파워를 가진 x86 아키텍쳐의 상당수 PC도 제대로 돌리기 힘든 2160p UHD급 동영상을 하드웨어 처리기를 내장한 모바일 칩셋은 재생해낸다.[7] Windows 7까지는 별도 설치, Windows 8 이상은 OS에 내장.[8] 파이어폭스는 현재 NPAPI의 지원을 중단하였으나, 플래시는 별도의 API를 통해 구동된다.[9] 레거시 엣지는 ActiveX를 지원하지 않으나, 플래시는 별도의 API를 통해 구동된다.[10] 그나마 익스플로러는 잘 맞는 편이라지만, 사실 이는 보안 문제 때문에 샌드박스에 낮은 권한으로 실행시키기 때문이 크다. 파폭의 e10s도입이 몇 년간 지지부진하던 중에도 가장 먼저 도입한 게 플래시 가상화이고 크롬은 PPAPI라고 전용 API까지 만들었다. 인터넷 익스플로러도 향상된 보호 모드라고 가상화를 지원하나, 호환성 문제 때문에 기본값 Off이다.(실제로 같은 조건에서 플래시로 랜섬웨어에 감염되어도 파폭/크롬/인터넷 익스플로러(향상된 보호 모드 사용) 모두 멀쩡하고 인터넷 익스플로러(기본값 = 향상된 보호 모드 미사용)만 실제로 감염되는 때가 많다. 오히려 성능은 자체 최적화 차이로 크롬이 앞서는 편이다. #[11] 2010년대 초반까지만 해도 한 화면에 플래시 광고 '''8~10개'''가 달려 있는 사이트를 쉽게 볼 수 있었다.[12] 이전에도 가능은 했으나, 개발자가 직접 코드를 짜 줘야 했다.[13] 이는 '''하나의 프로그램으로 그래픽과 코딩이 모두 가능하다'''는 결정적인 장점의 영향으로 대다수의 게임 엔진과는 달리 그래픽 툴에서 만든 리소스를 엔진으로 옮길 필요가 없다.[14] '플래시 플레이어'의 지원이 끊겨도 밑의 파생 기술 중 하나인 'AIR'로 플래시의 스마트폰 앱 구동 가능.[15] 그러나 플래시가 파이어폭스를 제외하면 브라우저에 미리 설치되어 있기는 하다.[16] 플래시와 유니티3D 둘 다 2D, 3D가 가능하지만 플래시는 2D에서 우세, 유니티3D는 3D에서 우세.[17] 특히 스마트폰[18] 주로 사용자 인터페이스 부분을 담당하는 경우가 많다.[19] 사실 당시 자바나 실버라이트도 보안 취약점이 많았고 구버전 IE 브라우저나 Windows XP이하의 운영체제의 허술한 보안성으로 인한 보안문제가 상당수 있었다보니 플래시만의 문제는 아니었다.[20] 플래시가 아무리 보안 문제가 심각했어도 크롬의 PPAPI 샌드박스 기술 도입 등으로 어느 정도 개선이 되고 있었고 이때 만들어진 프로그램이 대부분 다 그랬듯이 플래시 플레이어가 처음부터 보안을 크게 신경쓴 설계는 아니었기 때문에 시간만 주어진다면 충분히 보안을 향상시킬수도 있었다. 그럼에도 불구하고 어도비가 2015년 발생한 보안문제를 이유로 들어 플래시 지원을 줄인 이유이다. 스마트폰을 안 쓰는 사람이 없었기 때문에 더더욱 빨리 세대를 교체하려고 한 것이다.[21] To help secure users’ systems, Adobe will block Flash content from running in Flash Player beginning January 12, 2021. (해석: 사용자 시스템을 보호하기 위해, Adobe는 2021년 1월 12일부터 Flash Player에서 Flash 콘텐트를 실행하는 것을 차단할 예정입니다.)[22] 실제로 버전 32.0.0.371부터 플래시의 기능을 차단하는 통칭 '시한폭탄(Time Bomb)'이 내장되었다. 시스템 시간을 2021년 1월 13일 이후로 설정해보는 식으로 체험할 수 있다. #1 #2 플래시를 계속 사용하려면 32.0.0.363 이전 버전을 설치하고 업데이트를 차단하는 방법이 가장 확실하다.(32.0.0.363 다운로드 링크: IE파이어폭스크롬) 다른 방법으로는 mms.cfg를 수정하는 방법이 있다. #1#2[23] 어도비 본사가 있는 캘리포니아의 시간대인 태평양 표준시(써머타임 미적용) 기준. 대한민국 표준시는 이보다 17시간 느리다. 1월 1일은 신정이라서 직원들이 휴무한 것 같다.[24] 다만 Windows 필기장이 필요한 사용자를 위해 마이크로소프트 홈페이지에서 필기장 다운로드를 제공하고 있기는 하다. 32비트 64비트 참고로 이 Windows 필기장은 Windows XP Tablet PC Edition부터 있었던 프로그램이다.[25] Flash Player의 버전이 오래되어서 실행할 수 없다는 경고문이 표시되었으며, 이제는 아예 지원을 안 한다고 뜬다.[26] 한편 플짤이라는 단어의 의미도 변화하고 있는데, 보통 움짤의 동의어 내지는 프로필 사진의 준말로 쓰인다.[27] 다만 완성형에 없는 글자는 표시할 수 없었는지 일부 갤러리(주로 아햏햏과 관련된 갤러리)는 별도의 이미지 배너를 제작했다.[예시] [image][28] 우회 방법을 확인한건지 업데이트로 충남대 이외 사이트 접속을 차단했다.[29] 돈을 아끼려는건지 하만의 유상기술지원이 아닌 더 이상 업데이트가 없는 구식 플래시다. 즉 웨일과 달리 더 이상의 보안 패치가 없다.[30] 매년 25,000USD를 지불해야 하는데, 즉 한화로 약 2700만원에 해당하는 거금을 내야 사용할 수 있다.[31] 모질라 퍼블릭 라이센스다. 4.8 버전부터는 관리도 아파치 재단이 한다.[32] 플래시에서 커버하지 못하거나 성능상 이슈가 될 수 있는 부분을 C나 기타 다른 언어로 만들어서 플래시에선 애드온 형태로 불러다가 쓰게 만드는 기술. CS5.5에서 처음 언급되었고 CS6에서 정식으로 추가.[33] 다만 Gnash는 현재 국철 지그 플래시를 거의 완벽하게 재생할 수 있으며, 유튜브 동영상 재생은 많이 버벅대긴 해도 어느 정도 희망이 있는 편.