enchant.js와 tmlib.js를 사용한 게임 제작 프레임 워크 "enforce"WorldView 정보

WorldView 정보



enforce에서 게임을 만드는 경우 화면 크기는 'environ.coffee'에서 설정한 크기입니다.
이 크기 이외에는 스프라이트를 그릴 수 없습니다 (생성할 수는 있지만 표시되지 않습니다).
그러나 "WorldView"를 사용하면 더 넓은 영역을 "environ.coffee"로 설정한 크기의 창에서 들여다 보는 형태로 만들 수 있습니다.

예를 들어 'environ.coffee'에서 '480x800'으로 화면 크기를 지정한 게임이 있다고 가정합니다.
이 경우 기본적으로 WorldView는 "(240, 400)"입니다.
거기서, 게임의 가상 에리어로서 「1080x1920」이라고 가정하면 아래 그림과 같이 되어 있게 됩니다.



게임 전체 영역의 왼쪽 상단에 진한 회색 부분 "480x800"이 표시됩니다.
WorldView의 기능은 "화면의 중심을 가상 영역의 어떤 좌표로 만들 것인지"를 지정합니다.
이 경우 가상 영역의 "1080x1920"영역은 시스템 측에서 유지하지 않으므로 게임 측에서 처리해야합니다.
그러나 이대로는 화면 밖(480x800 밖)에 객체를 생성해도 화면에 표시되지 않습니다.
여기서 객체를 생성할 때 옵션,
    worldview: true

를 지정하면 지정한 좌표는 화면상의 '480x800'에 대한 좌표가 아니라 WorldView의 좌표가 됩니다.
WorldView가 (240, 400) 그대로 있으면 좌표 값 (100, 100)으로 생성 된 객체가 화면의 (100, 100) 위치에 표시됩니다.
그러나 여기서 "setWorldView(290, 450)"를 실행하면 좌표값(100, 100)에 생성한 객체가 화면상에서는 (50, 50)의 위치에 표시됩니다.



「setWorldView(cx, cy)」는 화면의 중심으로 설정하는 WorldView에서의 좌표를 지정합니다.
인수 "cx, cy"는 화면의 중심을 가상 영역의 어디가 되는지를 지정합니다.
또한, 표시된 객체를 이동하지 않고 WorldView의 값을 변경하면 객체의 표시 위치가 WorldView의 값에 따라 달라집니다.
게임 등에서 WorldView를 자기의 x좌표, y좌표로 고정하면 랠리X나 보스코니언 같은 게임 영역 전체를 창문에서 들여다보는 게임이 됩니다.

enforce 자습서 목록

좋은 웹페이지 즐겨찾기