NPAPI 퇴출
 2013년, 구글은 NPAPI 차단과 퇴출을 발표했습니다. NPAPI는 유니티 웹플레이어가 웹 상에서 최상의 컨텐츠 경험을 실현하게 하기 위해서 신뢰해오던 플러그인 프레임워크입니다. 현재는 크롬 브라우저에서 NPAPI 지원 활성화를 되돌릴 수 있는 옵션이 제공이 되고는 있지만, 구글은 2015년 9월 크롬에서 NPAPI 지원을 완전히 제거할 계획입니다. 게다가 다른 브라우저들에서도 NPAPI 플러그인 퇴출은 그 시기가 명확하지 않을 뿐, 결국엔 이뤄지게 될 것입니다.

 이 발표에 따라서, 유니티에서는 웹 게임을 위한 대안을 찾기 위해서 연구했고, WebGL로의 이동을 결정했습니다. 이것은 GDC 2014에서 내용을 발표했고, WebGL preview 빌드타겟이 Unity5에 포함된 상태이며 지금 사용할 수 있습니다. 더 자세한 내용은 다음 링크를 참조하세요.


 WebGL
 아마도 단순히 WebGL로 게임을 만드는 것이 가장 확실한 솔루션일 것입니다. 이 WebGL 솔루션이 나중에는 가장 훌륭한 것이 될 것이며, 현재 개발팀에서는 브라우저 제작사들과 함께 WebGL 기반작업을 열심히 진행 중이지만,  WebGL 베이스 기술은 여전히 유니티 웹플레이어와 비교했을 때에 그 한계를 가지고 있습니다. 퍼포먼스 차이도 그 중 하나에 해당되며, 이를 줄이기 위해 현재 작업을 하고 있습니다. 하지만 그럼에도 불구하고 다른 브라우저들 간의 성능이 제각각 다르기 때문에 이 퍼포먼스 이슈는 더욱 복잡한 상황입니다.  WebGL 퍼포먼스에 대한 자세한 내용은 예전에 포스팅된 아래의 링크를 참조하시기 바랍니다.

 WebGL은 현재 상태에서는 "가벼운" 웹게임과 앱에서는 아주 적합합니다. 하지만 그렇다고 단순히 웹플레이어의 게임을 옮겨오는 측면에서 봤을 때 이 작업이 완벽하게 모든 것이 잘 이뤄질 것이라고 보기는 어렵습니다. 뿐만 아니라 고성능을 요구하는 무거운 게임들은 앞서 언급한 퍼포먼스 차이, 네트워킹 같은 다른 플랫폼의 제한 그리고 빌드사이즈, 브라우저측 메모리 제약 같은 확장성 이슈 등 때문에 잘 맞지 않을 것입니다. 불행하게도 아직 유니티측과 브라우저측에서 여전히 개발 중에 있기 때문에, 완성된 풀 릴리스(full release)가 나오기 전에는 이런 내용에 대해서 프리미엄 서포트 등을 통해서 서포트가 가능하지 않을 것입니다.

 WebGL 이슈를 논의할 수 있는 가장 좋은 곳은 개발자들에 의해서 활성화되어 있는 포럼입니다.      (http://forum.unity3d.com/forums/webgl.84/)


 Unity Web Player
 현재 웹플레이어는 고성능이 필요한 무거운 게임들에게는 여전히 최고의 선택이 될 것입니다. 이것을 감안할 때, 웹플레이어가 개발자를 위해  유용하게 쓰이는 동안은 웹플레이어 지원을 이어갈 것입니다.
 크롬을 제외한 다른 브라우저에서는 웹플레이어가 여전히 훌륭하게 동작한다는 사실을 염두해야 합니다.


 웹플레이어가 필요한 게임들은 어떻게 해야 하는가
 지금 게임이 웹플레이어를 통해 적절히 실행되길 원한다면, 아래와 같이 몇 가지 제안을 줄  수 있습니다.

 옵션 A: 플러그인을 아직 사용할 수 있는 브라우저로 대체하도록 유저에게 권장하세요. 플러그인이 제대로 실행되지 않을 때 해당 상황에 대해 유저에게 알려주고, 게임이 아직 잘 동작할 수 있는 브라우저의 리스트를 유저에게 보여주도록 합니다. 

 옵션 B: 현재 크롬에서 플러그인 기능을 어떻게 허용할 수 있는 지에 대해서 아래의 방법을 알려주세요. (NPAPI는 9월에 완전히 퇴출됩니다. 이 때부터는 NPAPI 플러그인을 활성화할 수 있는 방법은 없습니다.) 

Step 1: 크롬의 주소창에서, chrome://flags/#enable-npapi 을 입력하세요.


Step 2: 리스트에서 “Enable NPAPI Mac, Windows” 를 찾아서, "Enable(사용)" 을 클릭하세요.

Step 3: 페이지 하단에서 “Relaunch Now(지금 다시 시작)” 버튼을 누르세요.


 새로운 게임을 개발한다면
 만약 새로운 웹게임을 제작하려고 하는 시점이라면, 기본(디폴트) 타겟으로 Unity5 WebGL을 두고 새 프로젝트를 시작할 것을 추천합니다. WebGL 게임은 웹플레이어 게임에 비해서는 기능과 성능적인 면에서 한계가 있습니다. 따라서 만약에 웹플레이어가 가진 성능적인 이점을  활용하여 추가적인 기능을 넣길 원한다면, 나중에 웹플레이어로 게임을 포팅하면 됩니다. 이 방법을 선택하게 된다면, 게이머들은 모질라 파이어폭스, 구글 크롬, 애플 사파리 9.x 상에서는 WebGL 게임을 할 수 있을 것이고, 마이크로소프트 인터넷 익스플로러, 얀덱스 브라우저 등의 웹 상에는 웹플레이어로 게임을 할 수 있을 것입니다.

 구글이 크롬에서 NPAPI 지원을 완전히 제거한 것과 마찬가지로, 다른 브라우저들도 이와 같은 절차를 밟을 수 있다는 것을 인지하고 있어야 합니다. 이런 이유로,  웹플레이어로써 새 프로젝트를 시작하는 것은 추천하기가 매우 어렵습니다.


 결국 요점은...
 앞으로 WebGL은 매우 놀라운 솔루션이 될 것입니다. 사용자 측면에서 보면 어떠한 플러그인이라는 장벽이 없기 때문에 웹플레이어에 비해서 더 나을 것입니다. 하지만 아직은 유니티 웹플레이어만큼의 성능을 발휘할 수 없고, NPAPI 퇴출에 대응할 혁신적인 대안 역시 없는 것이 현실입니다. 유니티 팀에서는 이러한 거친 변화에 대해 충분히 공감하며 사용자들이 느끼는 고통을 느끼고 있습니다. 모든 브라우저 상에서 웹플레이어가 제대로 기능하도록 하고 싶지만, 불행하게도 궁극적인 결정은 유니티에서 할 수 있는 몫이 아닙니다. 당분간은 개발자가 게임을 웹에서 잘 실행되게끔 유지해야 한다면, 웹플레이어를 사용할 필요가 있으며, 유저가 다른 브라우저에서 게임을 즐길 수 있도록 안내해 줘야 할 것입니다.

 그리고 유니티에서는 앞으로  WebGL 플랫폼과 우리 WebGL 툴을 더욱 강력하게 만들기 위해서 브라우저 제작사들과 협력을 유지해갈 것입니다. 


더욱 자세한 내용은 유니티 공식 홈페이지 블로그 원문을 참조하시기 바랍니다. 
감사합니다.




Posted by 흑 기사
,