어도비 플래시에서 넘어왔습니다.
Adobe Flash
(♥ 0)
현재 Adobe에서 지원 중인 애니메이션 제작 프로그램에 대한 내용은 Adobe Animate 문서 참고하십시오.
1. 개요[편집]
Adobe(구 매크로미디어)에서 개발했던 리치 인터넷 애플리케이션. 한때 움직이는 웹 화면은 다 이걸로 만들던 적이 있었으나 스마트 폰의 보급 후부터 HTML5에 밀리기 시작했고 결국 단종 수순에 접어 들었다. 어도비는 손을 떼고 하만 인터내셔널에서 유지보수만 지원하고 있다.
2. 용도[편집]
처음에는 원래의 목적대로 GIF 애니메이션을 대체할 정도의 웹용 애니메이션 제작 도구로 주로 쓰였으며, 우리나라에서 본격으로 퍼지기 시작한 것은 2000년대 초반에 졸라맨, 마시마로, 달묘전설, 우비소년, 뿌까 같은 다들 한 번쯤은 들어봤을 익숙한 플래시 애니메이션들이 유행하기 시작하면서부터다.
사실 주로 쓰이는 곳은 웹 디자인 분야인데, 웹 디자인 관련 및 디지털 디자이너의 개인 사이트를 들어가면 플래시로 만들어진 멋진 영상 및 디지털 앱스트랙트들을 볼 수 있다. 이쪽 분야에서 플래시를 잘 다루는 괴수들은 차고 넘쳤다. 특히 1세대 플래시 개발자로 큰 영향력을 미친 사람인 조슈아 데이비스와 나카무라 유고. MIT 미디어랩의 교수인 존 마에다의 초기 액션스크립트 작품은 MoMA에 전시되기도 했다.
플래시는 원래 GIF를 대신할 애니메이터일 뿐이었으나, 버전 3.0에서 벡터 형태의 몰핑 기능을 지원하여 사각형이 부드럽게 원형으로 바뀌는 등의 연출을 파일 용량의 증가 없이 구현하면서 인터랙티브 웹사이트에서 연출에 혁명적인 도구로 자리매김하기 시작했다. 나중에 보조하기 위해 액션 기능(코드)이 생기고 버전 4까지만 해도 단순한 동영상 재생을 제어할 때나 쓰던 이 액션 기능이 버전 5부터 액션스크립트라는 이름으로 강화되면서 슬슬 프로그래밍 도구의 냄새를 풍기기 시작하더니 나중에 2.0(AS2.0)이 되고 좀 더 시간이 흐르자 액션 스크립트 가상머신(AVM)을 완전히 갈아엎어 새로 만들다시피 한 액션스크립트 3.0(AS 3.0)가 나와서 웬만한 프로그래밍 언어 수준의 능력을 갖춘 무서운 도구(툴)가 되어 버렸다. 결국 동영상 재생을 넘어서는 시도가 각 방면으로 이루어졌고 그중 하나가 플래시 게임이다.
페이스북 게임의 대부분은 플래시를 기반으로 하여 만든 것이다. 유튜브는 원래 플래시 기반이었다.
2010년 초중반에 설치되는 키오스크는 대부분 플래시 기반이었다.
3. 특징[편집]
3.1. 언어 판급(버전)의 차이 (AS1.0/AS2.0과 AS3.0)[편집]
매크로미디어 시절부터 사용된 AS1.0/2.0과 어도비 인수 이후 만들어진 AS3.0이 있는데, 이 둘은 전혀 호환이 안 된다. 심지어 코드의 해석을 위한 가상 머신도 따로 쓴다.[1]
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만 지원하게 되었다.
3.2. 지원하는 운영체제[편집]
[3]
안드로이드는 4.1(코드명 젤리빈)부터 지원하지 않으며, 리눅스용 플래시 런타임은 2012년 11.2.X버전을 마지막으로 지원이 끊겼다. 리눅스 유저들은 2017년까지 플래시의 보안 업데이트만을 받을 수 있다. 다만 크롬에 포함되어 있는 플래시 플러그인은 구글을 통해 계속해서 지원되고 있으니 만약 리눅스에서 플래시를 쓰고 싶다면 구형버전, 오픈소스 플래시 플러그인, 크롬. 이 세 가지 중 하나를 골라야 한다. iOS와 Windows Phone은 처음부터 플래시를 지원하지 않았다.
많은 운영체제를 지원하던 플래시가 단기간에 많은 지원을 끊은 이유는 여러 가지가 있겠지만 일단 애플이 iOS에 플래시를 지원하지 않겠다고 한 것이 기폭제가 되었다. 당시 iOS는 모바일 기기 시장에서 큰 영향력을 발휘하고 있었고 인터넷으로 풀리는 컨텐츠의 대부분을 차지하는 미국에서의 점유율도 높았다. 게다가 지겹도록 논의된 바이지만 배터리가 한정된 모바일 기기에서 강력한 컴퓨팅 파워를 내기 위해서는 보통 전용 하드웨어 명령어를 칩에 내장하고 복잡한 명령어나 자주쓰지 않는 명령어는 걷어내는 방법으로 돌파하고 있는데[4] 어도비라는 일개 회사에서 출시하는 제품에 맞추어 칩셋을 제조 설계하는 것은 칩셋 제조업체나 모바일 운영체제를 소유한 업체나 별로 달가운 일은 아니다. 반대로 어도비가 출시되는 칩셋의 하드웨어를 분석하여 이에 최적화해준다는 보장만 있다면 가능할 수도 있겠으나, 어도비는 그런 면에서 발빠르게 지원해주는 회사는 아니었고 삼자 모두 강제력, 즉 상대의 예측 가능성을 장담하기 어렵다. 명분을 그럴듯하게 제시할 수 있겠으나, 결국은 시장 주도권과 제품 장악력 싸움이다.
일단 이러한 이유들로 모바일 시장에서 플래시는 퇴출되기 시작했고 모바일이 대세가 되면서 인터넷 환경이 빠르게 비플래시 환경으로 넘어갔다. 특히 기업들도 두 가지 버전을 만드느니 양쪽에서 사용할 수 있는 플랫폼을 선호하게 되어 입지가 더 줄어들었다. 여담으로 현재 어도비의 HTML5 저작도구 시장 점유율은 90%에 육박한다. 이는 드림위버가 어도비의 소유인 것이 한몫하고 있다. 어도비 입장에서 플래시 시장이 줄어들고 그 대안으로 제시되는 HTML5 시장이 커지는 것은 그저 왼손에 들고 있던 떡을 오른손으로 옮겨 먹는 것에 불과하다.
3.3. 지원하는 브라우저[편집]
출처(아카이브)
기본으로 ActiveX, NPAPI, PPAPI 지원 브라우저를 지원한다.
3.4. 언리얼 엔진 지원[편집]
언리얼 엔진을 지원한다. 언리얼 엔진으로 만든 플래시 3D 게임.
4. 플래시의 성능[편집]
비트맵도 사용 가능하지만 기본으로 벡터 그래픽을 사용하며, 동영상(그래픽) 처리 기술이 강점이다.
- 비교 자료 1
- 비교 자료 2
- 게임 자료
보통 무작정 '플래시는 느리다'라고 알려져 있는데, 적어도 알려진 것처럼 HTML5보다 느리진 않다. 오히려 전체 성능을 보면 C++, C#, JAVA 같은 쟁쟁한 언어들을 데리고 와서 비교해도 적어도 평균 이상은 찍는다. 이런 편견은 아마 플래시 게임이 오브젝트가 늘어남에 따라 기하급수처럼 속도가 느려져서 생긴 듯하다.
원래 플러그인이었던 것의 영향인지 웹 브라우저와는 그다지 잘 맞지 않으며[8] , 윈도우 이외의 운영체제 지원도 미흡하다. 특히 리눅스에선 아주 느리고 자원을 엄청나게 먹기로 유명하다. 플래시의 인식을 나쁘게 만들었던 주요 원인 중 하나로 대형 사이트들의 디자인을 빙자한 플래시 광고 도배를 들 수 있었다. 이런 사이트에 접속하면 아주 심각하게 느려졌다.[9] 그래서 리눅스로 웹 서핑을 하는 사람들 중 어도비나 플래시를 욕 안 해 본 사람을 찾기 힘들다. 가장 큰 문제는 플래시가 어도비에서만 개선을 할 수 있는데 어도비는 이러한 개선에 미흡했다.
그래도 나름대로 플래시도 성능 향상을 위해 노력하는 모습을 보였다. 플래시 플레이어 11부터는 그동안에 안 쓴 그래픽 가속을 기본으로 지원하여[10] 그래픽 부분에서 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인 개발 때는 편리하다.
4.1. 플래시가 시스템 자원을 많이 먹는 이유[편집]
플래시는 벡터 그래픽 방식의 프로그램이다. 벡터 그래픽은 비트맵에 비해 용량이 작으나, 함수를 계산하기 위해서는 별도의 계산이 필요하기에 리소스를 많이 잡아먹어서 느리다는 단점을 보유하고 있다. 모니터에 출력을 하려면 결국에는 벡터 도형을 픽셀에 대응시켜야 하기 때문. 별로 무거워 보이지 않는 프로그램도 벡터 그래픽을 쓰면 CPU 점유율이 급격하게 오르는데, HTML5도 벡터 그래픽을 쓰면 CPU 점유율이 플래시와 비슷하게 나온다.
초창기 웹 환경에서 이러한 플래시의 특징은 엄청난 강점이 되었다. 느리디 느린 웹 환경에서 플래시는 적은 용량으로 아주 효과적인 애니메이션을 표현할 수 있었고 정적인 개념의 웹 환경을 동적인 개념으로 완전히 바꾸어 내었다. 또 낮은 화질의 동영상도 보통 10MB대의 용량이 필요한 반면 플래시는 100KB대의 용량으로 애니메이션을 표현할 수 있다. 이러한 특징들 덕분에 초기 웹 환경을 점령할 수 있었던 것이다. 하지만 이런 특징은 용량보다 렌더링 속도나 CPU 점유율을 생각하는 2010년대 기준 요즘 웹 환경에서 오히려 독이 되기도 한다. 하지만 벡터 기반 그래픽을 사용한 덕에 비트맵 기반 동영상이나 이미지에서 나타나는 디지털 풍화 현상이 없으며, 화질 제한도 없어 현재에도 과거에 만들어진 플래시 컨텐츠를 고화질로 즐길 수 있다.
원래는 GPU를 통한 하드웨어 가속 없이 CPU만으로 렌더링된다는 단점이 있었지만, 9.0 버전부터 동영상 재생에 한해 하드웨어 가속을 지원하였고, 11부터 하드웨어 가속을 완전하게 지원하기 때문에 이 문제는 사라졌다. 또한 인터프리터 방식 특유의 속도도 문제였지만 플래시 플레이어 9 이상의 AVM2 부터는 저스트인타임 컴파일 방식으로 바뀌어 매우 빨라졌다.
또한 진입 장벽이 낮은 플래시의 특징 탓에 역으로 효율성이 떨어지는 더럽게 만든 코드가 많다는 점과 초보 개발자들은 잘 모르는 wmode 등이 있다. AS 2.0까지는 상당히 비효율적인 구조를 가지고 있었던 것도 한몫 했다.
4.2. HTML5 이전의 사실상 표준 규격[편집]
플래시는 원래 표준이 아닌 어도비(구 매크로미디어)의 독점 기술이었지만 워낙 널리 사용되고 있었고 HTML5 이전에는 브라우저에서 스크립팅을 통해 화면에 뭔가를 그린다든가 하는 기능의 표준은 사실상 없었던 데다가 그 외의 다른 기능들에도 표준이 있다 한들 브라우저 전쟁 속에서 각종 상용 비표준 기능이 남발되고, 성능도 별로였기 때문에 어도비 플래시가 사실상 표준 취급을 받았다.
그러나 최근엔 HTML이 꾸준히 개선되면서 웹에서의 입지가 줄어들었으며 서비스 종료 수준까지 가게 되었다. 당장 HTML5를 지원하는 웹 브라우저에서 유튜브에 접속하면 플래시를 이용하지 않고도 동영상 재생이 가능하다.
스마트폰이 보급되기 전까지만 해도 플래시를 선호하는 사람들은 여전히 많았었다. 무엇보다도 액션스크립트는 비슷한 기능을 지원하는 다른 개발환경에 비하면 플래시는 무지하게 쉽고 개발 속도도 빠르다.[11] 이 낮은 진입장벽 탓에 초보자가 코딩한 스파게티 코드들이 웹상에서 사용자 컴퓨터의 성능과 플래시의 이미지를 같이 갉아먹고 있다는 문제가 있기는 하지만 적어도 JavaScript처럼 브라우저 특성을 타서 그걸 다 Hack으로 끊어줘야한다든가 하는 문제는 플래시에선 거의 없다. 그리고 조금 무거운 웹 앱이나 게임 같은 것들은 HTML5로 개발하기 어렵다. 코드가 공개된다는 점과 파편화한다는 문제점도 있고 HTML5는 상당한 부하가 걸려서 예전의 낮은 사양으로는 버거운 감이 있었다.
그리고 과거에는 플래시가 HTML5보단 유니티3D와 경쟁하게 될 것이라고 여겼다. 멀티 플랫폼이라는 공통점에(실제로 구현하는 성격은 많이 다르지만), 요즘은 Flash Player가 지원하는 운영체제가 줄어 Unity Web Player와 비슷한 수준이 되었고 지원하는 운영체제도 비슷비슷했기 때문이다.[12][13] 그러나 둘은 2D와 3D[14] , 다목적 언어와 게임용 엔진이라는 차이가 있다.
2010년대 중반 기준, 플래시는 웹 표준에 맞지 않는 구식 기술 취급을 받고 있다. HTML5가 많은 주목을 받은 이유는 플래시를 능가하는 최적화와 표현력 보다는 게코, 웹킷 같은 훌륭한 오픈소스 엔진이 었었기 때문에 어느 기기[15] 나 애플리케이션에도 HTML, CSS, JS코드[16] 나 브라우저를 탑재하기 좋았기 때문. 플래시는 프로그래밍 보다는 아티스트들이 디자인이나 감성 표현을 위해 사용하는 목적이 더 크기 때문에 현재에는 웹 플러그인 지원 종료를 계획하고 동영상이나 웹문서로 애니메이션을 제작하는 것을 지원하고 있다.
원래부터 애플, 오페라, 모질라 등의 업체가 모여 HTML을 기반으로 한 새로운 표준을 준비하고 있었으나, 스티브 잡스의 발언 때문에 문제가 대두되었다. 애플의 플래시 배척은 플래시와 애플 둘 다 좋아하던 사람들이 애플을 욕하게 만들기도 했다. HTML5가 아직 표준화하기 이전이었기 때문에 플래시를 완전히 대체할 수 있는 것도 아니었고 플래시가 플러그인이라는 특성상 HTML5에 맞춰서 기능을 추가할 수도 있을뿐더러 HTML5+JS가 지금의 플래시만큼의 수준이 되면 플래시는 그만큼 더 발전할 수도 있으리라는 기대가 우세했다. # HTML5가 플래시를 완전히 대체할 수 있는것도 아니고 설마 플래시가 단숨에 망하겠어 식의 생각이었다.
하지만 2015년 들어 플래시는 HTML5보다 장래성이 없는 것으로 평가받고 있다. 웹 표준 기술의 기능 강화와 스마트폰의 대중화로 인해 플래시를 사용하는 사이트가 줄어들었고, WASM, WebGL은 웹 게임 등 높은 그래픽 표현력을 요구하는 분야에서도 대체재가 존재하기 때문. 게다가 최신 버전 플래시 개발을 쫒아가는 개발자는 갈수록 줄어들어도 유니티와 HTML5 개발자는 갈수록 늘어간다는 점에서 인력 수급 면에서도 여러모로 문제가 있다. 그리고 어떤 기술이건 웹 브리우저 기반의 게임들이 입력 반응속도가 느리다는 고질적인 문제점을 가지고 있는데 반응속도가 약간 느려도 되는 장르의 게임들이 선택할만한 웹 기반 게임 배포 기술로는 클라우드 게임 기술이 급부상하고 있기 때문에 게임에서의 스크립트 기반 언어들의 입지도 더욱 좁아진 상태라 볼 수 있다.
4.3. 보안 취약 문제[편집]
안그래도 거의 운영체제급으로 기능을 많이 제공하면서 그만큼 메모리를 쓰는 플래시는 처음 출시될 때부터 보안 문제가 끊임 없이 제기되어 왔고[17] , 실제로 2000년 이후 바이러스 감염 경로 대부분이 플래시였기 때문에 매크로미디어 시절부터 매년 수십번씩 보안 패치나 하던 중 2011년 플래시가 랜섬웨어 감염의 주된 통로가 된다는 점이 알려지면서 보안에 취약한 애물단지 기술 취급을 받았다.
이런 보안 문제는 사실상 플래시가 미래 지향의 기술이 될 수 없는 가장 근본인 이유이다. 업데이트를 통해 보안 취약점 및 오류를 개선해 나가고는 있으나, 현재 시장 추세가 다양한 기능을 포기하더라도 보다 더 가볍고 다양한 환경에서 같은 서비스를 제공할 수 있는 HTML5로 노선을 갈아타기 시작하였다. 게다가 HTML5는 게코, 웹킷이나 크로뮴 같은 오픈소스 엔진이 상당수 있어 여러 기기나 애플리케이션 내부에 이식하기 용이했기 때문에 개발자들이 선호하기도 했다. 플랫폼별 서비스의 일체성은 오히려 HTML5보다 플래시가 훨씬 더 우위이긴 하나 갈수록 각종 플랫폼들에서 퇴출되고 있다는 문제가 있다.
랜섬웨어 감염의 주된 경로 중 하나이며 어도비에서조차 보안 문제로 플래시의 즉시 사용 중단을 권고했다. 결국 플래시의 지원도 중단되고, 어도비는 PC에 설치된 해당 프로그램도 삭제할 것을 당부했다.
5. 지원 중단[편집]
2010년대 들어서 아래의 이유로 플래시 사용을 자제하는 분위기가 강해지기 시작했다. 무엇보다도 보안 취약점을 악용한 악성코드(특히 랜섬웨어) 감염 때문에 플래시를 금기시해야만 하는 상황이 왔다. 2020년 12월 31일, 25년간의 역사를 끝으로 어도비 플래시가 사라지면서 많은 플래시 게임 이용자들이 아쉬움을 자아내고 있다.
또한 Chrome 같은 대중화된 웹 브라우저에서도 어도비 플래시 플레이어 지원을 중단하여, 현재는 플래시 내용을 확인하려면 Chrome 기준으로 웹 스토어에 들어가 추가적인 플래시 프로그램을 설치해야 한다.
5.1. 모바일의 대응[편집]
- 스마트폰과 모바일 데이터(3G/LTE/5G) 사용이 증가하면서 리소스 관리, 저전력, 데이터 사용량 절감이 필요한 모바일 환경 지원이 거의 없었던 플래시를 사용하는 것을 자제하기 시작했다.
- 플래시를 지원하지 않는 iOS(모든 버전), Android(4.1 이상)가 대세가 되면서 사실상 모바일에서는 플래시를 볼 수 없게 되었다. 이 때문에 플래시를 보려면 번거롭게 컴퓨터를 켜야만 하게 되었다.
- 초기부터 웹 표준을 확실하게 준수하고 속도도 빨랐던 웹킷 기반의 모바일 브라우저들의 등장으로 인해 개발자나 인터넷 업체들에게서 웹 표준을 준수하려는 경향이 강해져 어도비 플래시의 사용이 줄어들게 되었다.[18]
5.2. Adobe의 대응[편집]
- 어도비에서 Flash의 지원을 2020년에 완전 종료하기로 했다. 기사
- 플래시 개발 환경인 어도비 애니메이트를 플래시 개발 환경보다는 애니메이션 제작에 중점을 둔 소프트웨어로 전환시켰다.
- 아예 EOL(End of Life)(아카이브) 이라 이름 붙이며 대대적으로 이를 공지하고 있다. 이 웹사이트의 내용을 보면 어도비가 직접 플래시 컨텐츠를 막을 것을 시사하는 듯한 문구가 포함되어 있다.[19][20]
- 2020년 말 이후로는 플래시 웹 플러그인의 지원이 중단된다. 심지어 상단 이미지와 같이 꾸준히 삭제 안내창을 띄워 삭제를 부탁하고 있다. 업무용으로 만들어진 사이트는 쉽게 바꾸기 어렵기 때문에 플래시 컨텐츠를 계속 사용해야 하는 때가 있는데 이런 때에는 하만에서 지원을 계속할 것이라고 한다. 플래시를 사용한 AIR 또한 하만에서 지원할 예정이다.
- 2020년 1월 2일[21] 어도비 플래시 플레이어의 다운로드 페이지가 완전히 사라졌다.
- 유예 기간 2021년 1월 12일 이후로는 어도비의 지원이 완전히 중단되고, Flash Player 32.0.0.387 이상 버전 사용이 불가능해졌다. 해당 버전부터 Time-bomb가 내장돼 모든 기능이 작동하지 않게 조치했기 때문이다. 그러나 시스템 시간을 2021년 1월 12일 이전으로 바꾸거나 32.0.0.363 이전 버전으로 다운그레이드하여 Internet Explorer로 접속하면 플래시 콘텐츠를 계속 사용할 수 있다.
5.3. Microsoft의 대응[편집]
Microsoft Windows 역시 지원 중단에 맞춰서 플래시를 삭제하는 업데이트를 배포하였다. OS 업데이트로 구성요소를 삭제한다는 것이 생소하게 느껴질 수도 있지만 마이크로소프트는 2016년에 보안 취약점이 발견된 Windows 필기장을 삭제하는 업데이트를 배포한 전적이 있다.[22] 정확한 일정은 다음과 같다. 출처
- 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 업데이트, WSUS를 통해 배포된다. 지원 종료 이전에 Adobe Flash Player를 제거하고 싶은 사용자는 2020년 가을에 Microsoft Update 카탈로그에서 이를 다운로드할 수 있다. 이 업데이트는 2021년 초에 Windows 업데이트와 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 지원 계획이 없다.
5.4. 브라우저의 대응[편집]
5.4.1. 메이저 브라우저[편집]
사파리와 파이어폭스의 경우 플래시 플레이어의 구동에 사용되었던 NPAPI의 지원을 완전히 종료하였다. 인터넷 익스플로러의 경우 ActiveX를 여전히 지원하고 있으나 윈도우 업데이트를 통해 플래시 플레이어가 삭제되면 플래시 사용이 불가능하다. Chrome의 경우 PPAPI가 종료된 것은 아니지만 플래시 플레이어를 설치할 경우 지원하지 않는다는 경고문이 나오고 실행되지 않는다.
- Chrome
- 버전 61에서는 플래시의 '항상 허용' 옵션이 제거되어 플래시를 사용할 때마다 일일이 활성화해야 하도록 변경되었다,
- 버전 69에서는 활성화를 하더라도 브라우저를 끄면 기본값인 비활성화 상태로 되돌아가도록 업데이트되었다,
- 버전 76에서는 기본값이 '우선 묻기'에서 '차단\'으로 바뀌었다.
- 2021년 1월 19일 정식 출시된 버전 88에서 플래시가 완전히 삭제되었으며, 이전 버전 역시 플래시를 실행할 수 없게 차단[23] 한다.
- Safari
- 2020년 버전 14의 출시와 함께 플래시의 지원을 중단했다.
- Firefox
- 버전 69부터 플래시의 '항상 허용' 옵션이 제거되어 플래시를 사용할 때마다 일일히 활성화해야 하도록 변경되었다,
- 버전 84를 마지막으로 2021년 1월 26일 버전 85 출시 후부터는 해당 버전은 물론이고 구 버전도 플래시 지원을 중단한다.
- Internet Explorer
- 윈도우 업데이트를 통해 플래시가 삭제되며 Windows 10 한정 후속 조치로 IE 자체가 비활성화된다.
5.4.2. 마이너 브라우저[편집]
- 네이버 웨일
- 크롬 88 버전에서 플래시가 제거되는 것에 대비해서 하만에서 관리하는 플래시 플레이어 모듈이 내장된 플래시 전용 특별판(B2B) 웨일 브라우저를 따로 유상[24]# 제공할 계획을 밝혔다. 이렇게 일반 버전은 더 이상 플래시를 지원하지 않는다. 당장 시간 비용 등 자원 부족으로 현존 플래시를 제거하기 어려운
발등에 불이 떨어진 게으른운영자를 위한 언발에 오줌 역할을 할 예정이다. # 문제는 이 브라우저가 인터넷 익스플로러가 아닌 크로뮴 브라우저이기 때문에 인터넷 익스플로러에 최적화한 구식 사이트는 여전히 도움을 받지 못할 거란 점이다.
- 크롬 88 버전에서 플래시가 제거되는 것에 대비해서 하만에서 관리하는 플래시 플레이어 모듈이 내장된 플래시 전용 특별판(B2B) 웨일 브라우저를 따로 유상[24]# 제공할 계획을 밝혔다. 이렇게 일반 버전은 더 이상 플래시를 지원하지 않는다. 당장 시간 비용 등 자원 부족으로 현존 플래시를 제거하기 어려운
- Waterfox
- G3.2.6 버전까지는 사용할 수 있었으나 G4 버전에서 지원을 종료하였다.
5.4.3. 지원 종료 이후에도 플래시를 사용할 수 있는 브라우저[편집]
- Waterfox Classic
- Firefox 52를 기반으로 보안 패치만 하고 있는 브라우저이다. 따라서 플래시를 온전히 사용할 수 있지만 64비트 OS에서만 사용할 수 있다.
- 퍼핀 브라우저
- 아직도 Flash Player를 제공하고 있다. 무료 버전 기준으로 플래시가 포함된 웹사이트를 보려고 시도하면, 플래시를 사용하겠냐고 물어보는 창이 뜨는데, 플래시를 보겠다고 선택하면 동영상 광고가 재생되고 난 뒤에 사용 가능해진다.
5.5. 플짤, 스트리밍의 대응[편집]
업데이트가 될수록 주 사용처인 플짤 제조기에서 점점 거리가 멀어져 가게 된다.[25]
스마트폰이 대중화하기 전까지만 해도 웹에서 플래시를 심심찮게 볼 수 있었음을 생각하면 그야말로 격세지감이다.[26] 동영상은 플짤을 직접 만들어서 올리는 대신 유튜브를 링크하거나 움짤로 변환해서 올리는 것이 대세가 되었고 각종 유머 사이트에서는 아예 BGM을 넣지 않는 쪽으로 추세가 바뀌었다. 이러한 추세에 유저들의 평가는 엇갈리는데, 유머글에 감칠맛을 더하는 역할을 하는 플짤이 사라져서 재미가 없어졌다는 유저들도 있지만 방심하던 사이에 브금이 갑툭튀하는 일이 없어져서 좋다는 유저들도 있다.
다만 실시간 스트리밍 쪽에선 주류 중 하나인 RTMP 프로토콜이 플래시 기반이다. RTMP에서 탈피하면 되는 일이겠지만 현재까지 OBS Studio 같은 무료 개인용 방송 프로그램들이 사실상 RTMP만 쓸만하게 지원하고 있어서 문제다. NGINX를 통해 HLS로 변환해서 송출하는 방법이 있긴 한데, 지연이 너무 심해져서 보조용으로나 쓰인다. 유튜브, 트위치 등의 대형 스트리밍 서비스에선 RTMP로 전송된 스트림을 서버에서 HTML5로 변환 송출해 해결하지만, 개인이 직접 서버를 구축해 소규모 방송을 할 때는 HLS의 지연문제와 겹쳐서 여전히 골칫거리다. OBS 같은 프로그램 개발진들에게 HTML5 지원을 요청하는 글도 많으나, 개발진의 역량 부족인지 대안이 나오지 않는 상황. 아프리카TV 역시 플래시 기반으로 되어 있었으나, 2017년 4월에 HTML5로 전환했다. 다만 재생과는 별개로 송출은 여전히 RTMP 프로토콜이 사용되는데, 송출 분야에서는 마땅히 대체제가 없으며 플래시 의존성이 없기 때문이다.
네이버 블로그[27] 와 네이버 카페에 사용되는 BGM 플레이어도 플래시 기반이다. 그래서 네이버 블로그만 접속하면 플래시가 차단되었다는 경고가 뜨며, BGM 플레이어가 설정된 블로그에서는 Adobe Flash Player를 활성화하라는 문구까지 나타난다. 결국 제대로 된 대책이 없어 네이버 뮤직샘 서비스를 종료하는 것으로 일괄했다.
다음 블로그에는 BGM 플레이어가 없으나, 내글 지도, 이모티콘, 텍스티콘 등이 모두 플래시 기반이라 Chrome으로 접속 시 재생 버튼이 마구 떴다. 2020년 5월 12일에 리뉴얼되면서 플래시를 삭제했다.
과거 루리웹에는 플래시 아바타라는 기능이 있었다. 프로필 사진이 표시되는 자리에 플짤을 집어넣는 기능이었는데, 주로 동영상을 별도의 서버에서 따로 불러오게 한 뒤 마우스 포인터를 올리면 소리가 나오게 하는 식으로 많이 활용했다. 루리웹이 다음에서 서비스하던 시절까지는 이게 가능했는데, 2016년 7월 1일에 독립개편하면서 플래시 아바타를 새로 등록할 수 없게 바뀌었다. 그나마 기존에 등록해둔 아바타는 계속 볼 수 있었지만 2019년 11월 이후로 기존에 등록한 플래시 아바타까지 전부 삭제처리되어서 기본 루리웹 로고로 대체되었다.
5.6. 웹 앱의 대응[편집]
국내 지도의 스트리트뷰 서비스도 웹은 Flash 기반으로 되어 있었다. 네이버 지도는 최신버전(V5) 지도의 항공, 거리뷰에서 Flash를 제거하고 HTML5 기반으로 변경했으며, 구버젼 지도(V4)도 마찬가지로 2020년 12월 31일 이후로 거리뷰와 항공뷰를 사용할 수 없도록 차단하였다. 다음 지도도 카카오맵으로 통합 후 업데이트를 통해 "구버전 Flash 대신 새로운 기술의 카카오맵을 만나보세요!" 라는 공지와 함께 제거되었다.
네이버 가계부 역시 Flash 기반이었다. 이쪽은 PC나 모바일이나 오류수정이나 점검 외에는 사실상 손 놓은 수준이었기 때문에 모바일앱도 과거의 디자인을 그대로 유지 중이다. 일단 Flash 지원이 종료되는 2020년 12월 31일 이전까지 전환한다고 공지가 올라오긴 했다. 그리고 2020년 11월 16일 자바스크립트 기반의 새로운 가계부가 오픈되었으며, 2020년 12월 28일에는 기본값이 새로운 가계부로 바뀌었다. 기존의 Flash 기반 가계부는 Flash 지원이 완전히 중단되는 시점까지 사용자가 선택할 수 있게 남겨두었다.
이글루스는 이미지 업로드 기능 중 '편집해서 올리기' '여러장 올리기'가 Flash 기반이었고 2020년 12월까지 교체는커녕 관련 공지도 올라오지 않았다. '개발 중이므로 자세한 사항은 알려드릴 수 없다'고 했는데 어느샌가 Flash 없어도 이미지 업로드 기능이 정상동작하고 있다.
디시인사이드는 2008년 하반기부터 2014년 초까지 갤러리 화면 상단에 있는 '○○○ 갤러리'라는 배너를 Flash로 띄웠다. 2008년 상반기까지는 이미지를 사용했으나, 갤러리 수가 많아지면서 배너를 일일이 제작하기가 힘들어지다 보니 Flash로 대체한 것이다.[28] 관리자 설정에서 표시될 갤러리 이름을 설정할 수 있었던 것으로 추정되는데, 과거 (구)주식 갤러리처럼 김유식이 배너에 장난을 쳐놓거나 아니면 해킹으로 배너가 바꿔치기당하는 때[예시] 도 있었다. 그러나 2014년 Chrome이 패치되면서 '중요하지 않은' Flash를 알아서 차단하는 기능이 도입되었으며, 이 때문에 디시 배너도 차단당해서 재생 버튼이 뜨는 현상이 발생하자 결국 HTML 기반으로 바꿨다. 사실 그 이전에도 macOS나 Linux 사용자들이 Flash 좀 없애달라고 항의했지만 무시당했다.
조아라는 PC판 뷰어가 Flash 기반으로 지원 종료되기 직전에야 모바일 뷰어로 대체되었다. 문피아도 Flash 기반 뷰어를 썼지만 그보다 빠른 2019년경에 HTML5 뷰어를 새로 내놓았다.
5.7. 지원 종료 이후[편집]
결국 2021년 1월 12일을 끝으로 어도비 플래시는 출시 25년 만에 완전히 지원 종료되었다. 2021년 여름 정도까지 플래시를 들어내는 작업이 이어질 예정이나, 보안 지원이 끊기고 각종 보안 위험의 여지가 있으므로 가상 머신에서 돌리는 게 아닌 한 빠른 삭제가 권장되지만... 계속 쓰고 싶다면 다른 방향으로 어도비 플래시 종료에 대비하는 방법을 찾는 곳도 있다.
- 지원 중단 이후에 사용하려면 플래시가 탑재된 Windows 10/버전/20H2까지의 윈도우에서 업데이트를 차단해야 한다. 당연히 업데이트가 없어지기 때문에 컴퓨터가 보안에 더 취약해질 것이다.
- 플래시 파일에 플레이어를 내장한 프로젝터(.exe) 형식으로 배포된 플래시 컨텐츠는 계속 시청할 수 있다.
- 일부 플래시 게임 사이트에서는 자체 브라우저를 제작하여 게임들을 서비스하는 경우가 있다.
5.7.1. 기업[편집]
- 충남대학교는 플래시로 만들어진 통합정보시스템을 계속 이용할 수 있도록 "충남대 전용 브라우저"를 제공한다. #
3년간의 유예기간 동안 뭘 한 것인가보안사고를 방지하기 위해 충남대 내부에서만 접속 가능하게 만들었다.[29] 충남대 브라우저는 ToGate(크로뮴 기반) 브라우저며, 뒤져 보면 코러스 보안 브라우저라고 적혀 있고 티맥스소프트의 제품#으로 추정된다.[30]
- 지원 종료와 별개로 중화인민공화국에서는 이미 일찌감치 플래시 제공사가 변경되었었는데 어도비에서 지원을 중단한 것과 달리 지속적으로 업데이트를 지원하고 있다. 다만 이 방법을 사용한 플래시 우회 방법이 퍼지자 국가 제한을 적용해 중국 이외 국가에서 사용이 막혔다. 대부분의 브라우저가 이미 플래시 지원을 종료했으므로 Pale Moon , Waterfox Classic 등 플래시를 지원하는 브라우저를 사용해야 한다. 플래시와 애드웨어가 함께 설치되며 이는 삭제할 수 없다. 플래시 다운로드 사이트(영어)
- 다롄시는 철도 운행 프로그램을 플래시로 만들었지만 대비를 하지 않은 탓에 2021년 연초부터 철도망 마비라는 대형 사고를 쳤다. 기사에 따르면 애초에 지원 종료되는 것 자체를 모르고 있었던 듯.
5.7.2. 커뮤니티[편집]
- 플래시 게임 사이트인 Newgrounds는 아예 플래시 게임용 ActiveX 컨트롤을 배포하고 있다. 이 사이트의 일부 컨텐츠에 Ruffle을 사용한 플레이어도 적용된 상태. 하지만 웹브라우저 기반이여서 1월 12일 이후 가동된 Time-bomb 킬스위치의 영향으로 인해 약간의 우회가 필요하다.
- darktohka라는 개발자가 상술한 중국 전용 버전을 지역 제한 해제, 애드웨어 제거 등의 트윅을 거쳐 Clean Flash Player (통칭 CleanFlash)라는 이름으로 배포하고 있다. Windows 11에서도 사용 가능하다고 하니[31] 보안 위협을 감수하고도 플래시를 사용해야 한다면 가장 이상적인 선택이지만 어도비 측이 Github 리포지토리에 DMCA 테이크다운을 걸었다.[32] 이후 GitLab으로 옮겨서 개발하고 있다. 다만 플래시의 취약점은 구조적으로 완전히 막을 수 없으므로 인터넷이 연결되지 않은 환경에서 제한적으로 사용하는 것이 좋다. 다운로드
- 한 개발자가 플래시의 Time-bomb 킬스위치의 작동 구조를 밝혀내고, 이를 무력화시키는 데 성공했다.
#(아카이브) 이를 기반으로 다른 개발자[33] 가 FlashPatch라는 이름으로 Time-bomb 킬스위치 무력화 패치를 배포하고 있다.
6. 단점[편집]
멀티 플랫폼에 평균 이상은 찍는 성능, JIT, 내장된 그래픽 처리가 상용 그래픽 엔진 급, 바이트 단위의 저수준 조작, 그래픽 가속을 통한 3D 개발, 소켓 서버 등. 이 정도 기능을 내장하여 지원하는 스크립트 언어는 그렇게 많지 않다. 단지 프로그래밍 언어의 냄새를 풍기기 시작하면서 단순히 동영상 재생이나 광고 정도에 쓰기엔 좀 과하다는 게 문제라면 문제.
그리고 보통 프로그램은 뜯어 보지 않는 한 무엇으로 만들어졌는지 알기 어려운데, 플래시도 웹 상에서 재생되어 우클릭[34] 으로 확인이 가능한 플래시 플레이어가 아니면 플래시로 만들어졌다는 걸 직접 확인하기 어렵다. 이때 우클릭이 안 될때 F12를 눌러 내트워크로 들어간 다음 세로고침하면 플래시로 만들어졌는지 확인할 수 있다. 덕분에 관련 업계 종사자가 아닌 한 대부분 동영상이나 광고 정도만을 접하게 되는데, 이 때문에 일반인들의 플래시를 보는 인식은 "플래시? 그거 그냥 동영상 재생이나 하는 거 아냐? 그거에 무슨 의의가 있어?" 수준이었으며 2020년 12월 31일 서비스 종료가 현실로 다가오고 나서야 알게 모르게 실생활에 유용하게 쓰였다는 것을 알게 되었다.
7. 파생 기술[편집]
친척뻘이라고 볼 수 있는 기술들로 그 중 플래시 라이트와 AIR, FLEX는 분야에 따라 기능이 조금씩 다르지만 공통으로 액션스크립트를 사용하고 있다.
7.1. FLEX[편집]
플래시에서 사용되는 액션스크립트에 MXML이라는 마크업을 더하고 이걸 .net이나 J2EE같은 서버사이드 언어와 통합해서 아예 디자이너 없이 개발자가 개발해서 넷상에서 작동하는 애플리케이션을 만들도록 만든 물건으로, 주로 엔터프라이즈급 인트라넷 등에 사용하고 있으며 일반 유저가 이것으로 만든 물건을 접할 기회는 흔치는 않다. 사실 애당초 플렉스로 만든 프로젝트도 결과물은 동일한 .swf파일이라 일반인이 구별하기가 쉽지 않다. 굳이 구별하는 방법은 처음 구동시에 플렉스에서 고정으로 이용하는 로딩바가 나오나 안 나오나의 여부.
FLEX 애플리케이션은 일반에서는 플래시와 함께 설치되는 전용 IDE인 '플래시 빌더'를 이용해서 개발하지만 별도로 무료 배포[35] 하고 있는 FLEX SDK를 이용하면 이클립스나 Flash Develop 같은 IDE를 가지고 FLEX 코딩이 가능하다. 즉 FLEX를 이용하면 비싼 플래시를 사지 않아도 합법으로 돈 한푼 안 들이고 플래시 개발환경을 구축할 수 있다는 어마어마한 장점이 있다.
7.2. AIR[편집]
플래시 플레이어로 웹 브라우저나 플래시 플레이어에서 돌아가는 것이 아닌 아예 별도로 실행되는 응용 프로그램을 제작하는 기술로, 이것으로 만든 프로그램을 작동시키기 위해서는 어도비에서 AIR 런타임이 있어야 하는데, 보통 프로그램 설치 시 자동으로 설치된다.
웹상에서 보안상의 이유로 불가능한 명령어들을 사용할 수 있으며[36] , 그와 관련된 일부 기능들이 추가되어 있고 속도도 플래시 플레이어보다 더 빠르다. 간단한 게임부터 앱 등, 여러 곳에 쓰인다. 대표적으로 애니팡이 플래시 AIR로 만들어졌다.
런타임은 윈도우용과 맥OS용으로 나오며, 원래는 리눅스용도 있었지만 2.6을 마지막으로 중단 되었다. 그 외에 플래시로 만든 결과물을 안드로이드의 응용 프로그램으로 돌릴 수 있는 AIR for Android가 있으며, 블랙베리의 타블렛PC인 플레이북은 아예 이 런타임을 OS 안에 내장하여 별도 플러그인 설치 없이도 AIR for Android용으로 만들어진 APK파일은 바로 설치해서 돌릴 수 있게 만들었다.
CS5.5에 와서는 iOS용인 AIR for iOS도 추가되었다. 이걸로 플래시 개발자들은 소스 하나를 가지고 윈도우, 맥OS, iOS, 블랙베리 등 모든 운영체제에서 사용할 수 있게 되었다. 또한 플래시가 원래 웹 플러그인이었던 만큼 플래시 개발자 중 웹프로그래머 출신이 많은데, 거기에 AIR까지 더해지면서 앱/프로그램 개발과 웹 개발을 다 할 수 있게 되었다.
원래 인앱결제 기능이 어도비의 자체 서비스를 통해 구현되고 있었기에 iOS는 인앱결제가 지원되지 않는 등의 문제가 있었다. 애플 앱스토어의 외부 인앱결제 제한 조치에 따른 것.[37] 이후 Native Extension이라는 FFI 기능이 AIR 추가되어 애플의 API를 직접 사용할 수 있게 되면서 해결되었다.
2019년, 삼성전자의 미국 자회사인 하만이 AIR을 인수했다. #, ## 하만에서 생산하는 차량용 인포테인먼트 기기에서 AIR가 사용되고 있기 때문에 인수한 것으로 보이며, 과거에도 어도비와 협력 관계가 있었다고 한다. 하만 인수 이후에도 계속 지원이 이루어지고 있다.
대부분 최근에 설치된 키오스크[38] 컨텐츠는 AIR 기반으로 제작된다. (하지만 2019년도에 들어서부터 대부분은 유니티 기반을 더 많이 사용한다.)
7.3. 플래시 라이트[편집]
Flash Lite. 이름 그대로 가볍게 만든 플래시. NTT 도코모에서 "우리 무선인터넷에서 플래시 좀 돌려보게 한번 좀 만들어주세요" 해서 만든 물건이 시초이다. 주로 모바일이나 셋톱박스, TV같이 PC용 플래시를 쌩으로 돌리기에는 CPU등의 퍼포먼스가 좋지 않은 기기에 들어가며, 국내에 출시되는 피처폰이나 MP3 플레이어, 전자사전 등의 구형 휴대용 전자기기들은 이것으로 만든 인터페이스를 채용한 일이 많다.
EV-W100은 플래시 라이트 기반 swf파일을 실행할 수 있다.
7.4. 스케일폼 GFx[편집]
ㅣ
플래시를 기반으로 한 게임 UI 미들웨어. 2000년대 후반부터 나오는 상당수의 게임 UI가 이걸 이용해서 만들어진다. 플래시 게임이 아닌데도 게임에 플래시를 사용한다거나 하는 말이 나오면 100% 이걸 가리킨다고 보면 된다.
게임 UI를 만들때 이걸 이용하면 자체 툴을 만들지 않아도 되고 플래시의 특성상 상당히 화려하고 정교한 효과를 줄 수 있다. 벡터 방식의 그래픽 사용이 가능하기에 게임 해상도에 구애받지 않고 UI 확대/축소를 마음대로 할 수 있고 UI 동작은 스케일폼에 맞게 일부 맞춤한 액션스크립트를 이용하기 때문에 게임 제작에 들이는 시간과 수고를 줄일 수 있다. 이 때문에 많이 선호되고 있고 특히 언리얼 엔진 3에는 기본으로 제공된다.
2011년 2월 오토데스크가 스케일폼을 인수했다. 인수 이후로도 GTA 5 같은 많은 게임들에 쓰였지만 현재는 지원 중단된 상태이다.
7.5. 콜드퓨전[편집]
과거 매크로미디어 시절에 플래시에서는 감당하지 못하는 서버사이드 스크립트를 구동하기 위한 기술로 만들어진 언어지만 개발자 수가 적은 데다가 이걸 사용하기 위해서는 콜드퓨전 서버 데몬을 별도로 돈 주고 사야한다는 이유로 국내에서는 처절하게 망했다. 개발 속도가 빠르다는 장점이 있어서 해외에서는 아직도 제법 사용하고 있다는 듯하다. 미국 국방부 홈페이지 등 많은 정부기관에서 이걸 쓰고 있었던 것으로 추정된다. 여전히 지원을 하고 있으며 주로 기업 업무 시스템 개발에 쓰이는 듯 하다.
8. 타사 호환 제품(대체 프로그램)[편집]
지원이 끝난 어도비 플래시 플레이어를 타사가 데신 밀어줄 대체 프로그램이다.
8.1. 오픈소스[편집]
독점 소프트웨어 주제에 하도 많이 쓰이다 보니 오픈소스로 호환 프로그램(또는 라이브러리)을 구현하려는 움직임도 있다.
성능은 아직 본가에 비하면 많이 후달린다.[39]
8.1.1. Gnash[편집]
GNU 사이트 / 프로젝트 사이트
자유 소프트웨어 재단에서 밀어주는 제품. SWF v7을 지원하고 v8과 v9도 일부 지원하나, v10은 현재 지원하지 않는다. 개발 역시 2011년 이후 사실상 중단된 상태.
8.1.2. Lightspark[편집]
공식 사이트
LLVM을 사용한다. 2020년 기준으로 유지/보수가 이루어지고 있는 플래시 대체품이다. 스탠드얼론과 브라우저 플러그인 방식을 지원한다.
8.1.3. SWFdec[편집]
몇 년 전까지만 해도 GNOME 쪽에서 밀어주던 제품이나, 이쪽은 지금 망한 상태.
8.1.4. Shumway[편집]
2012년 11월 모질라 재단에서 플래시 런타임을 대체할 프로젝트로 발표한 제품. 관련글 2012년 초부터 개발되었으며, HTML5 기술로 SWF 파일을 해석하고 실행할 수 있게 한다고 한다.
개발 초기 단계라 되는 게 많이 없었다. 몇몇 플래시 게임이 느리게 돌아가긴 한다. 그렇지만 오픈 소스 지지자, 열린 웹 환경을 원하는 사람들이나 2017년에 아예 플래시 지원이 끊길 리눅스 사용자들로서는 고무적인 소식이다. 파이어폭스 사용자라면 한 번쯤 시도해볼 만하다.
여기에서 Shumway를 파이어폭스 부가 기능으로 설치할 수 있다.
현재는 개발이 중단되었다.
8.1.4.1. AwayFL[편집]
Shumway 기반을 사용하는 플래시 에뮬레이터이다.
공식 사이트
8.1.5. swf2js[편집]
공식 사이트(영어)
한 일본 게발자가 만든 플래시 에뮬레이터이다.
8.1.6. Ruffle[편집]
"display: none; display: 문단=inline"를 참고하십시오.
공식 사이트
소스 코드
2020년 기준으로 가장 활발하게 개발되고 있는 오픈소스 프로젝트이며 플래시 대체 플레이어로서 가장 높은 점수를 받고 있다.
Rust 언어로 만들어졌으며, WebAssembly로 웹브라우저에서 추가 플러그인 없이 바로 구동될 수 있다.
Newgrounds나 플래시아크 등에서 사용하고 있다.
8.2. 그 외[편집]
8.2.1. 와플래시 (WAFLASH)[편집]
어도비 플래시를 대체하기 위해 HTML5, WebGL, WebAssembly, Emscripten 웹표준 기술로 개발된 국산 어도비 플래시 호환 플래시 재생 플레이어이다. 자세한 내용은 와플래시 문서 참고.
9. 관련 라이브러리[편집]
9.1. 스탈링 엔진[편집]
Starling Framework
https://gamua.com/starling/
플래시 플레이어 11에 추가된 Stage3D를 기반으로 하는 오픈소스 2D 엔진.
그래픽의 GPU 렌더링을 쉽게 할 수 있도록 해 주는 엔진이며, 플래시 액션스크립트의 내장 라이브러리와 최대한 비슷하게 설계되어서 쓰기도 쉽다. 단지 게임 개발을 염두에 두고 만들어졌기에 범용성이 약간 떨어진다.
플래시 플레이어의 프로덕트 매니저인 Thibault Imbert이 관심을 가질 정도로 비슷한 라이브러리들 중에선 가장 유명. 앵그리버드와 애니팡에도 사용되었다.
JavaScript로 컨버팅이 된다고도 한다. 허나 JavaScript 기반으로 개발 중인 Starling JS는 결국 개발의 어려움 및 기타 여러 가지 이유로 현재는 후술할 어웨이3D 재단으로 이양되었다.
관련 링크: https://gamua.com/blog/2014/02/starling-js/
9.2. Red2D 엔진[편집]
http://red2d.cafe24.com/wordpress/
드물게 한국인이 만든 2D 엔진. 그런데 유명하지가 않은지 이걸로 뭔가를 만들었다는 얘기는 나오지 않고 있다. 2020년 현재 사이트 도메인이 만료되었다. 2012년 6월 이후로 제작자의 페이스북에도 별 내용이 없다.
9.3. 얼터네이티바3D[편집]
Alternativa3D
https://alternativa.games/
러시아에서 만든 플래시용 3D 엔진. 일단 비슷한 플래시용 3D 엔진들 중에서 성능은 최고로 인정받는다. 원래 상업으로 쓰는 건 유료였는데, 인지도 탓인지 8 버전부터 오픈소스화.
9.4. 어웨이3D[편집]
Away3D
http://www.away3d.com/
플래시용 3D 엔진. 처음부터 오픈 소스였으며, 그 때문인지 이걸로 만들어진 게 꽤 많다. 특히 닛산이 이걸로 홍보용 게임을 만든 건 업계에서 유명.
9.5. GreenSock[편집]
https://greensock.com/
플래시 개발자들에겐 모르면 간첩이라는 소리가 나올 정도로 정말로 유명한 라이브러리.
그런데 사실 GreenSock라는 건 사이트 이름이고 실제 라이브러리'들'의 이름은 TweenNano, TweenLite, TweenMax 등. 그런데 아무도 그렇게 안 부른다. 따라서 보통 GreenSock이라 하면 GreenSock의 여러 라이브러리들 중에서 애니메이션 트윈 엔진을 뜻한다.
10. 기타[편집]
2000년대 초반에 어린 시절을 보낸 사람들에게 플래시 플레이어는 매우 익숙한 프로그램이었다. 주로 야후! 꾸러기 놀이터 또는 쥬니어네이버 등에서 제공하던 플래시 게임이나 동요 서비스를 비롯한 여러 콘텐츠를 접했고, 당시 일부 초등학교에서는 교사들이 수업시간에 플래시 노래[40] 를 틀어 주었고, 당시 이 곳에서 제공하는 콘텐츠 중 상당수가 플래시로 제작되어 플래시 플레이어로 재생되고 있었기 때문이다.[41][42]
플래시 플레이어가 작동 중인 화면에서 오른쪽 버튼을 클릭한 후[43] "Macromedia[44] 또는 Adobe[45] Flash Player (버전이름) 정보" 부분을 클릭하면 매크로미디어(2005년 후반 이후부터는 어도비) 사이트의 플래시 플레이어 관련 정보 페이지가 뜨는데, 웹 개발에 관심이 있거나 플래시 게임, 플래시 애니메이션 제작에 관심이 있던 사람들은 플래시, 드림위버, 파이어웍스 등의 같은 회사의 여러 제품 안내를 살펴보면서 이 회사의 여러 제품에 상당한 관심을 갖기도 하였다. 일부 학교의 경우 방과후 시간에 플래시 프로페셔널[46] 사용법을 교육하는 경우도 있었다.
플래시와 관련된 자격증으로 한국생산성본부에서 주관하는 GTQf가 있었다. 1급부터 3급까지 있었으며 모두 등록민간자격(국가공인 아님)이었다. 2013년 첫 시험이 실시되었다가 이후 폐지가 결정되면서 2016년 시험을 끝으로 더 이상 시험이 실시되지 않고 있다. 국가기술자격 중에서는 웹디자인기능사와 멀티미디어콘텐츠제작전문가가 플래시를 다루었으나, 둘 다 2017년부터 출제 기준을 개정하면서 플래시를 폐지했다.
또한 예전 웹사이트 (현재는 업데이트가 되지 않는, 지원 중단된 웹사이트) 에서도 플래시가 있던 흔적을 잘 볼 수 있다.
Proud7 어학원 홈페이지 (http://bundang.proud7.com/)에서 "온라인 학습" 항목을 누르면 창이 하나 뜨게 되는데 그것이 플래시를 활용한 사이트이다.
지원 종료 이후에도 인트라넷에서는 계속 사용하고 있을 가능성이 높다.
10.1. 관련 문서[편집]
- 어도비 애니메이트 - 어도비 플래시의 저작 프로그램.
- 플래시 애니메이션
- 플래시 게임 (목록)
- 플짤
- 플래시 콘텐츠 사이트
- 액션스크립트 - 플래시에서 사용하는 스크립트.
- 랜섬웨어 - 직접 관련은 없지만 플래시가 지원 중단된 가장 큰 이유가 보안 취약점으로 인한 랜섬웨어 감염이다.
- 어도비 디렉터
- Microsoft Silverlight
- Java
- HTML5
- Flashpoint
11. 여담[편집]
스티브 잡스는 세상을 떠날 때까지 플래시를 싫어했다.[47] 초기 어도비는 매킨토시를 밀고 있었고 이때는 양자의 관계가 좋았지만 마이크로소프트가 Windows 95를 출시한 이후로 조금씩 옮겨가는 모습을 보이면서 애플과 사이가 나빠졌다. 플래시는 원래 어도비 회사 제품이 아니었지만 어도비가 인수하고 나서부터 애플 지원 정책에 아예 빠져버려 자연히 배척하게 되었다.[48] 결국 사업상의 마찰이라고 보는 게 적절하다. 애플은 1999년 즈음에 기존의 OS인 '시스템' 시리즈를 Mac OS 9.2를 마지막으로 다윈 커널 기반의 'OS X' 로 이주하는 엄청난 모험을 했는데, 기존의 프로그래머들은 완전히 새롭게 코드를 작성해야 하는 어려움이 있었다. 어도비의 제품군은 당시에도 시스템 자원을 많이 소모하는 비대한 프로그램들이었기 때문에, 애플에서 손쉬운 이주 툴로 '카본'을 제공하기는 했으나, 원활하게 시스템상에서 돌아가려면 Cocoa 라는 프로그램으로 앱을 재작성하기를 권고했다. 이 당시 맥은 Windows에 비해 가뜩이나 어도비 제품군의 퍼포먼스가 점점 떨어지는 상황이었고, 카본에서 코코아로의 이주 또한 타사 제품들에 비해 어도비는 매우 느리게 진행되면서 나름 '맥 제품군 구매의 가장 큰 이유 중 하나'를 제공하는 어도비의 늦은 대응은 애플의 심기를 불편하게 했다. 그 이후, 아이폰이 시장에 안착한 이후로도 아무튼 iOS는 플래시를 아예 지원하지 않으며, macOS에서는 돌아가기는 하지만 발열이 심해지는 등[49] 최적화가 잘 되어 있지 않고 상당히 불안정하다.
플래시 버전 간의 하위호환 정책은 전통처럼 두 버전 전까지만 지원했다. 예를 들면 CS6에서는 CS5.5와 CS5 버전의 FLA 파일을 작성할 수 있고, CC2014라면 CC, CS6까지만 지원되는 식. 그래서 두 버전 이상의 구 버전 환경에서 옮겨 작업해야 하는 부득이한 일이 생겼을 때, 예를 들어 CS6에서 작업하다 CS4로 옮겨가야 할 때는 CS5 호환으로 저장한 다음 CS5 버전이 있는 컴퓨터를 찾아 다시 CS4 호환으로 저장하는 삽질을 거쳐야 했다. 거기다가 CC부터는 AS 2.0을 지원하지 않으므로 해당 파일이 AS 2.0으로 작성됐다면 호환되지 않는다. 그런데 사실 어도비가 포토샵과 일러스트레이터를 제외한 다른 시리즈에서는 하위호환을 별로 신경쓰지 않는 편이며, 두 버전 씩이나 구 버전을 배려해주는 플래시 쪽이 오히려 구 버전 배려가 많은 편에 속한다. 예를 들어 인디자인은 하위호환부터가 안 된다.
이 문서의 내용 중 전체 또는 일부는 2024-08-08 08:45:11에 나무위키 Adobe Flash 문서에서 가져왔습니다.
[1] AVM1과 AVM2. AVM1은 AS 1.0과 2.0, AVM2는 AS 3.0에 사용된다.[2] DirectX 9.0c가 설치되어 있지 않으면 d3d9.dll 오류가 발생하면서 설치가 안 된다.[3] 출처: 보관된 Flash Player 버전[4] 이를테면 모바일용 칩셋에 비해 어마어마한 컴퓨팅 파워를 가진 x86 아키텍처의 상당수 PC도 제대로 돌리기 힘든 2160p UHD급 동영상을 하드웨어 처리기를 내장한 모바일 칩셋은 재생해낸다.[5] Windows 7까지는 별도 설치, Windows 8 이상은 OS에 내장.[6] 파이어폭스는 현재 NPAPI의 지원을 중단하였으나, 플래시는 별도의 API를 통해 구동된다. 그리고 아주 오래전(Netscape 시절)에는 내장되어 있었다. (netscape 8 까지)[7] 레거시 엣지는 ActiveX를 지원하지 않으나, 플래시는 별도의 API를 통해 구동된다.[8] 그나마 익스플로러는 잘 맞는 편이라지만, 사실 이는 보안 문제 때문에 샌드박스에 낮은 권한으로 실행시키기 때문이 크다. 파폭의 e10s도입이 몇 년간 지지부진하던 중에도 가장 먼저 도입한 게 플래시 가상화이고 크롬은 PPAPI라고 전용 API까지 만들었다. 인터넷 익스플로러도 향상된 보호 모드라고 가상화를 지원하나, 호환성 문제 때문에 기본값 Off이다.(실제로 같은 조건에서 플래시로 랜섬웨어에 감염되어도 파폭/크롬/인터넷 익스플로러(향상된 보호 모드 사용) 모두 멀쩡하고 인터넷 익스플로러(기본값 = 향상된 보호 모드 미사용)만 실제로 감염되는 때가 많다. 오히려 성능은 자체 최적화 차이로 크롬이 앞서는 편이다. #[9] 2010년대 초반까지만 해도 한 화면에 플래시 광고 8~10개가 달려 있는 사이트를 쉽게 볼 수 있었다. 요즘의 관점에선 이런 관행을 앞장서서 근절해야 할 책임이 있는 광고시장의 지배적 사업자인 구글 애드센스조차도 플래시 배너광고를 지원하고 있었다.(…)[10] 그 전에도 가능하긴 했으나 개발자가 직접 코드를 짜 줘야 가능했다.[11] 이는 하나의 프로그램으로 그래픽과 코딩이 모두 가능하다는 결정적인 장점의 영향으로 대다수의 게임 엔진과는 달리 그래픽 툴에서 만든 리소스를 엔진으로 옮길 필요가 없다.[12] '플래시 플레이어'의 지원이 끊겨도 밑의 파생 기술 중 하나인 'AIR'로 플래시의 스마트폰 앱 구동 가능.[13] 그러나 플래시가 파이어폭스를 제외하면 브라우저에 미리 설치되어 있기는 하다.[14] 플래시와 유니티3D 둘 다 2D, 3D가 가능하지만 플래시는 2D에서 우세, 유니티3D는 3D에서 우세.[15] 특히 스마트폰[16] 주로 사용자 인터페이스 부분을 담당하는 경우가 많다.[17] 사실 당시 Java나 실버라이트도 보안 취약점이 많았고, 구버전 IE 브라우저나 Windows XP 이하의 운영체제의 허술한 보안성으로 인한 보안 문제가 상당수 있었다보니 플래시만의 문제는 아니었다.[18] 플래시가 아무리 보안 문제가 심각했어도 크롬의 PPAPI 샌드박스 기술 도입 등으로 어느 정도 개선이 되고 있었고 이때 만들어진 프로그램이 대부분 다 그랬듯이 플래시 플레이어가 처음부터 보안을 크게 신경 쓴 설계는 아니었기 때문에 시간만 주어진다면 충분히 보안을 향상시킬 수도 있었다. 그럼에도 불구하고 어도비가 2015년 발생한 보안문제를 이유로 들어 플래시 지원을 줄인 이유이다. 스마트폰을 안 쓰는 사람이 없었기 때문에 더더욱 빨리 세대를 교체하려고 한 것이다.[19] 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 콘텐트를 실행하는 것을 차단할 예정입니다.)[20] 실제로 버전 32.0.0.387부터 플래시의 기능을 차단하는 통칭 '시한폭탄(Time Bomb)'이 내장되었다. 시스템 시간을 2021년 1월 13일 이후로 설정해보는 식으로 체험할 수 있다. #1 #2 플래시를 계속 사용하려면 32.0.0.371 이전 버전을 설치하고 업데이트를 차단하는 방법이 가장 확실하다.(32.0.0.363 다운로드 링크: IE파이어폭스크롬) 다른 방법으로는 mms.cfg를 수정하는 방법이 있다. #1#2[21] 어도비 본사가 있는 캘리포니아의 시간대인 태평양 표준시(써머타임 미적용) 기준. 대한민국 표준시는 이보다 17시간 느리다. 1월 1일은 신정이라서 직원들이 휴무한 것 같다.[22] 다만 Windows 필기장이 필요한 사용자를 위해 마이크로소프트 홈페이지에서 필기장 다운로드를 제공하고 있기는 하다. 32비트 64비트 참고로 이 Windows 필기장은 Windows XP Tablet PC Edition부터 있었던 프로그램이다.[23] Flash Player의 버전이 오래되어서 실행할 수 없다는 경고문이 표시되었으며, 이제는 아예 지원을 안 한다고 뜬다.[24] 매년 25,000USD를 지불해야 하는데, 즉 한화로 약 2700만원에 해당하는 거금을 내야 사용할 수 있다.[25] 플짤이라는 단어의 의미도 변화하고 있는데, 보통 움짤의 동의어 내지는 프로필 사진의 준말로 쓰인다.[26] 좋은선생님 플래시 노래방 같은 사이트는 아예 플짤로 이루어진 음악들의 집합소였다.[27] 스토리 포토(네이버 블로그에만 한함)도 원래 플래시 기반이었다. 오래전에 업로드 된 블로그에 들어가면 간혹 플래시 경고창이 뜨는 데 그게 바로 스토리 포토가 구버전이여서 그렇다.예시 링크(모바일 버전에서는 작동하지 않는다.)[28] 다만 완성형에 없는 글자는 표시할 수 없었는지 일부 갤러리(주로 아햏햏과 관련된 갤러리)는 별도의 이미지 배너를 제작했다.[예시] [29] 뚫는 방법이 있었으나, 업데이트로 다시 차단되었다.[30] 돈을 아끼려는건지 하만의 유상기술지원이 아닌 더 이상 업데이트가 없는 구식 플래시다. 즉 웨일과 달리 더 이상의 보안 패치가 없다.[31] 물론 Windows 11에는 Internet Explorer가 없으므로, Pale Moon 같은 플래시 지원 브라우저를 설치해야 한다.[32] 어도비가 허위로 DMCA를 제출했다는 의견도 있다. #[33] NTVDMx64 개발자와 동일인이다.[34] 키오스크 같은 터치스크린은 원 또는 사각형 표시가 나올 때 까지 길게 눌러야 확인이 가능하다.[35] 모질라 퍼블릭 라이센스다. 4.8 버전부터는 관리도 아파치 소프트웨어 재단이 한다.[36] 로컬 파일 접근, Native Extension 같은[37] 이 문제는 2024년이 될 때까지도 해결이 안 되고 있다.[38] 주문 및 무인 키오스크는 제외[39] 다만 Gnash는 현재 국철 지그 플래시를 거의 완벽하게 재생할 수 있으며, 유튜브 동영상 재생은 많이 버벅대긴 해도 어느 정도 희망이 있는 편.[40] 플래시로 제작하여 플래시 플레이어가 작동되는 별도의 새 창이 열리는 형태이고, 노래와 함께 노래 가사와 그 가사와 관련된 여러 화면들이 나오면서 재생되었다.[41] 2003년 초반까지는 주로 쇼크웨이브 플레이어가 사용되었다가 그 해 중반부터 플래시 플레이어가 주로 사용되는 형태로 바뀌게 되었다.[42] 더구나 상당히 느리고 영어로 된 문구를 여러 번 읽고 클릭해야 하는 설치 과정을 거쳐야 하는 쇼크웨이브 플레이어와는 다르게 플래시 플레이어는 콘텐츠 접속 후 설치 버튼 클릭 뿐만 아니라 개발사의 설치 페이지에서도 단 몇 번의 클릭 만으로 쉽게 설치할 수 있다는 장점까지 있었다.[43] 키오스크 같은 터치스크린은 원 또는 사각형 표시가 나올 떼 까지 길게 눌러야 한다.[44] 어도비 인수 이전(2005년)까지[45] 어도비 인수 이후(2005년 후반)부터[46] AS3 이후로는 플래시로 프로그래밍을 하는 것 자체에 대한 진입장벽이 너무 높았졌기 때문에 초등학생들이나 취미로 배우는 경우 보통 AS2 기반으로 된 그 당시에도 구식인 도구를 이용하여 배우는 경우가 많았다.[47] Thoughts on Flash - Apple[48] 플래시의 원래 개발사인 매크로미디어는 애플과 사이가 좋은 편이었다.[49] MacBook에서 플래시가 포함된 페이지를 접속하면 팬이 미친 듯이 돌아가는 소리를 들을 수도 있다.