Roll It: 브라우저 기반 크로스 디바이스 게임 구현 사례
Source
Evernote/Technical News/A classic boardwalk game rolls from your phone to your computer—using only your browser.md
Summary
구글 크롬 팀이 개발한 ‘Roll It’은 스마트폰과 컴퓨터를 연결하여 물리적 동작(스윙)을 게임으로 변환하는 웹 기반 크로스 디바이스 게임입니다. 별도의 전용 하드웨어 없이 웹 브라우저만으로 구현되었으며, 주요 기술 스택은 다음과 같습니다: 1) 스마트폰 측: DeviceOrientation/DeviceMotion API를 통해 가속도 및 방향 감지, 2) 컴퓨터 측: Three.js 및 Physijs를 활용한 3D 렌더링 및 물리 엔진 적용, 3) 동기화: WebSockets을 통한 양방향 실시간 통신, 4) 백엔드: Google Cloud Platform(GAE, GCE, GCS)을 활용한 서버 관리 및 상태 유지.
Key Points
웹 브라우저만으로 스마트폰과 컴퓨터를 연결하는 물리적 인터랙션 게임 구현
스마트폰의 가속도계/자이로스코프 데이터(DeviceOrientation, DeviceMotion)를 게임 입력으로 사용
Three.js와 Physijs를 활용한 웹 기반 3D 그래픽 및 물리 시뮬레이션
WebSockets을 통한 실시간 양방향 데이터 동기화
Google Cloud Platform(GAE, GCE, GCS) 기반의 확장 가능한 백엔드 아키텍처
Roll It 생성 사례 연구
Google Open Project: Android 앱 및 터치 입력 거치기
크롬 컨퍼런스 핵심 요약 (Web Components, DevTools, Chrome Apps)
HTML5 모바일 앱의 해부학 (Anatomy of a HTML5 Mobile App)
모바일 브라우저 탭 전환: Swipe vs. Scroll
O 2013 실험 사례 연구
Synchronized Cross-device Mobile Testing
구글 글라스는 왜 게임체인저인가? (VentureSquare)
구글, 압력제어 방식 스마트폰 특허 출원
Cube Slam: WebRTC 기반 실시간 브라우저 게임
Chrome DevTools 모바일 스크린캐스트 및 에뮬레이션
크로스 플랫폼 SSO 기술 (Cross-Platform SSO)
GitHub의 jQuery 제거 사례
2012년 1,2월 브라우저 기술 동향
LungoJS: HTML5 기반 모바일 프레임워크
하복(Havok), 모바일 게임 엔진 ‘프로젝트 아나키’ 무료 배포
Typeform: 크로스 디바이스 설문조사 플랫폼
GlassBattle: Google Glass 기반 배틀십 게임
IT서비스 빅3의 하이브리드 웹앱 전략
HTML5 기반 프리젠테이션 도구 소개
Play Framework 2.2 기반 Facebook Canvas 게임 개발 일지
오페라, 웹킷 기반 브라우저 ‘오페라아이스’ 개발 배경 및 의미
Puppeteer를 활용한 로컬 개발 서버 대체 방안 (web.dev 사례)
Android Path 2.0 Timeline Thumb 구현
eBay 의 WebAssembly 활용 사례: 모바일 웹 바코드 스캐너
실시간 웹 협업도구 만들기 (홍영택)
모바일 게임 크랙 대응: 서버 로그분석의 중요성
모바일웹 Device API 표준화 동향 (2009-2011)
모바일 웹 개발을 위한 화면 크기 측정 속성 분석
언리쉬드 (Unleashed) - 모바일 전략 카드배틀 게임
모바일 게임의 미래 (2013)
Undead Overlord 모바일 RTS 개발 논의 (Experimental Game Dev Podcast)
Countly: 실시간 모바일 앱 분석 도구
모바일 웹의 문제점과 해결 방안 (Brad Frost)
모바일 웹의 쇠퇴에 대한 논의
동방 프로젝트 기반 3D 게임 개발 중간 보고
스크롤 후 고정 콘텐츠 (Scroll-Then-Fix Content)
Buddy.com, 모바일 분석 서비스 진출
MammothHunting - Cocos2D 아이폰 게임 개발 튜토리얼 1
폐쇄적인 모바일 혁명과 열린 웹의 종말
모바일 콘텐츠 서비스와 콘텐츠 유료화 전략
멀티 액션 게임 소개
2012 년 HTML5 모바일 개발 현황 및 디바이스 API
모바일 앱 사용자 기대치 및 성능 요구사항
웹 vs 앱: 앱의 우위와 웹 플랫폼의 지각 변동
Ingress 게임 설명용 신규 비디오 공개
스마트폰 브라우저에서 즐겨찾기 스크립트를 이용한 해외 사이트 번역
브라우저 동작의 이해 - 리플로우와 리페인트 및 그 최적화
Sauce Labs: 크로스 브라우징 테스트 서비스
HTML5 게임 오프라인 지원 가이드
ITViewpoint.com: 30분 만에 캔디팡 만들기 영상 소개
좀비 아포칼립스 시대의 TED 강연 (DED Talk)
배틀팡팡 (Battle Pang Pang)
HTML5: 기대와 실망 사이, 브라우저 중심의 새로운 플랫폼 경쟁
PPK의 브라우저 기능 개발 중단 제안에 대한 Opera의 반박
Model-driven Game Development: A Literature Review
PC 게임 실행 가능 여부 확인 방법
게임 개발팀 A의 정기 회의 매뉴얼
TestFairy: Android 앱 베타 테스트 플랫폼
웹앱(Web App) vs 네이티브 앱(Native App): 모바일 UX 관점에서의 비교 분석
소전 (Girls’ Frontline) 일러스트레이터 및 작품 목록 정리
운영체제의 중요성 감소 (Operating Systems Don’t Matter Much Anymore)
Fluid를 사용하여 웹사이트를 맥 메뉴 바 앱으로 변환하기
게임 아이템 구매 이력에 word2vec 적용 사례
“앱의 시대”는 끝났다
시스코-구글, HTML5 코덱 표준화 무산
Web Audio API의 Android Chrome Beta 지원 (2013)
Chromecast 에서 Game Boy 에뮬레이터 실행 방법 (개념 증명)
HTML5 Web App Client-Side Storage 옵션 및 팁
동방화귀전 제작 과정(2): 개발 회고 및 팀원 협업
동방화귀전 제작 과정 (3) - 최종 마스터 및 발매
모든 웹 프로젝트는 PWA여야 한다
Scrapy 로 웹사이트 크롤링 해보기
2017 웹 개발 트렌드: PWA, 프레임워크 안정화, GraphQL, AI
The Once And Future Web Platform
오프라인 웹 애플리케이션 만들기 (Mozilla 웹 기술 블로그)
Web Speech API 소개 및 구현 가이드
웹 플랫폼의 진보와 복잡성에 대한 Jake Archibald 의 관점
LG 웹OS의 다중 디바이스 확장 전략 및 플랫폼 아키텍처
오페라 합계 초과
It’s Almost Time To Throw Out Your Books
때로는 아날로그가 디지털보다 강력하다
5 jQuery Notification Plugins
웹 플랫폼의 지속적 우위와 진화
2015년 3월 1일 웹개발 및 IT 기술 뉴스 요약
Duolingo Android 앱 출시 및 사용자 기반 확대 전망
Assemble: Handlebars 기반 정적 사이트 생성 도구
신규 웹 서비스 뒷조사 방법론 및 urigit.com 사례 분석
Web Apps vs Native Apps: The Blurring Line
React vs Vue: 동일 앱 구현을 통한 차이점 비교 (번역)
Chrome M37 Precision Touch (TouchEvents Float Coordinates)
Hiding Native HTML5 Video Controls in Full-Screen Mode
브라우저 개발자 도구의 25 가지 비법 (2011)
W3C 웹 및 브로드캐스팅 제3차 대면 회의 개요
WebNode의 제한 사항
WebKit의 웹표준 구현 현황 (2011)
크롬 개발자 도구 101
Google, Web Components 를 웹 개발의 미래로 제시 (2013)
Gittip-links Chrome Extension 개발 기록
Fluent 2016: Node.js 기반 하이퍼미디어 마이크로서비스 구현 튜토리얼
온라인 게임 보안: 봇 탐지를 위한 IT 기술의 재발견
NDC2017: VAE를 이용한 게임 콘텐츠 생성 기법 연구 사례
Requirify: 브라우저 콘솔에서 동적 라이브러리 로딩
Ajax 10주년과 웹 기술의 진화
Google Portable Native Client (PNaCl)
CSS 최신 동향 파악을 위한 Adobe Web Platform 블로그
B 테스트 플랫폼화
웹 기반 실시간 통신 보안 (WebRTC)
웹 브라우저 동작 원리 (2) - 레이아웃 리플로우 최적화
HTML5 의 역사: W3C 와 WHATWG 의 분열과 XHTML 의 실패
HTML5 Video Player Comparison (2011)
웹 컴포넌트(1): Keep calm and usetheplatform
브라우저 간 P2P 연결 (WebRTC)
웹 증강을 위한 엔드유저 언어: 생산자와 소비자 모두를 위한 접근
모질라 CTO, W3C의 HTML5 DRM 허용안 비판
SCR Screen Recorder for Android
CyanogenMod AirPlay 미러링 데모
Google Drive 활용을 위한 6가지 Chrome 확장 프로그램
‘그래도 우리는 스마트폰 게임을 만든다’ 책 출간 소식
DTS 코덱 지원 중단 배경
엔씨소프트: 공개SW 기반 GFIS를 통한 게임 부정행위 탐지
웹 기반 연산 오프로딩 및 상태 시리얼라이제이션 연구 동향
JavaScript 기반 분산 컴퓨팅 고려사항
Google Drive 출시 시 변화 회피 심리 최소화 사례 연구
Yeoman: 도구를 활용한 더 나은 웹 개발
jQuery 애플리케이션 아키텍처 도구 (Addy Osmani)
곽철용 짤 생성기 개발 후기 (Vue + HTML Canvas)
Web Push Notifications for a Simple Login System
Web Fundamentals 및 Web Starter Kit 리소스
The Web Ahead: Jen Simmons 인터뷰 요약