개인 재정 HTML5 게임에서 사용자 상호 작용을 만드는 방법 - 인형

HTML5 게임에서 사용자 상호 작용을 만드는 방법 - 인형

차례:

비디오: 액션스크립트3.0 교육 안내 및 강좌 소개 2024

비디오: 액션스크립트3.0 교육 안내 및 강좌 소개 2024
Anonim

HTML5 게임과 애니메이션의 가장 큰 차이점은 사용자 상호 작용입니다. 게임을 만들고 싶다면 사용자가 참여해야합니다. 그리고 그것을하는 방법이 있습니다.

여기에 코드가 있습니다:

자동차. html var 장면; var 자동차; 함수 init () {scene = new Scene (); car = new Sprite (장면, "car. ​​png", 50, 30); 차. setAngle (270); 차. setSpeed ​​(0); 장면. start ();} // 종료 init 함수 update () {scene. 명확한(); // (keysDown [K_LEFT]) { 자동차. changeAngleBy (-5); } // if (keysDown [K_RIGHT]) { 자동차. changeAngleBy (5); } // if (keysDown [K_UP]) { car. changeSpeedBy (1); } // if (keysDown [K_DOWN]) { 자동차. changeSpeedBy (-1); } // 끝낼 경우 자동차. update ();} // end update 자동차를 운전하십시오! . keysDown

는 전역 배열입니다.

이 변수는 장면을 만들 때 자동으로 생성됩니다. 부울 값의 배열입니다. 즉, 각 요소는 참이거나 거짓일 수 있습니다.

각 키마다 상수가 정의되어 있습니다.

  • 표준 키보드의 각 키에는 이미 정의 된 특수 상수가 있습니다. 예를 들어 K_A는 A 키를 나타내고 K_B는 B 키를 나타냅니다. keysDown 은 모든 키의 상태를 알려줍니다.

    A 키가 현재 눌러져있는 경우, keysDown [A]는 참 값을 포함합니다. A 키를 누르지 않으면 keysDown [A]에 false 값이 포함됩니다.
  • 키의 현재 상태를 확인할 수 있습니다.

  • 키의 현재 상태를 확인하려면 keysDown [] 배열을 확인하십시오. 한 번에 여러 개의 키를 사용할 수 있습니다. 이 기법의 주된 목적은 한 번에 여러 개의 키를 누를 수있게하는 것입니다. 일반적인 컴퓨팅에서는 한 번에 두 개 이상의 키를 가지는 것이 일반적입니다. 게임에서 한 번에 두 개 이상의 키를 누르는 것이 일반적이므로이 기대를 지원할 수있는 메커니즘이 필요합니다.

    게임 스프라이트 이동 방법
  • 기본적으로 스프라이트에는 X 및 Y 속성에 의해 제어되는 위치가 있습니다. 수학 수업에서 기억하면 X는 수평 값을 나타내고 Y는 수직 위치를 나타냅니다. 원점

  • (0, 0)은 화면의 왼쪽 상단 모서리입니다. X 좌표는 수학 수업에서 기억하는 것처럼 작동합니다. X 값이 커지면 스프라이트가 오른쪽으로 이동합니다. 컴퓨터 그래픽에서 Y는 수학 수업에서와 약간 다른 역할을합니다.대부분의 디스플레이 하드웨어는 위에서 아래로 스캔하므로 Y는 화면 상단에서 0이며 아래쪽으로 이동할 때 Y가 증가합니다.

최대 높이와 ​​너비는 변수: 장면에 저장된다는 점에 유의하십시오. 높이와 장면. 폭.

