본문 바로가기

IT 정보

2D 게임 만들 때 유용한 유니티 스크립트 47가지

 

 2D 게임 개발에 필요한 것은? 

2D 게임을 만드는 데 무엇이 필요할까요? 그것은 한마디로 말하면 그림프로그램입니다.

 

그림은 게임 중에 등장하는 캐릭터, 배경, 아이템, 버튼 등 눈에 보이는 모든 것입니다. 2D 게임의 화면 은 「그림」을 화면에 나열해서 만듭니다. 안타깝게도 이 「그림」은 Unity로 만들 수 없기 때문에 따로 준비해야 합니다. 그림을 잘 그린다면 「CLIP STUDIO Paint」나 「Adobe Photoshop CC」 등의 그래픽 소프트웨어를 사용해 직접 그림을 그려서 준비합시다. 그렇지 않다면 그림을 찾아서 사용하는 방법이 있습니다. 《유니티 2D 게임 제작》책에서도 샘플 그림을 준비합니다. 영진닷컴 홈페이지에서 샘플 그림을 다운로드해서 받아 놓으세요.

 

다음으로 중요한 것이 프로그램입니다. 화면에 배치한 「그림」을 어떻게 움직일지를 결정하는 명령입니다. Unity에서는 프로그램을 스크립트라고 부릅니다. 프로그래밍 언어는 「C#」을 사용합니다. C#은 일반적인 프로그래밍 언어로, 제대로 학습하려면 그것만으로 한 권의 책이 될 정도로 깊이가 있는 프로그래밍 언어입니다.

 

지금 당장 게임을 만들어 보고 싶은데 먼저 C# 언어부터 공부해야 하는 건 조금 힘들겠죠? 하지만 안심하세요. Unity에서는 C#은 사용하지만 「Unity 특유의 사용법」으로 C#을 완전히 이해하지 않아도 사용할 수 있습니다. 그러므로 이 책에서는 C# 언어의 문법 공부는 하지 않고 바로 게임을 만드는 부분부터 시작합니다. C# 언어를 몰라도 이해할 수 있을 정도의 간단한 명령만을 사용해 만듭니다.

 

실제로 저는 아주 평범한 고등학생들에게 가르쳐 본 적이 있었는데 프로그래밍을 해본 적이 없었음에도 의미를 이해하고, 수정 하고, 즐겁게 게임을 만들 수 있었습니다. 그러니까 분명히 여러분도 괜찮습니다. 먼저 접하는 것부터 시작합시다. 그리고 조금 더 자세하게 알고 싶어지면 그때 C#을 공부해보세요. 깊이있고 재미있는 언어입니다.

 

그럼 2D 게임 개발에 필요한 스크립트를 공유하겠습니다. 《유니티 2D 게임 제작》 304-305p에도 나와있으니 참고하세요 :)

 

 2D 게임 개발에 필요한 스크립트 47가지 

 

1. 계속

계속 수평으로 이동한다 Forever_MoveH

계속 수직으로 이동한다 Forever_MoveV

계속 회전한다 Forever_Rotate

때때로 돈다 Sometime_Turn

때때로 반전한다 Sometime_Flip

 

 

2. 이동

키를 누르면 스프라이트가 이동한다 OnKeyPress_MoveSprite

키를 누르면 이동한다 OnKeyPress_Move

계속 뒤쫓아 간다 Forever_Chase

계속 도망간다 Forever_Escape

키를 누르면 스프라이트가수평으로 이동한다 OnKeyPress_MoveSpriteH

 

 

3. 충돌 

충돌했을 때 지운다 OnCollision_Hide

충돌했을 때 표시한다 OnCollision_Show

충돌하면 게임을 정지한다 OnCollision_StopGame

계속 수평 방향으로 이동하다 충돌하면 반전한다 Forever_MoveH_OnCollision_Flip

계속 수직으로 이동해서 충돌하면 반전한다 Forever_MoveV_OnCollision_Flip

충돌했을 때 지운다 (복수 가능) OnMultiCollision_Hide

충돌했을 때 표시한다 (복수 가능) OnMultiCollision_Show

 

 

4. 마우스로 터치

터치하면 지운다 OnMouseDown_Hide

터치하면 회전한다 OnMouseDown_Rotate

터치하면 룰렛처럼 회전한다 OnMouseDown_Roulette

터치하면 게임을 정지한다 OnMouseDown_StopGame

터치하면 애니메이션을 재생 및 정지한다 OnMouseDown_StartStop

 

 

5. 애니메이션

키를 누르면 애니메이션을 전환한다 OnKeyPress_ChangeAnime

마우스로 터치하면 애니메이션을 전환한다 OnMouseDown_ChangeAnime

충돌하면 애니메이션을 전환한다 OnCollision_ChangeAnime

 

 

6. 장면 전환 

마우스로 터치하면 씬이 전환한다 OnMouseDown_SwitchScene

충돌하면 씬이 전환한다 OnCollision_SwitchScene

 

 

7. 조립식

마우스로 터치하면 프리랩을 만들어 등장시킨다 OnMouseDown_CreatePrefab

어떤 범위에 때때로 프리랩을 만들어 등장시킨다 Sometime_RandomCreatePrefab

키를 누르면 프리랩을 등장시킨다 OnKeyPress_CreatePrefab

충돌하면 프리랩을 등장시킨다 OnCollision_CreatePrefab

시간이 경과하면 자신을 삭제한다 OnTimeout_DestroyMe

화면 밖으로 나오면 자신을 삭제한다 OnOutsideScene_DestroyMe

충돌하면 자신과 상대를 삭제한다 OnCollision_Destory

충돌하면 자신만 삭제한다 OnCollision_DestoryMe

 

 

8. 중력

키를 누르면 중력 안에서 이동하거나 점프한다 (시험판) OnKeyPress_TestMoveGravity

키를 누르면 중력 안에서 이동&점프한다 OnKeyPress_MoveGravity

계속 뒤쫓아 간다 (중력 대응 판) Forever_ChaseGravity

위 키를 누르면 프리랩을 던진다 OnUpKeyPress_Throw

계속 카메라가 이 게임 오브젝트를 쫓아간다 Forever_ChaseCamera

계속 수평으로 카메라가 이 게임 오브젝트를 쫓아간다 Forever_ChaseCameraH

 

 

9. 카운터

카운터 본체 GameCounter

계속 카운트 값을 표시한다 Forever_ShowCount

충돌하면 카운트하고 자기 자신을 지운다 OnCollision_CountAndHide

충돌하면 카운트를 증가한다 OnCollision_Count

터치하면 카운트를 증가한다 OnMouseDown_Count

카운트가 최종 값이되면 씬을 전환한다 OnCountFinished_SwitchScene

카운트가 최종 값이라면 본다 OnCountFinished_Show

카운트가 최종 값이라면 지운다 OnCountFinished_Hide

카운트가 최종 값이라면 게임을 정지한다 OnCountFinished_StopGame

 

 

10. 기타

계속 마우스를 쫓아간다 Forever_ChaseMouse ·스프라이트에 적용하면 마우스에 붙어 움직입니다. 마우스 커서와 조준 등을 만들 수 있습니다.

터치하면 드래그한다 OnMouseDown_DragStart ·리지드바디를 적용한 오브젝트에 첨부하면 드래그 할 수 있습니다.

 

《유니티 2D 게임 제작》

예스24 / 교보문고 / 알라딘 / 인터파크

 

반응형