일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- SSM
- Google App Engine
- 빅데이터
- Neural Network
- 파이썬
- 삼성전자 소프트웨어멤버십 SSM
- 물걸레로봇청소기추천
- 동아리
- BAM
- NarwalFreo
- 가상화
- 증강현실
- 패턴 인식
- 구글 앱 엔진
- 삼성
- 고려대학교
- 삼성소프트웨어멤버십
- Friendship
- 멤버십
- Bidirectional Associative Memory
- 물걸레자동세척로봇청소기
- Python
- 신경회로망
- 하이퍼바이저
- hopfield network
- 갤럭시탭S8울트라
- 나르왈프레오
- 신경망
- 인공지능
- 패턴인식
- Today
- Total
정보공간_1
[5기 강북 강현호] HTML5 게임 프레임워크 LimeJS Introduction 본문
[5기 강북 강현호] HTML5 게임 프레임워크 LimeJS Introduction
알 수 없는 사용자 2014. 5. 2. 23:41HTML5 는 미래형 융복합 서비스를 위한 핵심적 웹표준기술 이며, 앞으로 급격히 성장할 것으로 기대되는 IoT, 웨어러블 기기 등의 핵심 기반 기술입니다. 디바이스의 성능이 향상되면서 점점더 각광받고 있고, 차세대 운영체제 중 하나로 손꼽히는 타이젠 OS 에서도 HTML5 기반의 어플리케이션을 OS 단에서 지원하고 있습니다. HTML5 의 가장 큰 장점은 아마 '호환성' 일겁니다. 수없이 많은 디바이스가 양산되고 있는 현재 하나의 어플리케이션으로 어떤 디바이스에서도 동일한 화면과 기능을 사용할 수 있다는 점은, 생산성이나 사용자 편의성에 있어서 정말 큰 장점이 아닐 수 없습니다.
이런 장점 때문에 HTML5 기반의 프레임 워크들도 많이 제작되고 있습니다. 제가 오늘 소개해 드릴 프레임 워크는 HTML5 기반 게임 프레임 워크입니다. 누가 뭐라해도 게임은 소프트웨어와 컴퓨터 산업 발전에 가장 큰 기여를 한 컨텐츠 중 하나일 겁니다. 게임개발 과정을 통해 HTML5 기술도 많이 발전하지 않을까 하는 생각이 듭니다.
HTML5 기반 프레임 워크는 엄청나게 많습니다. 그냥 google에 검색만 해봐도 수십개의 HTML5 기반 프레임 워크를 찾을 수 있습니다. 그 중 저는 LimeJS 를 소개하고자 합니다. 여러 HTML5 기반 프레임 워크를 사용해 봤지만 사용성이나 성능면에서 가장 문안한 프레임 워크가 아닌가 생각되서 입니다.
이론을 공부하고, LimeJS의 프레임 워크를 분석하는 것도 의미가 있겠지만 이 프레임 워크를 써보는게 우선이라 생각됩니다. 그래서 오늘은, LimeJS 를 설치하고, Helloworld 를 찍어 보기로 하겠습니다.
편의를 위해 설치과정은 반말로 진행하겠습니다.
LimeJS is a HTML5 game framework for building fast, native-experience games for all modern touchscreens and desktop browsers.
LimeJS 를 설치하기 전에 환경을 구축해 보자.
설치를 위해서는 Python, git, subversion 이 필요하다.
<Download>
먼저 python 을 다운 받는다.
www.python.org
그다음 Git
그다음 subversion
subversion 은 binary package 의 visual svn 을 받으면 된다.
다운은 끝났고, 이제 설치만 하면 된다.
<Installation>
git 부터 설치한다.
특별한 사항은 없고 LimeJS init 을 윈도우즈 CMD 창에서 실행시킬 것이므로 인스톨 시 git 이 command prompt 에서 동작할 수 있도록 setting 해 줘야 한다.
그 다음, python 설치, python 은 귀찮게도 환경설정을 해줘야 한다. 설치 후, 환경설정에 들어가서 설치한 경로를 시스템 변수의 Path 에 추가해 주자.
그 다음, subversion 설치 python 과 같이 환경설정을 해줘야 한다. 설치후, cmd 창에서 svn 을 쳐보자 "Type 'svn help' for usage. " 라는 문구가 출력되면 설치 성공
Python 도 마찬가지로 설치와 환경변수 설정이 잘 되었는지 확인해 보기 위해 CMD 창에 python 이라고 쳐보자 Python 이 실행되면 성공.
이제 환경은 갖춰 졌으니, LimeJS 를 설치해 보자.
다운을 받고, 원하는 위치에 압축을 푼 뒤, 폴더의 이름을 limejs로 바꾸자, 별다른 이유는 없다. 깔끔하니까.
cd limejs 명령어로 limejs 폴더로 진입, bin 폴더의 lime.py 파일을 init 옵션을 줘서 실행시킨다. 이작업을 통해 box2d, closure 등 limejs 가 사용하는 컴포넌트 들을 다운받고, 초기 설정을 진행한다.
이제, 설정은 끝났고 hello world 를 찍어보자. init 했을 때와 마찬가지로, bin\lime.py 파일을 실행 시키는데 이번에는 create 옵션을 실행시킨다. lime.py create hello 라고 하면, hello 라는 프로젝트를 생성하라는 명령어 이다.
hello 폴더가 생성된 것을 확인 할 수 있다.
폴더 안의 hello.html 파일을 실행시키면, 다음과 같은 화면을 확인할 수 있다.
<Compile>
Javascript 의 크기는 웹앱의 성능을 결정하는 중요한 요소다. javascript의 양이 많을 수록, 웹앱의 초기 로드 속도가 느려진다 때문에 대부분의 상용 웹사이트 들이 javascript compress 를 통해 자바스크립트의 양을 최소화 하여 사용하고 있다. limejs 는 고맙게도 자체적으로 이기능을 포함하고 있다.
위에서 언급한 성능적 이슈 말고도, limejs 는 배포시, 반드시 컴파일을 해야 하는데, google 의 closure 라이브러리를 활용하기 때문에 컴파일 없이는 closure 환경이 동일하게 구축되어 있지 않은 타 환경에서 구동 시킬 수 없기 때문이다.
그럼 limejs Compile 을 해보자.
먼저 리소스 즉, .js 파일이나 이미지 파일이 추가 되었다면 update 명령을 통해 limejs 에 프로젝트의 상태가 변경 되었음을 알려 줘야 한다.
bin\lime.py update 명령을 수행한다.
그 다음 bin\lime.py build hello -o gear_pet\compiled\hello.js 명령을 수행해서 compiled 된, 소스를 생성한다.
컴파일이 완료되면, html의 closure 관련 include 를 주석 처리하고, compiled 된 소스를 include 해준다.
이제 compiled 된 js 파일만 있으면 어떤 웹 환경에서든 limejs 로 구현한 프로젝트를 구동 시킬 수 있다.
수고하셨습니다!!!
'IT 놀이터 > Elite Member Tech & Talk' 카테고리의 다른 글
[5기 수원 정영진] NAND 플래시 메모리 (0) | 2014.05.30 |
---|---|
[5기 강남 김영현] PE File Format #1 (0) | 2014.05.09 |
[5기 부산 정우진] 자바 제네릭 이야기 (0) | 2014.04.24 |
[5기 부산 정우진] 람다표현식(Lambda Expressions)과 클로저(Closure) (0) | 2014.04.24 |
[4기 신촌 박영웅] App? Accessory? Appcessory! (2) | 2014.01.14 |