지난 9월에 소셜게임 업체 Zynga가 독일의 HTML5기반 게임개발툴 회사인 Dextrose를 인수했습니다.
Dextrose의 소셜 게임 개발 플랫폼 'Aves' 엔진은 plugin기술을 없이도 HTML5기술을 이용하여 웹 브라우저에서 동적인 게임을 개발할 수 있는 게임엔진입니다. 즉, HTML, CSS, JavaScript등을 이용해서 게임을 개발 할 수 있도록 도와주는 일종의 SDK라고 보시면 됩니다.
HTML5기반이기 때문에 일반 PC뿐만 아니라 HTML5를 지원(iPhone safari, chrome browser, mozilla의 fennec, opera등)하는 여러 모바일 디바이스에서 구동이 가능하다는 점이 아주 큰 장점입니다. HTML5기반의 게임들에 대해서는 제 이전 포스팅을 참고하세요(2010/10/09 - [Next WEB/HTML5] - HTML5 기반의 게임들)
3D 게임인 quake2도 가능합니다만, 이 게임이 WebGL기술을 이용하고 있어서 W3C HTML5범주에 포함되지는 않지만, html5test에서도 WebGL을 html5의 한 요소로 테스트하고 있고, 크로노스그룹에서 w3c에 WebGL을 표준으로 넣으려고 하고 있고, Webkit 기반 브라우저, 모질라 등에서 지원을 하거나 할 계획이어서 포함시켰습니다.
HTML 5로도 게임을 좀더 쉽게 만들 수 있는 시대입니다. WebGL 기술이 대중화되면 더 다양한 형태의 게임들이 등장할 것입니다. 굳이 웹에서 플래시 기반의 게임을 만들지 않아도 되는 시대가 오고 있습니다. 저는 웹 개발자는 아니지만, 웹 개발자 분들에게 좋은 세상이 열리겠네요.
HTML5는 현재 여러 브라우저들에서 일부 적용이 되어 있습니다. 따라서 이를 이용한 여러 데모들이 많이 나오고 있는데 '와~~' 할만한 데모들도 꽤 있습니다. 물론 Flash를 이용하면 쉽게 가능한 내용들일지 모르겠지만 플러그인 이용없이 오로지 HTML5와 JS, CSS를 써서 개발했다고 생각한다면 "와~" 할만합니다.
애플과 어도비 플래시 이슈, 구글의 전폭적인 지지등으로 관심을 받고 있는 HTML5에 대해서 간단하게 정리한 문서입니다. 저도 지금 HTML5에 대해서 보고 있는 중이라서 정리가 잘 안 되지만 앞으로 계속 조금씩 정리해갈 생각입니다.
HTML5의 시작은 W3C와는 다른 조직체였던 WHATWG(Web Hypertext Application Technology Working Group)으로 볼수 있습니다. WHATWG는 HTML의 개발 및 관련기술에 관심을 가지고 있던 Apple, Mozilla, Opera가 주축이 되어 2004년에 만들어진 조직체로 Web Applications 개발을 위한 HTML과 APIs등의 표준화에 초점을 맞추고 있었고, WHATWG를 통해서 만들어진 결과물들은 2007년부터 슬슬 W3C에 채택되어 현재까지도 여러 Working group에서 표준화 작업을 진행중(Working Draft)입니다.
제가 보기에는 한마디로 HTML5는 Plugin없이 Rich Web Application을 지원하기 위한 것이 가장 큰 목적이라고 할 수 있습니다. 아래 HTML5의 범위에서 설명하겠지만, HTML5는 크게 HTML표준과 여러 API표준으로 나눠서 볼 수 있습니다.
새롭게 추가된 video/audio, cavas등의 대표적인 엘러먼트들외에도 WebForm, 그리고 Semantic과 관련된 element들이 있고, 새로 추가된 API로는 device관련, offline관련, storage관련등이 추가되었습니다.
이런 여러 새로운 표준들을 통해서 Rich Web Application을 개발할 수 있게 되는 데, Adobe의 Flash나 MS의 Siverlight, SUN(IBM?)의 JavaFX등의 여러 기술들이 HTML5로도 가능하게 됩니다.
HTML5라고 해서 기존 개발 방식과 크게 달라지는 것은 없습니다. 개발 방식은 여전히 HTML + CSS + Java script(APIs)로 할수 있습니다.
HTML5의 범위
HTML5 표준의 범위에 대해서 정의한 문서는 아직 보질 못했습니다. 여러 보는 시각에 따라서 HTML5의 범위가 달라질수 있습니다.[각주:1] 현재 일반적인 분위기는 HTML5와 여러 관련된 API 표준들을 묶어서 상당히 포괄적인 의미로 HTML5로 보는 경향이 있습니다. 이는 HTML5가 Rich
Web Application의 개발까지 가능하게 하는 것을 목적으로 한다라는 관점에서 보면 이해가 되기도 합니다만 굉장히 많은 관련 표준들이 있어서 혼란스럽기는 마찬가지입니다.
제가 보는 관점에 가장 간단한 방법은 WHATWG를 통해서 표준화된 내용들과 W3C에서 진행 중이거나 완료된 표준(e.g. SVG)들의 집합으로 보면 좋을 것 같습니다. 아래는 WHATWG를 통해서 표준화된 내용들입니다.
* 정말 간단하게 정리를 한다고 했는데도 엄청난 양의 내용들을 담고 있어서 상세 내용들은 다시 따로 정리를 해야 할 것 같네요. 보시면 아시겠지만, 이 정도의 내용이면 어플리케이션 개발도 가능합니다. (이미 iPhone등에서 HTML5등을 이용해서 어플리케이션을 개발하고 있는 사례가 많이 있습니다.)
예를 들어 html5test.com의 test항목중에는 W3C표준이 아닌 크로노스 그룹의 WebGL이라는 표준도 있습니다. [본문으로]