Rev. 2.73


마우스 왼쪽 버튼을 클릭하면 작은 사각형 물체를 생성하며, 오른쪽 버튼을 클릭하면 화면을 초기화 합니다.

Robert Kieffer씨는 Box2D 물리엔진(Physics Engine) 라이브러리를 자바스크립트(Canvas 엘리먼트 사용)로 포팅한 Box2DJS를 공개하고 위와 같은 랜더링 결과물을 만들어 냈습니다. Box2D는 객체의 접촉과 마찰을 매우 사실적으로 표현하고, 프로그래머들이 애니메이션, 게임 등에 적용하여 보다 사실적인 화면을 연출할 수 있게하는 놀라운 시뮬레이션 라이브러리입니다. Box2DJS는 플래시 액션스크립트에서 사용되기 위해 만들어진 Box2DFlashAS3(1.4.3.1)를 변환한 것이라고 하네요. 따라서 API 문서역시 Box2DFlashAS3의 것과 동일한데요. 이 라이브러리를 써먹기 위해서는 world, shape, density, contact, friction, joint 등에 대한 용어 이해가 필요합니다. 약 60여개의 자바스크립트 파일들로 구성되어 있으며, PrototypeExplorerCanvas 라이브러리를 필요로 하는데, 그 이유는 Prototype이 상속 성능이 뛰어나기 때문이고 ExplorerCanvas는 IE에서도 Canvas 엘리먼트를 사용할 수 있게 해 주기 때문이랍디다.

표현의 수단으로 Canvas 엘리먼트가 사용된 것 뿐입니다. 굳이 Canvas 엘리먼트에만 Box2dJS를 사용할 수 있는 것은 아닙니다. CPU 부하로 인한 프레임 저하 현상은 시급히 해결해야 할 과제로 보이지만, 자바스크립트로 할 수 있는 재미있는 장난감이 또 하나 늘었네요. 물리법칙이 적용되는 게임도 쉽사리 만들어낼 수 있겠습니다.

CHANGELOG

  • 구글크롬 브라우저에서 더욱 원활한 렌더링 성능을 체험할 수 있습니다.
  • 프레임 처리 회수에 따라 드로잉 구간이 결정됩니다.(프레임 스킵)
  • 프레임이 낮은 경우 객체간 접촉을 감지하지 못하는 것을 보정합니다.
  • 객체 크기에 비례하는 밀도(무게)를 가집니다.
  • 프레임 처리 성능에 따라서 책정된 시간 간격으로 임의로 객체를 생성합니다.
  • 시간이 지날수록 FPS가 떨어지는 현상을 수정하였습니다.(객체 자동 제거)
  • 이 화면을 보고있지 않은 경우 작동을 일시 중지합니다.
  • 빈번한 호출이 발생하는 클래스에 네이티브 코드를 사용하여 엔진의 성능이 향상되었습니다.
  • IE계열 브라우저에서는 실버라잇가 설치된 경우 ExplorerCanvas 실버라잇 브릿지를 사용합니다.
  • IE8을 지원하는 ExplorerCanvas(r3 버전)를 사용합니다.

Comments

earthonchrome.png

드디어 구글어스 브라우저 플러그인맥 플랫폼 지원에 이어서 구글크롬 브라우저를 공식으로 지원하기 시작합니다. 자세한 업데이트 내역은 릴리즈 노트를 참고하세요. 구글어스 자바스크립트 API를 이용해서 몇몇 예제들을 만들어 보았는데, 가장 즐겨 사용하는 구글크롬 브라우저에서 작동하지 않는다는 사실을 알고 살짝 실망하려던 찰나에 요런 반가운 업데이트 소식이 전해지네요.

구글이 하는 짓들은 참 예쁩니다.

Comments

지난 16일, 알서포트라는 회사에 입사하였습니다. 이 회사는 매우 훌륭한 리모트 컨트롤 기술을 보유하고 그 기술을 바탕으로 한 여러 제품들을 세계적으로 공급하는 회사입니다. 사실, 게임 개발사에서 UI를 만드는 꿈이 실현되는 것을 코앞에 두고 있었습니다만, 결국 웹UI를 다시 시작하는 것으로 결론지었습니다. 송충이는 솔잎을 먹어야죠. 저를 게임회사에 집어넣기 위해 여러모로 신경써 주신 쫑맹형한테는 너무 미안하게 되어버렸어요.

어찌됐건 활주로는 마련되었으니 또 한번 달려보렵니다. ㄱㄱㄱ

Comments