모든 다양한 이동 방법은 실제로 X 및 Y를 조작하는 것입니다. 이러한 값을 수동으로 설정하거나 (setPosition (), setX () 및 setY ()) 값을 변경할 수 있습니다 (changeXby (), changeYby ()). 이러한 각 메서드는 즉시 작동하므로 스프라이트의 위치 나 동작을 지시하는 데 사용할 수 있습니다. 이러한 기능 중 일부는 서로 비슷합니다. 예를 들어, changeXby ()는 setChangeX ()와 매우 비슷합니다. 이 함수는 미묘하지만 중요한 차이가 있습니다. changeXby () 함수는 X의 값을 한 번 변경합니다. 변경 사항을 계속하려면이 함수를 계속 호출해야합니다. setChangeX () 함수는 한 번 호출 할 수 있기 때문에 더 강력합니다. setChangeX ()를 다시 호출 할 때까지 사용자가 결정한 값으로 x를 반복적으로 변경합니다.

대부분의 스프라이트의 경우, 스프라이트에 각도와 속도를주고, 놓아두기 만하면됩니다. 스프라이트 객체에는이 동작에 필요한 메서드가 있습니다. setAngle ()을 사용하면 스프라이트의 방향을 결정할 수 있으며 setSpeed ​​()를 사용하면 해당 방향으로 이동할 속도를 지정할 수 있습니다. 대부분의 모션 함수와 마찬가지로 changeAngle () 및 changeSpeed ​​() 메서드도 있습니다.

게임에서 자동차를 제어하는 ​​방법

keysDown 메커니즘을 모션 메소드와 결합하여 자동차를 쉽게 제어 할 수 있습니다. 다음은 update ()의 관련 코드입니다.

function update () {scene. 명확한();

// (keysDown [K_LEFT]) {

자동차. changeAngleBy (-5);

} // if (keysDown [K_RIGHT]) {

자동차. changeAngleBy (5);

} // if (keysDown [K_UP]) { car. changeSpeedBy (1); } // if (keysDown [K_DOWN]) { 자동차. changeSpeedBy (-1); } // 끝낼 경우 자동차. update ();} // end update 실제 코딩은 이해하기 쉽습니다. 장면을 지우십시오. 평소와 같이 update () 함수의 첫 번째 비즈니스 순서는 놀이방을 정리하는 것입니다. 이전 작업을 수행하기 전에 이전 프레임을 지웠는지 확인하십시오. 왼쪽 화살표 키를 확인합니다. keysDown 도구를 사용하여 왼쪽 화살표가 현재 눌려져 있는지 판별하십시오. 왼쪽 화살표를 누른 경우 자동차를 왼쪽으로 돌립니다. 사용자가 현재 왼쪽 화살표 키를 누르면 차를 반 시계 방향으로 5도 돌립니다. changeAngleBy () 메서드를 사용하여 자동차의 시각적 모양과 이동 방향을 변경합니다. 오른쪽 화살표를 반복합니다. 오른쪽 화살표 확인도 비슷하지만 이번에는 시계 방향으로 5도 돌립니다.

가속하기 위해 위쪽 화살표를 사용하십시오.

  1. 사용자가 위쪽 화살표를 누르면 자동차의 속도를 변경합니다. 자동차 가속을 위해 양수 값을 사용하십시오. 이 코드는 초당 20 번 검사되기 때문에 많은 시간이 걸리지 않습니다.

    아래쪽 화살표로 차를 천천히 내리십시오.

  2. 아래쪽 화살표에도 이와 유사한 메커니즘을 사용하십시오.속도를 음의 값으로 변경하여 차를 감속시킵니다. 이 방법은 음의 값을 허용하며, 원할 경우 자동차가 백업합니다.

    새로운 위치에 차를 그립니다.

  3. 스프라이트의 모션 함수를 호출하면

    자동차의 위치가 변경되지 않는다는 것을 기억하는 것이 매우 중요합니다!

  4. 게임의 내부 데이터 만 변경합니다. 이러한 변경 사항을 확인하려면 car의 update () 메서드를 호출해야합니다.

HTML5 게임에서 사용자 상호 작용을 만드는 방법 - 인형

편집자의 선택

Photoshop CS6의 이미지에서 원하지 않는 요소를 제거하는 방법 - 더미

Photoshop CS6의 이미지에서 원하지 않는 요소를 제거하는 방법 - 더미

