본문 바로가기
Godot

[GodotDocs][Your First 2D Game] 4. 적(Mob) 제작

by 채식금지 2024. 2. 16.
728x90

본 게시글은 고도엔진 공식문서에 작성된 Your first 2D game를 정리하였습니다.

 

적 씬 추가

  • 에디터 상단 메뉴에서 Scene>New Scene를 선택하여 새로운 씬을 추가한다.

 

  • Scene 도크에서 Other Node를 선택여 팝업창을 연다.

 

  • Create New Node 팝업창이 열리면, RigidBody2D 노드를 추가한다.
  • 추가된 RigidBody2D 노드의 이름을 Mob로 수정한다.
  • AnimatedSprite2D, CollisionShape2D, VisibleOnScreenNotifier2D 노드를 자식으로 추가한다.

 

  • Mob(RigidBody2D) 노드를 선택한 후, Inspector 도크에 있는 Gravity Scale 속성의 값을 0으로 변경한다.

 

  • 씬을 Mob.tscn으로 저장한다.

 

스프라이트 애니메이션

  • Scene 도크에서 AnimatedSprite2D 노드를 선택한다.
  • Inspector 도크에서 Sprite Frames 드롭 다운을 선택하여 메뉴가 열리도록 만든다.
  • 메뉴가 열리면 New SpriteFrames를 선택한다.

 

  • 추가한 Sprite Frames를 클릭하여 중앙하단에 있는 SpriteFrames 패널이 열리게 만들어준다.
  • SpriteFrames 패널에서 default 애니메이션을 더블 클릭한 후 애니메이션 이름을 fly로 수정한다.
  • 새로운 애니메이션 2개를 더 추가한 후, 각각 swimwalk로 이름 짓는다.

 

  • SpriteFrames 패널에서 fly 애니메이션을 선택한 후, FileSystem 도크에 있는 res://enemyFlyingAlt_1.png, res://enemyFlyingAlt_2.png 파일을 순서대로 드래그 한다.
  • SpriteFrames 패널에서 swim 애니메이션을 선택한 후, FileSystem 도크에 있는 res://enemySwimming_1.png, res://enemySwimming_2.png 파일을 순서대로 드래그 한다.
  • SpriteFrames 패널에서 walk 애니메이션을 선택한 후, FileSystem 도크에 있는 res://enemyWalking_1.png, res://enemyWalking_2.png 파일을 순서대로 드래그 한다.

 

  • Scene 도크에서 AnimatedSprite2D 노드를 선택한 후 Inspector 도크에 있는 Transform/Scale 속성을 (0.75, 0.75)로 수정하여 뷰포트에서 출력되는 이미지의 크기를 줄인다.

 

충돌체 설정

  • Scene 도크에서 Mob 노드를 선택한다.
  • Collision>Mask 프로퍼티에서 1번 마스크를 비활성화한다.
  • 1번 마스크를 비활성화 하면 1번 레이어만 활성화되어 있는 Mob들은 서로 충돌하지 않는다.

 

  • Scene 도크에서 CollisionShape2D 노드를 선택한다.
  • Inspector 도크에서 Shape 드롭 다운을 선택하여 메뉴가 열리도록 만든다.
  • 메뉴가 열리면 New CapsuleShape2D를 선택한다.

 

  • Inspector 도크에서 Rotation 속성을 90º로 수정한다.

 

  • 뷰포트에서 생성된 콜리전 쉐이프의 빨간점을 드래그하여 충돌 영역을 설정한다.

 

  • 여기까지 작업을 완료하였다면 씬을 저장한다.