home..
Unity에서 통통 튀는 큐브 만들기
Goraniworks / June 2024 (358 Words, 2 Minutes)
blog
Unity
c#
3D
Unity에서 통통 튀는 큐브 만들기
유니티 책 산지 3일 만에 해보는 간단 프로젝트. 아는 거라고는 hierarchy창, scene창, inspector창, 이정도 밖에 잘 잘모르는데 챗 gpt의 힘을 빌려 해보았다.
1. Cube 객체 설정
hierarchy창에서 cube객체를 추가한다.
1.1. Rigidbody 컴포넌트 추가
Rigidbody 컴포넌트를 추가하여 물리적 움직임을 제어할 수 있습니다.
- Hierarchy 창에서 큐브 객체를 선택합니다.
- Inspector 창에서 Add Component 버튼을 클릭합니다.
- Rigidbody를 검색하여 추가합니다.
1.2. Box Collider 설정
- Inspector 창의 Box Collider 섹션에서 기본 설정을 그대로 둡니다.
1.3. Bouncy Material 설정
- Project 창에서 Assets 폴더를 마우스 오른쪽 버튼으로 클릭합니다.
- Create -> Physic Material을 선택합니다.
- 새로 생성된 Physic Material의 이름을 “New Physic Material”로 변경합니다.
- Inspector 창에서 다음과 같이 설정합니다:
- Bounciness: 1
- Bounce Combine: Maximum (못보고 minimum으로 했는데 잘 되었다.튀는 강도 조절하는 것 같다.)
1.4. Physic Material 적용
- Hierarchy 창에서 큐브 객체를 선택합니다.
- Inspector 창에서 Box Collider 컴포넌트를 찾습니다.
- Box Collider 컴포넌트 내에서 Material 항목을 찾습니다.
- Material 항목 옆의 원형 아이콘을 클릭합니다.
- “Bouncy” 물리 재질을 선택합니다.
2. 스크립트 작성 및 적용
2.1. 스크립트 작성
- Project 창에서 Create -> C# Script를 선택하여 새 스크립트를 만듭니다.
- 스크립트 이름을 “cube_pop”로 설정합니다.
- 아래 코드를 스크립트에 작성합니다:
using UnityEngine;
public class BouncyCube : MonoBehaviour
{
public float bounceForce = 10f;
void Start()
{
// 큐브에 처음 힘을 가합니다.
Rigidbody rb = GetComponent<Rigidbody>();
if (rb != null)
{
rb.AddForce(Vector3.up * bounceForce, ForceMode.Impulse);
}
}
void OnCollisionEnter(Collision collision)
{
// 큐브가 바닥에 닿을 때마다 위로 튀게 합니다.
if (collision.gameObject.CompareTag("Ground"))
{
Rigidbody rb = GetComponent<Rigidbody>();
if (rb != null)
{
rb.AddForce(Vector3.up * bounceForce, ForceMode.Impulse);
}
}
}
}
2.2. 스크립트 적용
- 작성한 스크립트를 저장합니다.
- Inspector 창에서 큐브 객체를 선택합니다.
- BouncyCube 스크립트를 큐브 객체에 드래그하여 추가합니다.
3. 바닥 객체 생성 및 태그 설정
3.1. 바닥 객체 생성
- Hierarchy 창에서 마우스 오른쪽 버튼을 클릭합니다.
- 3D Object -> Plane을 선택합니다.
- Hierarchy 창에 Plane 객체가 생성된 것을 확인합니다.
3.2. Ground 태그 설정
- Hierarchy 창에서 생성된 Plane 객체를 선택합니다.
- Inspector 창에서 Tag 드롭다운 메뉴를 찾습니다. 기본값은 “Untagged”로 되어 있을 것입니다.
- Tag 드롭다운 메뉴를 클릭하여 Add Tag…를 선택합니다.
- Tags and Layers 창이 열리면, Tags 섹션에서 + 버튼을 클릭하여 새로운 태그를 추가합니다.
- 새로운 태그 이름을 “Ground”로 입력하고, Save 버튼을 클릭합니다.
- 다시 Hierarchy 창으로 돌아와 Plane 객체를 선택합니다.
- Inspector 창의 Tag 드롭다운 메뉴에서 방금 추가한 “Ground” 태그를 선택합니다.
이제 모든 설정이 완료되었습니다. 이렇게 하면 큐브가 바닥과 충돌할 때 튀는 동작을 구현할 수 있습니다.
브라우저 설정에 따라 댓글창이 보이지 않을 수도 있습니다.
© 2024 Gorani Works
•
Powered by Gorani Works
•
Theme Moonwalk