Adobe Photoshop Creative Suite 6에서 원하지 않는 요소 (이 경우 사람)를 이미지에서 완벽하게 제거하는 단계입니다.이 기술을 처음 시도 할 때는 원하는 요소에 연결되지 않은 요소가있는 이미지로 시작하십시오 이미지를 유지하십시오. 무언가가 포함 된 이미지를 엽니 다.

Photoshop CS6에서 선택 영역을 알파 채널로 저장하는 방법 - 더미

Photoshop CS6에서 선택 영역을 알파 채널로 저장하는 방법 - 더미

중 하나 Photoshop CS6의 알파 채널에 대한 가장 큰 장점은 이미지를 저장 한 다음 시간과 시간을 다시 검색 할 수 있다는 것입니다. 이렇게하면 선택 영역을 만드는 데 많은 시간과 노력이 쏟은 경우 특히 편리 할 수 ​​있습니다. 요소를 다시 선택하려면 휠을 다시 만들어야합니다 ...

Photoshop 이미지 - 인형

Photoshop 이미지 - 인형

암실에서 디지털로 이동하면 소음을 줄이는 방법 영화 및 가공 비용의 달러화 (가능한 환경 오염의 감소는 말할 것도 없음)를 제공하지만 사진 및 예술 사업에 새로운 도전 과제를 추가했습니다. 디지털 사진이 제시하는 문제 중 가장 중요한 것은 노이즈입니다. ...

편집자의 선택

Adobe Photoshop Elements에서 디지털 사진의 레이어 삭제하기 -

Adobe Photoshop Elements에서 디지털 사진의 레이어 삭제하기 -

디지털 사진이 보이면 해당 사진에서 레이어를 삭제할 수 있습니다. 레이어를 삭제하면 해당 레이어의 내용이 이미지 파일에서 제거됩니다. Adobe Photoshop Elements를 사용하여 그림에서 레이어를 삭제합니다.

Adobe Photoshop Elements로 디지털 사진의 레이어 편집하기 - 더미

Adobe Photoshop Elements로 디지털 사진의 레이어 편집하기 - 더미

Adobe Photoshop Elements에서 특정 레이어를 변경하여 이미지의 나머지 부분을 변경하지 않고 이미지를 편집 할 수 있습니다. 편집하려는 부분이 편집하려는 레이어에 있는지 확인하기 만하면됩니다.

디지털 사진 편집 - 인형

디지털 사진 편집 - 인형

잠시 동안 디지털 카메라로 사진을 찍었 으면 항상 결과에 감격하고 "이 사진을 구원받을 수 있습니까? "그 대답은"그렇습니다. "다음 표의 트릭을 사용하여 좋아하는 사진 편집기에서 디지털 사진을 편집하십시오. 기능 설명 권장 크기 조정 ...

편집자의 선택

WordPerfect Office 2002에서 작업 영역 사용자 지정 - 더미

WordPerfect Office 2002에서 작업 영역 사용자 지정 - 더미

WordPerfect 인터페이스에 대한 많은 것을 제어 할 수 있습니다 프로그램이 어떻게 보이고 행동하는지에 대한 용어). 모든 옵션을 훑어 보는 데 몇 시간을 소비 할 수 있지만 더 나은 일을해야합니다. 아래는 대부분의 사람들이 WordPerfect에서 다루기 쉬운 작업을위한 옵션입니다. 옵션 본부 : 설정 ...

의 그래픽 작업 - 그래픽을 사용하기 전에 WordPerfect 11 - Dummy

의 그래픽 작업 - 그래픽을 사용하기 전에 WordPerfect 11 - Dummy

기본에서 그래픽 작업 상자. 모든 상자에는 테두리와 배경이 있습니다. 두 가지 방법으로 상자와 상자 안에있는 그림을 선택할 수 있습니다. 텍스트를 입력하고 상자를 클릭하면 검은 색 핸들과 테두리가 생기지 않습니다.